c语言中统计一个文件的大小写字母,数字,空格,换行及其他字符的个数
时间: 2023-06-17 14:03:10 浏览: 257
C语言程序设计-输入一行字符,分别统计出英文大小写字母、空格、数字和其他字符的个数
5星 · 资源好评率100%
可以使用 C 语言的文件操作和字符操作函数来实现统计一个文件中大小写字母、数字、空格、换行及其他字符的个数。
代码如下:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
FILE *fp;
int ch, upper = 0, lower = 0, digit = 0, space = 0, newline = 0, other = 0;
fp = fopen("test.txt", "r");
if(fp == NULL) {
printf("Failed to open file.");
return 0;
}
while((ch = fgetc(fp)) != EOF) {
if(isupper(ch)) {
upper++;
} else if(islower(ch)) {
lower++;
} else if(isdigit(ch)) {
digit++;
} else if(isspace(ch)) {
space++;
if(ch == '\n') {
newline++;
}
} else {
other++;
}
}
printf("Uppercase characters: %d\n", upper);
printf("Lowercase characters: %d\n", lower);
printf("Digits: %d\n", digit);
printf("Spaces: %d\n", space);
printf("Newlines: %d\n", newline);
printf("Other characters: %d\n", other);
fclose(fp);
return 0;
}
```
在这个示例中,我们打开了一个名为 "test.txt" 的文件,并通过 `fgetc()` 函数逐个字符读取了文件中的内容。我们使用 `isupper()`、`islower()`、`isdigit()`、`isspace()` 函数来判断字符的类型,并统计了各个类型字符出现的次数。其中,对于空格字符,我们还需要判断是否为换行符。最后,我们输出了统计结果。
阅读全文