用简单一点的C语言统计一个文本文件(事先建好的文件)中的字母、数字以及其他字符分别有多少个
时间: 2024-03-26 20:34:44 浏览: 47
以下是一个简单的C语言程序,用于统计一个文本文件中的字母、数字和其他字符的数量:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
FILE *fp;
char ch;
int digits = 0, letters = 0, others = 0;
fp = fopen("filename.txt", "r");
if (fp == NULL) {
printf("无法打开文件\n");
return 1;
}
while ((ch = fgetc(fp)) != EOF) {
if (isdigit(ch)) {
digits++;
} else if (isalpha(ch)) {
letters++;
} else {
others++;
}
}
fclose(fp);
printf("数字:%d\n", digits);
printf("字母:%d\n", letters);
printf("其他:%d\n", others);
return 0;
}
```
解释:
1. 引入stdio.h和ctype.h头文件,分别用于文件操作和字符操作。
2. 定义一个指向文件的指针fp,以及三个变量digits、letters、others,分别用于记录数字、字母和其他字符的数量。
3. 打开一个名为filename.txt的文件,以只读模式打开。
4. 判断文件是否打开成功,如果失败,输出错误信息并返回1。
5. 通过fgetc函数逐个读取文件中的字符,直到文件结束。
6. 判断读取到的字符属于哪一类:如果是数字,则digits加1;如果是字母,则letters加1;否则,others加1。
7. 关闭文件。
8. 输出统计结果。
9. 返回0,表示程序执行成功。
阅读全文