结构体数组输出出错,求大神指教
程序代码:#include<stdio.h>
#define N 3 /*学生数*/
struct student /*建立结构体数据类型*/
{
int num; /*学号*/
char name[20]; /*姓名*/
float score[3]; /*3门课成绩*/
float sum; /*总成绩*/
char grade; /*等级*/
};
struct student stu[N]; /*定义结构体数组*/
int main()
{
{
int i;
printf("请输入各学生的信息:学号、姓名、三门课成绩:\n");
for(i=0;i<N;i++)
{
scanf("%d%s%f%f%f",&stu[i].num,stu[i].name,
&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]); /*输入数据*/
stu[i].sum=stu[i].score[0]+stu[i].score[1]+stu[i].score[2]; /*求每位同学的总分*/
}
}
int m;
printf("num\t\tname\tscore1\tscore2\tscore3\tsum\tgrede\n"); /*定义输出函数*/
for(m=0;m<N;m++)
{
printf("%d\t\t%c\t%-8.1f%-8.1f%-8.1f%-8.1f\t",&stu[m].num,
stu[m].name,&stu[m].score[0],&stu[m].score[1],
&stu[m].score[2],&stu[m].sum);
if((m+1)<=N*0.95)
printf("合格\n");
else
printf("不合格\n");
}
return 0;
}
运行结果好多0.000000









