浙大版《C语言程序设计(第3版)》题目集 练习3-4 统计字符 (15 分)

练习3-4 统计字符 (15 分)

本题要求编写程序,输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。

输入格式:

输入为10个字符。最后一个回车表示输入结束,不算在内。

输出格式:

在一行内按照

letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数

的格式输出。

输入样例:

aZ &
09 Az

输出样例:

letter = 4, blank = 3, digit = 2, other = 1

思路:根据ASCII码确定统计各类的范围。char ch;    数字范围:0~9 (ch>=48&&ch<=57) 或 (ch>=‘0‘&&ch<=‘9‘)小写字母:a~z (ch>=97&&ch<=122)或 (ch>=‘a‘&&ch<=‘z‘)大写字母:A~Z (ch>=65&&ch<=90) 或 (ch>=‘A‘&&ch<=‘Z‘)空格:space (ch==32) 或 (ch==‘ ‘)回车:enter (ch==10) 或 (ch==‘\n‘)

附ASCII码表:
代码如下:
#include<stdio.h>
int main()
{
    int i, letter, digit, other, blank;
    char ch;

    digit=0,letter=0,other=0;
    for(i=0;i<10;i++)
    {
	ch=getchar();
	if ((ch>=‘a‘&&ch<=‘z‘)||(ch>=‘A‘&&ch<=‘Z‘))
		letter++;
	else if(ch>=‘0‘&&ch<=‘9‘)
		digit++;
	else if(ch==‘ ‘||ch==‘\n‘)
		blank++;
	else
		other++;
    }
    printf("letter = %d, blank = %d, digit = %d, other = %d",letter,blank,digit,other);

    return 0;
}

原文地址:https://www.cnblogs.com/IT-Lead-The-World/p/10349676.html

时间: 02-02

浙大版《C语言程序设计(第3版)》题目集 练习3-4 统计字符 (15 分)的相关文章

学习《C语言程序设计第四版.谭浩强》计划

1.每天学习一个章节 2.所有的课程代码手动创建.生成 3.完成课后习题 4.每章节发表博客 5.每章节写笔记 第一章:程序设计和C语言 第二章:算法--程序的灵魂 第三章:最简单的C程序设计--顺序程序设计 第四章:选择结构程序设计 第五章:循环结构程序设计 第六章:利用数组处理批量数据 第七章:用函数实现模块化程序设计 第八章:善于利用指针 第九章:用户自己建立数据类型 第十章:对文件的输入输出 第十一章:常见错误分析

武汉科技大学ACM :1009: 华科版C语言程序设计教程(第二版)例题4.18

Problem Description 验证哥德巴赫猜想:任何充分大(>=4)的偶数都可以用两个素数之和表示. Input 输入一个偶数n.(2<n<=10000) Output 找到a.b使得 n=a+b 其中a.b为两个素数,且a<=b. Sample Input 4 100 Sample Output 2 2 3 97 1 #include <iostream> 2 3 #include<math.h> 4 5 using namespace std;

武汉科技大学ACM :1007: 华科版C语言程序设计教程(第二版)例题4.13

Problem Description 输入两个整数,求他们的最大公约数和最小公倍数. Input 两个整数. Output 最大公约数和最小公倍数. Sample Input 12 9 Sample Output 3 36 HINT 可以把求最小公约数和最小公倍数写成函数,方便以后调用. 1 #include <stdio.h> 2 3 void main() 4 5 { 6 7 int m,n; 8 9 while(scanf("%d%d",&m,&n)

武汉科技大学ACM :1010: 华科版C语言程序设计教程(第二版)例题7.8

Problem Description 输入一个用年月日表示的日期,求该日期是该年的第几天.输入某年的第几天,输出这一天是该年的几月几号,茂茂解不出,需要你的帮助. Input 开始有个整数k,表示询问的种类,如果k=1,后面有三个合法的整数a,b,c,表示输入的年月日,此时输出该日期是该年的第几天:如果k=2,后面有两个合法的整数a,b,求a年的第b天的日期.保证所有的输入合法. Output 对于询问1,输出一个整数表示是该年的第几天. 对于询问2,输出年月月,格式为****/**/** 如

武汉科技大学ACM:1009: 华科版C语言程序设计教程(第二版)习题5.12

Problem Description 这天老师照例给小豪出了一道题目:老师给小豪一个字符串,让小豪将该字符串逆序输出. Input 第一行包括一个T,表示有多少组测试数据: 接下来T行,每行包括一个字符串(长度不超过65535). Output 对于每个测试数据输出它的逆序字符串. Sample Input 1 oaHoaiX evoL I Sample Output I Love XiaoHao 1 #include<stdio.h> 2 #include <string.h>

问题 1018: C语言程序设计教程(第三版)课后习题6.8

/******************************************************************** @file Main.cpp @date 2017-05-12 @author Zoro_Tiger @brief 问题 1018: C语言程序设计教程(第三版)课后习题6.8 http://www.dotcpp.com/oj/problem1018.html *************************************************

问题 1041: C语言程序设计教程(第三版)课后习题9.8

/******************************************************************** @file Main.cpp @date 2017-05-28 22:02:55 @author Zoro_Tiger @brief 问题 1041: C语言程序设计教程(第三版)课后习题9.8 http://www.dotcpp.com/oj/problem1041.html ****************************************

问题 1040: C语言程序设计教程(第三版)课后习题9.6

/******************************************************************** @file Main.cpp @date 2017-05-28 21:57:02 @author Zoro_Tiger @brief 问题 1040: C语言程序设计教程(第三版)课后习题9.6 http://www.dotcpp.com/oj/problem1040.html ****************************************

问题 1042: C语言程序设计教程(第三版)课后习题9.10

/******************************************************************** @file Main.cpp @date 2017-05-28 22:10:10 @author Zoro_Tiger @brief 问题 1042: C语言程序设计教程(第三版)课后习题9.10 http://www.dotcpp.com/oj/problem1042.html ***************************************

问题 1023: C语言程序设计教程(第三版)课后习题7.2

/******************************************************************** @file Main.cpp @date 2017-05-20 22:05:39 @author Zoro_Tiger @brief 问题 1023: C语言程序设计教程(第三版)课后习题7.2 http://www.dotcpp.com/oj/problem1023.html ****************************************