每位学生的基本信息包括学号、姓名及总分。从in.txt中读取5名学生的基本信息,输出结果为 总分最高的学生的姓名及总分,并将结果保存在out.txt中 使用c语言编程
时间: 2024-05-04 13:22:26 浏览: 182
下面是使用C语言编写的代码:
```c
#include <stdio.h>
#include <string.h>
struct Student {
char id[12];
char name[50];
int score;
};
int main() {
struct Student students[5];
int max_score = 0, max_index = 0;
// 从文件中读取学生信息
FILE *fp = fopen("in.txt", "r");
for (int i = 0; i < 5; i++) {
fscanf(fp, "%s %s %d", students[i].id, students[i].name, &students[i].score);
if (students[i].score > max_score) {
max_score = students[i].score;
max_index = i;
}
}
fclose(fp);
// 输出总分最高的学生的姓名及总分
fp = fopen("out.txt", "w");
fprintf(fp, "姓名:%s 总分:%d\n", students[max_index].name, students[max_index].score);
fclose(fp);
return 0;
}
```
代码中定义了一个 `Student` 结构体来存储每个学生的基本信息,包括学号、姓名和总分。使用 `fopen()` 函数打开输入文件,并使用循环读取文件中的学生信息,并计算出总分最高的学生的索引。最后使用 `fopen()` 函数打开输出文件,并将结果写入文件中。
阅读全文