标题
本题要求编写程序,输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。
输入格式:
输入为10个字符。最后一个回车表示输入结束,不算在内。
输出格式:
在一行内按照
letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数
的格式输出。
输入样例:
aZ & 09 Az
输出样例:
letter = 4, blank = 3, digit = 2, other = 1
代码:
#include <stdio.h> // 包含标准输入输出库的头文件
int main() {
int i, letter = 0, blank = 0, digit = 0, other = 0; // 声明并初始化计数变量
char ch; // 声明字符变量用于存储输入的字符
// 使用for循环读取10个字符
for (i = 1; i <= 10; i++) {
ch = getchar(); // 从标准输入读取一个字符并赋值给ch
// 判断字符类型并更新相应的计数器
if (ch >= 'a' && ch <= 'z' || ch >= 'A' && ch <= 'Z') {
letter++; // 如果是字母,letter计数器加1
} else if (ch >= '0' && ch <= '9') {
digit++; // 如果是数字,digit计数器加1
} else if (ch == ' ' || ch == '\n') {
blank++; // 如果是空格或换行符,blank计数器加1
} else {
other++; // 其他字符,other计数器加1
}
}
// 输出各类字符的数量
printf("letter = %d, blank = %d, digit = %d, other = %d", letter, blank, digit, other);
return 0; // 返回0,表示程序正常结束
}