c语言统计各类字符个数
时间: 2024-01-04 13:17:45 浏览: 166
以下是C语言统计各类字符个数的代码实现:
```c
#include <stdio.h>
#include <ctype.h>
int main()
{
char ch;
int letter = 0, digit = 0, space = 0, other = 0;
while ((ch = getchar()) != EOF)
{
if (isalpha(ch)) // 判断是否为字母
{
letter++;
}
else if (isdigit(ch)) // 判断是否为数字
{
digit++;
}
else if (isspace(ch)) // 判断是否为空格
{
space++;
}
else // 其他字符
{
other++;
}
}
printf("字母个数:%d\n", letter);
printf("数字个数:%d\n", digit);
printf("空格个数:%d\n", space);
printf("其他字符个数:%d\n", other);
return 0;
}
```
相关问题
分类统计各类字符个数C语言
下面是一个简单的 C 代码片段,用于统计给定字符串中每个字符类型(字母、数字、空格等)的出现次数。
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char string[100];
int i, alphabets=0, digits=0, spaces=0, punctuations=0;
printf("Enter a string: ");
fgets(string, sizeof(string), stdin);
for(i=0;string[i]!='\0';i++) {
if(isalpha(string[i]))
alphabets++;
else if(isdigit(string[i]))
digits++;
else if(isspace(string[i]))
spaces++;
else
punctuations++;
}
printf("Alphabets = %d\n", alphabets);
printf("Digits = %d\n", digits);
printf("Spaces = %d\n", spaces);
printf("Punctuations = %d\n", punctuations);
return 0;
}
```
该代码使用了 `ctype.h` 头文件中的函数来检查每个字符。`isalpha()` 函数用于检查字母,`isdigit()` 函数用于检查数字,`isspace()` 函数用于检查空格,而其他字符则被认为是标点符号。通过循环遍历输入的字符串并计算每个字符类别的出现次数,最终将结果打印出来。
分类统计各类字符个数c语言
在C语言中,如果你需要统计字符串中各类字符(如字母、数字、空格等)的个数,可以使用`ctype.h`库提供的函数配合数组来实现。下面是一个简单的示例:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int count[256] = {0}; // 初始化一个大小为256的整型数组,对应ASCII码范围
printf("请输入字符串: ");
fgets(str, sizeof(str), stdin);
for (int i = 0; str[i] != '\0'; i++) {
if (isalnum(str[i])) { // 检查是否是字母或数字
count[str[i]]++; // 对应ASCII码增加计数
} else if (str[i] == ' ') { // 如果是空格
count[' ']++; // 空格单独计数
}
}
printf("字符统计结果:\n");
for (int i = 0; i < 256; i++) {
if (count[i] > 0) {
printf("ASCII %d: %d\n", i, count[i]); // 打印非零计数的字符及其个数
}
}
return 0;
}
```
在这个程序中,我们遍历输入的字符串,如果遇到字母、数字或空格,就相应地更新`count`数组。最后输出每个字符及其在字符串中的出现次数。
阅读全文