C语言用for循环写输入n个字符统计其中数字字符、*号和字母的个数。
时间: 2024-11-30 10:19:32 浏览: 1
输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数(C语言代码)
在C语言中,你可以使用for循环结合条件判断来实现这个功能。首先,你需要定义三个变量分别存储数字字符、星号(*)和字母的数量。然后,你可以使用`getchar()`函数获取用户输入的一个字符,直到遇到换行符('\n')或者用户不再输入。
以下是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int num_chars = 0, star_count = 0, alpha_count = 0;
char input;
// 使用for循环读取输入并计数
for (input = getchar(); input != '\n'; input = getchar()) { // 只遍历到用户按下回车结束
if (isdigit(input)) { // 判断是否是数字字符
num_chars++;
} else if (input == '*') { // 判断是否是星号
star_count++;
} else if (isalpha(input)) { // 判断是否是字母
alpha_count++;
}
}
printf("Number of digits: %d\n", num_chars);
printf("Number of asterisks: %d\n", star_count);
printf("Number of alphabetic characters: %d\n", alpha_count);
return 0;
}
```
在这个程序中,`isdigit()`检查字符是否为数字,`isalpha()`检查字符是否为字母。注意,`getchar()`函数会在读取到非字符数据时返回EOF,所以在这里我们用`!= '\n'`作为循环终止条件。
阅读全文