c语言 从文本文件中读取汉字和数字的信息并存入相应变量中的代码
时间: 2024-10-21 19:02:29 浏览: 37
在C语言中,读取文本文件中的汉字和数字信息通常需要配合`fscanf`函数,因为这个函数可以按照格式化字符串解析输入的数据。这里是一个基本的例子,假设你要读取的是ASCII编码的文本文件:
```c
#include <stdio.h>
#include <ctype.h> // 需要头文件来获取isalnum()函数
// 定义字符数组来存储读取的内容
#define MAX_LINE_LENGTH 100
char line[MAX_LINE_LENGTH];
int main() {
FILE* file = fopen("input.txt", "r"); // 打开文件,如果不存在则会失败
if (file == NULL) {
printf("Failed to open the file.\n");
return 1;
}
while (fgets(line, MAX_LINE_LENGTH, file)) { // 逐行读取文件
int index = 0;
for (int i = 0; i < strlen(line); ++i) {
char ch = line[i];
// 检查字符是否是数字或汉字(非空格)
if (isdigit(ch) || isalpha(ch)) {
line[index++] = ch; // 如果是,就保留并在指针位置增加
}
}
line[index] = '\0'; // 结束字符串,去掉多余的空白字符
// 现在line中只包含汉字和数字,你可以根据需求将其转换为对应的变量
int number = atoi(line); // 如果是数字,转换为整数
char* str = line; // 如果是汉字,str就是原始字符串
// 这里处理number和str的具体操作...
}
fclose(file);
return 0;
}
```
阅读全文