C语言关于结构体的编写,求高手解答啊,我看了几十遍就是看不出来问题出在哪里,不过就是编译不出来!急。

2024-12-18 15:12:18
推荐回答(2个)
回答1:

void main()
{
void fen(int a[3], int *z,float *p);
struct student stu[N];
int i,n,z[100];
float p[100];

printf("输入学生数目:");
scanf("%d",&n);
for(i=0;i {
printf("输入第%d学生基本信息:",i+1);
printf("学号:");
scanf("%d",&stu[i].num);

printf("姓名:");
gets(stu[i].name);

printf("性别:");
scanf("%c",&stu[i].sex);

printf("年龄:");
scanf("%d",&stu[i].age);

printf("三科成绩:");
scanf("%d,%d,%d",&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]) ;

fen(stu[i].score,&z[i],&p[i]); //score[3]后面的[3]去掉,传递的是数组名。
}

for(i=0;i {
printf("学号:%d\n",stu[i].num);
printf("姓名:%s\n",stu[i].name);
printf("性别:%c\n",stu[i].sex);
printf("年龄:%d\n",stu[i].age);
printf("三科成绩:%d %d %d\n",stu[i].score[0],stu[i].score[1],stu[i].score[2]);
//你的成绩都是int类型,为什么使用%f输出??换用%d。
printf("总成绩:%d\n",z[i]);
printf("平均分:%f\n",p[i]);
}
}

回答2:

你是怎么输入的啊?