用C语言编写编程有5个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学号,姓名,三门课成绩),计算出总成绩,将原有的数据和计算出的总分数存放在磁盘文件stu.txt中。提示:首先以写方式打开文件stu.txt,由于学生人数已知,所以用for循环,对每个学生的信息从键盘输入,然后用fprintf()函数写入文件,最后关闭文件。源代码:
时间: 2024-01-03 12:03:26 浏览: 102
c语言学生成绩管理系统
以下是可以实现上述功能的C语言代码:
```c
#include <stdio.h>
int main() {
FILE *fp;
int i, j;
char name[5][20];
int score[5][3];
int total[5];
fp = fopen("stu.txt", "w"); // 以写方式打开文件
// 从键盘输入学生信息和成绩
for (i = 0; i < 5; i++) {
printf("请输入第%d个学生的姓名:", i+1);
scanf("%s", name[i]);
total[i] = 0;
for (j = 0; j < 3; j++) {
printf("请输入第%d门课的成绩:", j+1);
scanf("%d", &score[i][j]);
total[i] += score[i][j];
}
// 将学生信息和总成绩写入文件
fprintf(fp, "学号:%d,姓名:%s,成绩:%d %d %d,总成绩:%d\n", i+1, name[i], score[i][0], score[i][1], score[i][2], total[i]);
}
fclose(fp); // 关闭文件
return 0;
}
```
上述代码中,首先使用`fopen()`函数以写方式打开文件`stu.txt`,然后使用for循环从键盘输入每个学生的姓名和三门课的成绩,并将总成绩计算出来。接着使用`fprintf()`函数将每个学生的信息和总成绩写入文件中,最后使用`fclose()`函数关闭文件。
阅读全文