用C语言输入一串字符以*@*结束,统计字母个数
时间: 2024-11-12 19:33:40 浏览: 14
在C语言中,你可以使用标准库函数`scanf`来从用户那里获取输入,并通过循环遍历字符串来计算其中字母的数量。这里是一个简单的示例:
```c
#include <stdio.h>
#include <ctype.h> // 包含处理字符类型相关的函数
int main() {
char input[100]; // 定义一个足够大的数组来存储输入字符串
int count = 0; // 初始化字母计数器
printf("请输入一串以'*@*'结束的字符:");
fgets(input, sizeof(input), stdin); // 使用fgets读取包括终止符在内的整个行
// 检查输入是否以'*@*'结尾并移除多余的换行符
if (input[strlen(input) - 4] == '*' && input[strlen(input) - 3] == '@' && input[strlen(input) - 2] == '*') {
input[strlen(input) - 3] = '\0'; // 截断字符串到'@'
} else {
printf("输入无效!字符串需要以'*@*'结束。\n");
return 1;
}
// 遍历字符串,只对字母进行计数
for (char c : input) {
if (isalpha(c)) { // 判断字符是否为字母
count++;
}
}
printf("输入的字母个数为:%d\n", count);
return 0;
}
```
阅读全文