C语言编写程序,统计从键盘输入的字符的个数(回车换行符也是一个字符),当遇到结束标志时程序结束。
时间: 2023-05-25 17:06:50 浏览: 98
```c
#include <stdio.h>
#define END '#'
int main()
{
char ch;
int count = 0;
printf("请输入一个字符,以#结束:\n");
while ((ch = getchar()) != END)
{
count++;
}
printf("输入的字符数为%d\n", count);
return 0;
}
```
程序首先定义了结束标志为 `#`,然后利用 `while` 循环,通过 `getchar()` 函数逐个读取输入的字符,如果读取到的字符不是结束标志 `#`,则累加字符数 `count`,一直循环到读取到结束标志 `#` 时,输出统计结果。
相关问题
C语言编写程序,输入一个以回车符结束的字符串(少于 80 个字符),分别统计其中英文字母,数字、其他字符的个数
好的,以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
char str[80]; // 定义一个长度为80的字符数组
int i, alpha = 0, digit = 0, other = 0; // 初始化三个计数器
printf("请输入一串字符(少于80个字符):\n");
fgets(str, 80, stdin); // 从标准输入读入字符串
for (i = 0; str[i] != '\0' && str[i] != '\n'; i++) { // 遍历整个字符串
if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) {
alpha++; // 如果是字母,计数器加1
} else if (str[i] >= '0' && str[i] <= '9') {
digit++; // 如果是数字,计数器加1
} else {
other++; // 如果是其他字符,计数器加1
}
}
printf("字母个数:%d\n", alpha);
printf("数字个数:%d\n", digit);
printf("其他字符个数:%d\n", other);
return 0;
}
```
代码解释:
1. 定义了一个长度为80的字符数组 `str`,用于存储输入的字符串;
2. 初始化三个计数器 `alpha`、`digit`、`other` 分别代表字母个数、数字个数、其他字符个数;
3. 使用 `fgets()` 函数从标准输入中读入字符串,注意 `fgets()` 函数会自动在字符串末尾添加一个换行符 `'\n'` 或者字符串结束符 `'\0'`,因此需要在遍历字符串时加上 `str[i] != '\n'` 的判断;
4. 使用 `for` 循环遍历整个字符串,如果字符在字母范围内则将字母计数器加1,如果字符在数字范围内则将数字计数器加1,否则将其他字符计数器加1;
5. 最后输出三个计数器的值。
希望能帮到你!
编程实现以下功能:统计从键盘输入的字符中数字字符的个数,当输入换行符时结束循环。 C语言
以下是C语言的实现代码:
```c
#include <stdio.h>
int main() {
char c;
int count = 0;
printf("请输入一串字符,以回车键结束输入:\n");
while ((c = getchar()) != '\n') {
if (c >= '0' && c <= '9') {
count++;
}
}
printf("数字字符的个数为:%d\n", count);
return 0;
}
```
在这个程序中,我们使用了一个 while 循环来读取用户从键盘输入的字符,每当读取到一个数字字符时,我们就将计数器 count 的值加 1。当用户输入回车键时,循环结束并输出数字字符的个数。
阅读全文