C语言输入一批以回车结束的字符串(少于 80 个字符),统计并输 出字符串中大写辅音字母的个数(大写辅音字母是除 A、E、I、O、U 以外的大写字母)
时间: 2024-03-22 12:39:04 浏览: 20
好的,下面是C语言的代码实现:
```c
#include <stdio.h>
#include <ctype.h>
#define MAX_LEN 80
int main() {
char str[MAX_LEN];
int count = 0;
printf("请输入字符串(少于80个字符):\n");
fgets(str, MAX_LEN, stdin); // 读取字符串
for (int i = 0; str[i] != '\0'; i++) {
if (isupper(str[i]) && str[i] != 'A' && str[i] != 'E' && str[i] != 'I' && str[i] != 'O' && str[i] != 'U' && isalpha(str[i])) {
count++;
}
}
printf("大写辅音字母的个数为:%d\n", count);
return 0;
}
```
首先定义了一个长度为80的字符数组`str`,用于存储输入的字符串。
使用`fgets`函数从标准输入流中读取字符串,最多读取`MAX_LEN - 1`个字符,剩余的空间会被填充为`\0`。
然后使用`for`循环遍历字符串中的每一个字符,使用`isupper`函数判断字符是否为大写字母,再判断是否为辅音字母,如果是则计数器加1。
最后输出计数器的值,即为大写辅音字母的个数。
需要注意的是,代码中使用了`ctype.h`头文件中的函数`isupper`和`isalpha`,需要加上`-lc`选项进行编译链接。