C語言for循環中用gets輸入字符數組的問題
輸入2個學生的姓名,學號,3門成績。輸出姓名和3門均分。
請問,為什麼程序運行的時候,不是先輸入一個名字,再輸入4個數,再輸入一個名字,再輸入4個數。我怎麼才能輸入2個名字呢?
#include<stdio.h>
struct student
{
char name[10];
int no,score1,score2,score3;
}st[2];
main()
{
int i,ave[2];
printf("Please enter name,no and score\n");
for(i=0;i<2;i++)
{
gets(st[i].name);
scanf("%d,%d,%d,%d",&st[i].no,&st[i].score1,&st[i].score2,&st[i].score3);
ave[i]=(st[i].score1+st[i].score2+st[i].score3)/3;
}
for(i=0;i<2;i++)
printf("%s: %d\n",st[i].name,ave[i]);
}
最佳回答:
你可以給整個程序加一個for循環,這樣就是名字數,名字數的了