编写C语言程序,产生100个0到100的随机整数,并保存在名为in.txt的文本文件中,编制一个程序从in.txt中读出这100个整数,计算其最大值,最小值并显示出来,同时将它们保存在文件out.txt中。
该回答有参考AI
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int i, num, max, min;
FILE *in_file, *out_file;
// 产生随机数并写入文件
srand(time(NULL));
in_file = fopen("in.txt", "w");
for (i = 0; i < 100; i++) {
num = rand() % 101;
fprintf(in_file, "%d ", num);
}
fclose(in_file);
// 读取文件并计算最大值和最小值
in_file = fopen("in.txt", "r");
fscanf(in_file, "%d", &num);
max = min = num;
while (!feof(in_file)) {
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
fscanf(in_file, "%d", &num);
}
fclose(in_file);
// 输出结果并写入文件
printf("最大值:%d\n", max);
printf("最小值:%d\n", min);
out_file = fopen("out.txt", "w");
fprintf(out_file, "最大值:%d\n", max);
fprintf(out_file, "最小值:%d\n", min);
fclose(out_file);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
const int COUNT = 100;
const int MIN = 0;
const int MAX = 100;
// 产生随机数种子
srand(time(NULL));
// 产生随机整数并保存到文件
FILE *inFile = fopen("in.txt", "w");
for (int i = 0; i < COUNT; i++) {
int num = rand() % (MAX - MIN + 1) + MIN;
fprintf(inFile, "%d ", num);
}
fclose(inFile);
// 读取文件并计算最大值和最小值
FILE *outFile = fopen("out.txt", "w");
int max = MIN - 1, min = MAX + 1;
inFile = fopen("in.txt", "r");
for (int i = 0; i < COUNT; i++) {
int num;
fscanf(inFile, "%d", &num);
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
}
fprintf(outFile, "Max: %d\nMin: %d", max, min);
fclose(inFile);
fclose(outFile);
printf("Max: %d\nMin: %d", max, min);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void in()
{
FILE *fw = fopen("in.txt", "w");
for (int i = 0; i < 100; ++i)
{
int num = rand() % 101;
fprintf(fw, "%d\n", num);
}
fclose(fw);
}
void out()
{
FILE *fr = fopen("in.txt", "r");
int min = 100, max = 0;
for (int i = 0; i < 100; ++i)
{
int num;
fscanf(fr, "%d", &num);
if (num > max) max = num;
if (num < min) min = num;
}
fclose(fr);
FILE *fw = fopen("out.txt", "w");
const char *str = "最大值: %d\n最小值: %d";
printf(str, max, min);
fprintf(fw, str, max, min);
fclose(fw);
}
int main()
{
srand((unsigned)time(NULL));
in();
out();
return 0;
}