个人博客:尹蓝锐的博客
目录
1、题目要求
2、输入
3、程序
4、输出
有5个学生,每个学生有3门课程的成绩,从键盘输入学生数据(包括学号,姓名,3门课的成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件“stud”中
1 xiaoming 90 90 90
2 xiaogang 80 90 90
3 xiaojie 80 78 78
4 xiaohua 70 70 80
5 xiaoying 90 80 80
#define _CRT_SECURE_NO_WARNINGS 1
#include
#define M 5
struct student
{
int num;
char name[20];
double score[3];
double average;
};
int main()
{
int i, j;
struct student stu[M];
for (i = 0; i < M; i++)
{
printf("请输入第%d个学生的信息:\n", i + 1);
scanf("%d%s", &stu[i].num, &stu[i].name);
for (j = 0; j < 3; j++)
{
scanf("%lf", &stu[i].score[j]);
}
}
void average(struct student* stu, int n);
average(stu, M);
FILE* fp = fopen("stud.txt", "w");
if (fp == NULL)
{
printf("打开文件失败!");
exit(1);
}
for (i = 0; i < M; i++)
{
fprintf(fp, "%d,%s,%.2lf,%.2lf,%.2lf,%.2lf\n", stu[i].num, stu[i].name, stu[i].score[0], stu[i].score[1], stu[i].score[2], stu[i].average);
}
fclose(fp);
return 0;
}
void average(struct student* stu, int n)
{
int i, j;
for (i = 0; i < n; i++)
{
double sum = 0;
for (j = 0; j < 3; j++)
{
sum += stu[i].score[j];
}
stu[i].average = sum / 3;
}
}
如果我的博客能给您带来启发,请不吝点赞、评论和收藏,也欢迎您关注我的博客。