程序实现的功能是从键盘读入一行字符(包括空格),统计输出该行字符串的数字字符个数n1、大写字母字符个数n2、小写字母字符个数n3,空格字符的个数n4,其他字符n5; 例如:输入 : I Am A Student. I Have 20 Years Old! 输出: n1=2 n2=8 n3=16 n4=8 n5=3 。
时间: 2024-03-14 16:44:03 浏览: 228
好的,下面是实现您要求的功能的示例代码:
```
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int n1 = 0, n2 = 0, n3 = 0, n4 = 0, n5 = 0;
printf("请输入一行字符:\n");
fgets(str, 100, stdin); // 从标准输入读取一行字符,包括空格
for(int i = 0; str[i] != '\0'; i++) {
if(isdigit(str[i])) {
n1++;
} else if(isupper(str[i])) {
n2++;
} else if(islower(str[i])) {
n3++;
} else if(str[i] == ' ') {
n4++;
} else {
n5++;
}
}
printf("n1=%d n2=%d n3=%d n4=%d n5=%d\n", n1, n2, n3, n4, n5);
return 0;
}
```
这个程序首先要求用户输入一行字符,然后使用 `fgets` 函数从标准输入中读取这行字符,包括空格。接着使用 for 循环遍历这个字符串的每个字符,使用 `isdigit`、`isupper`、`islower` 和 `isspace` 函数来判断字符的类型,并根据类型对应地增加相应的计数器。最后输出每个计数器的结果即可。
阅读全文