江湖救急,本人是C程新手。
问题描述:有N个学生,每个学生的信息包括学号、性别、姓名、4门课的成绩和平均分,从键盘上输入学生的信息,要求用3个函数来分别完成数据输入、统计每位学生的平均成绩和输出功能。上机运行程序并验证运行结果。
注:用结构体指针(链表)存储学生信息。
哪位大大能帮我看看错了多少啊~~~感激不尽。
#include "stdio.h"
#define N 999
int i,j,k,a;
float sum;
struct student
{int num;
char sex;
char name[20];
float score[4];
float ave;
}stu[N];
void main()
{void input(struct student stu[]);
void print(struct student stu[]);
input(stu);
sum=0;
for(i=0;i<k;i++)
{for(j=0;j<4;j++)
sum+=stu[i].score[j];
stu[i].ave=sum/4;}
print(stu);
}
void input(struct student stu[])
{ printf("How many student?\n");
scanf("%d",&k);
for(i=0;i<k;i++)
{
printf("Input scores of student %d:\n",i+1);
printf("NO.:");
scanf("%d",stu[i].num);
printf("name:");
scanf("%s",stu[i].name);
printf("sex:");
scanf("%c",stu[i].sex);
for(a=0;a<4;a++)
{printf("score %d:",a+1);
scanf("%f",stu[i].score[a]);
}
}
}
void print(struct student stu[])
{
printf("\n NO. name sex score1 score2 score3 score4 average\n");
for(i=0;i<k;i++)
{printf("%5s%10s%5s",stu[i].num,stu[i].name,stu[i].sex);
for(j=0;j<4;j++)
printf("%9.2f",stu[i].score[j]);
printf("%8.2f\n",stu[i].ave);
}
}