#include "stdio.h"
struct student
{
int num;
char name[20];
int score[3];
int sum;
}stu[3];
void print(struct student stu[])
{
int i,j;
for(i=0;i<3;i++)
{
printf("%3d,%3s",stu[i].num,stu[i].name);
for(j=0;j<3;j++)
{
printf("%7d",stu[i].score[j]);
}
printf("%7d",stu[i].sum=sum(stu));
printf("\n");
}
}
input(struct student stu[])
{
int i,j;
for(i=0;i<3;i++)
{
printf("请输入%d学生学号:\n",i+1);
scanf("\n%d",&stu[i].num);
printf("请输入%d学生姓名:\n",i+1);
scanf("%s",stu[i].name);
for(j=0;j<3;j++)
{
printf("请输入三门成绩:\n");
scanf("%d",&stu[i].score[j]);
}
}
print(stu);
}
int sum(struct student stu[])
{
int i,j,sum;
for(i=0;i<3;i++)
{
sum=0;
for(j=0;j<3;j++)
{
sum+=stu[i].score[j];
}
return(sum);
}
}
int main(void)
{
input(stu);
}
我想输出3个学生3门成绩的总和,为什么每次第2个,第3个学生的总和,输出的都是第1个学生成绩的总和那?