一道结构数组题运行不通过求找错。
题目:建立一个最多保存五个学生成绩的结构体类型数组。
Input函数输入学生的学号、姓名和三门课的成绩,并计算平均成绩,函数首部为:
Input(int n, struct STUDENT s[])
主程序调用Input函数输入学生成绩,然后输出学生的信息。
---------------------------------------------------------------
N=3
1 Zhang 60 70 80
2 Wang 70 80 90
3 Li 30 50 80
1 Zhang 60 70 80 70
2 Wang 70 80 90 80
3 Li 30 50 80 53
----------------------------------------------------
struct Tstudent {
char No[5];
char Name[20];
int Chinese;
int Math;
int FL;
int Average;
};
-----------------------------------------------------
我的C程序:
#include <stdio.h>
struct STDUENT {
char No[5];
char Name[20];
int Chinese;
int Math;
int FL;
int Average;
}s[5];
void Input(int n, struct STDUENT s[]);
int main(void)
{
int n, i;
printf("N=");
scanf("%d", &n);
Input(n, s);
for(i = 0; i < n; i++)
{
printf("%s %s %d %d %d %d\n", s[i].No, s[i].Name, s[i].Chinese), s[i].Math, s[i].FL, s[i].Average;
}
return 0;
}
void Input(int n, struct STDUENT s[])
{
int i;
for(i = 0; i < n; i++)
{
scanf("%s", s[i].No);
scanf("%s", s[i].Name);
scanf("%d", &s[i].Chinese);
scanf("%d", &s[i].Math);
scanf("%d", &s[i].FL);
s[i].Average = (s[i].Chinese + s[i].Math + s[i].FL) / 3;
}
}