C语言程序:查找数据文件中前10000个最大偶数
以下是一种可能的解决方案:
#include <stdio.h>
int main() {
FILE *fp;
int num, max = -1; // 假设数据中没有比 -1 更小的数
int count = 0; // 统计已经读入的数的数量
fp = fopen('Wj002.txt', 'r'); // 打开文件,以只读模式打开
if (fp == NULL) { // 文件打开失败
printf('Failed to open file.\n');
return 1;
}
while (fscanf(fp, '%d', &num) != EOF && count < 10000) { // 读入每个数,直到文件结尾或者读入了 10000 个数
if (num > max && num % 2 == 0) { // 如果当前数比之前的最大偶数还大且是偶数
max = num; // 更新最大偶数
}
count++; // 统计已经读入的数的数量
}
fclose(fp); // 关闭文件
if (max == -1) { // 没有找到任何偶数
printf('No even numbers found.\n');
} else { // 找到了最大偶数
printf('The largest even number among the first 10000 numbers is %d.\n', max);
}
return 0;
}
解决方案的大致思路如下:
- 打开文件 'Wj002.txt',以只读模式打开。
- 读入文件中的每个数,直到文件结尾或者读入了 10000 个数。
- 如果当前数比之前的最大偶数还大且是偶数,就更新最大偶数。
- 关闭文件。
- 输出结果:如果没有找到任何偶数,就输出提示信息;否则,输出最大偶数的值。
原文地址: https://www.cveoy.top/t/topic/nu2m 著作权归作者所有。请勿转载和采集!