怎样用c语言将文件中的数字读到数组中
时间: 2024-04-02 13:36:44 浏览: 50
您好!要用C语言将文件中的数字读到数组中,您可以按照以下步骤进行:
1. 打开文件:使用C语言中的`fopen()`函数打开文件。
2. 读取文件内容:使用`fgets()`或`fscanf()`函数读取文件内容,可以将文件内容读入一个字符串或变量中。
3. 提取数字:使用C语言中的字符串处理函数或其他方法从文件内容中提取数字,并将数字添加到数组中。
4. 计算数字数量:使用C语言中的循环或其他方法计算数字数量。
下面是一个示例代码,用于将文件`test.txt`中的数字读到数组中并计算数量:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_NUMS 100 // 数组最大容量
int main()
{
FILE *fp;
char buf[1024];
int nums[MAX_NUMS];
int count = 0;
int i;
fp = fopen("test.txt", "r");
if (fp == NULL) {
printf("打开文件失败!\n");
return -1;
}
while (fgets(buf, sizeof(buf), fp) != NULL) {
char *p = buf;
while (*p != '\0') {
if (*p >= '0' && *p <= '9') {
nums[count++] = atoi(p);
while (*p >= '0' && *p <= '9')
p++;
}
else {
p++;
}
}
}
fclose(fp);
printf("文件中共有%d个数字。\n", count);
printf("数字列表为:");
for (i = 0; i < count; i++) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
```
其中,`fgets(buf, sizeof(buf), fp)`函数读取文件中一行的内容,`atoi(p)`函数将字符串转换为整数,`nums[count++] = atoi(p)`将数字添加到数组中,`count`计算数字数量。
阅读全文