C语言:输入一串字符,回车键结束,计算其中空格的个数
时间: 2024-12-19 21:24:03 浏览: 55
在C语言中,你可以通过循环读取用户输入,并逐个字符检查来计算空格的个数。下面是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int space_count = 0; // 初始化空格计数器
char input;
printf("请输入一串字符,按回车键结束:");
while ((input = getchar()) != '\n') { // 循环直到遇到换行符
if (input == ' ') { // 如果当前字符是空格
space_count++; // 空格计数加一
}
}
// 换行符('\n')也被读入,所以需要减去1,得到实际的空格数
space_count--;
printf("输入字符串中有 %d 个空格。\n", space_count);
return 0;
}
```
在这个程序中,`getchar()` 函数用于从标准输入读取一个字符,然后我们判断这个字符是否为空格,如果是,则计数器增加。当用户按下回车键时,会读到一个换行符,但我们需要排除它,所以在最后将计数减一。
相关问题
C语言 从键盘输入一串字符(按回车键结束),统计其中英文字母、数字字符、空格和其它字符的个数。
C语言中,你可以通过循环遍历用户输入的字符串,然后使用ASCII码特性来判断每个字符的类别。以下是实现这个功能的一个简单示例:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char input[100]; // 存储用户输入
int alpha_count = 0; // 英文字母计数
int digit_count = 0; // 数字字符计数
int space_count = 0; // 空格计数
int others_count = 0; // 其他字符计数
printf("请输入一串字符 (按回车键结束): ");
fgets(input, sizeof(input), stdin); // 读取用户输入,包括换行符
for (int i = 0; input[i] != '\0'; i++) { // 遍历字符串
if (isalpha(input[i])) { // 判断是否为字母
alpha_count++;
} else if (isdigit(input[i])) { // 判断是否为数字
digit_count++;
} else if (input[i] == ' ') { // 判断是否为空格
space_count++;
} else { // 其他字符
others_count++;
}
}
printf("英文字母: %d\n", alpha_count);
printf("数字字符: %d\n", digit_count);
printf("空格: %d\n", space_count);
printf("其他字符: %d\n", others_count);
return 0;
}
```
从键盘输入一串字符(按回车键结束),统计其中英文字母、数字字符、空格和其它字符的个数。
这段代码是一个C语言程序,它的功能是从键盘输入一串字符并统计其中英文字母、数字字符、空格和其他字符的个数。具体实现方法如下:
1. 定义变量letter、num、blank、tab、enter、other分别表示英文字母、数字字符、空格、Tab键、回车键和其他字符的个数。
2. 使用while循环读取输入的字符,直到读取到回车键为止。
3. 在循环中,使用if语句判断读取到的字符是英文字母、数字字符、空格、Tab键、回车键还是其他字符,并分别对应地增加相应的计数器。
4. 最后输出各个计数器的值即可。
阅读全文
相关推荐















