求助一道关于C语言结构体数据组的题目!!~~急!!~~

来源:百度知道 编辑:UC知道 时间:2024/06/02 05:33:51
题目:有五个学生,每个学生有3门课程的成绩,从键盘输入学生数据(包括学号,姓名,3门课程成绩),计算出每个学生的总成绩,将原有数据和计算出的总成绩存放在磁盘文件“stud”中。
要求:1。用结构体数组处理学生数据
2。写三个函数:1)输入学生信息;2)处理学生成绩;3)输出数据至磁盘文件。

谢谢谢谢!!~~

如果你用的tc的话main函数里的float arg,*point=&arg;必须存在
否则就回出现BUG;
#include<stdio.h>
struct student
{
long number;
char name[10];
float score[3];
float sum1;
};
struct student a[5];
void scan(struct student *p)
{
scanf("%ld%s%f%f%f",&p->number,p->name,&p->score[0],
&p->score[1],&p->score[2]);
}
void sum(struct student *p)
{
p->sum1=(p->score[0]+p->score[1]+p->score[2]);
}
void print(struct student *p)
{
printf("%ld: %s: %5.2f %5.2f %5.2f %5.2f\n",p->number,
p->name,p->score[0],p->score[1],p->score[2],p->sum1);
}
void main()
{
float arg,*point=&arg;
int i;
for(i=0;i<5;i++)
scan(a+i);
for(i=0;i<5;i++)
sum(a+i);
printf("the result:\n");
for(i=0;i<5;i++)
print(a+i);
}