今天刷一个C语言结构体的题,就是写不出来,不知道哪一步错了。求大佬指点.
题:从键盘输入2名学生的姓名和数学、英语及C语言的成绩,计算并输出其总成绩和平均成绩
#include <stdio.h>
typedef struct {
char name[20];//姓名
int math,english,C;//科目
float sum,aver;/*总成绩和平均成绩 */
}STU;
main()
{
STU st[2],\*p;
int i;
for(i=0;i<2;i++) {
printf("Input name:");
scanf("%s",&st[i].name); /*第一空*/
printf("Input 3 score:");
scanf("%d,%d,%d",&st[i].math,&st[i].english,&st[i].C);
}
for(p=st;p<st+2;p++)
{ p ->sum = p->math + p->english + p->C;
p->aver = p->sum/3;/*第三空*/
printf("name=%s,sum=%5.1f,aver=%5.1f\n", p->name, p->sum, p->aver);
}
}
总是输完第一次,就输出结果了,循环走不完,而且结果也不对.
结果:
建议:
code 先对齐下,不然大家看代码不好看。