「学生」という名前の構造体を使用して単純な C プログラムに取り組んでいます。これが私のコードです
#include<stdio.h>
#include<stdlib.h>
struct student {
char name[50];
int id;
float marks_1;
float marks_2;
};
void main(){
int num,a,i;
printf("Enter number of students\n");
scanf("%d",&num);
struct student s[num];
for(i=0;i<num;i++)
{
a=i+1;
printf("Enter name of student number %d\n",a);
scanf("%[^\n]%*c",s[i].name);
}
}
プログラムを実行すると、生徒の数を正しく入力できますが、その後、各生徒に対応する名前を入力できません。これは私が得る出力です。
Enter number of students
2
Enter name of student number 1
Enter name of student number 2
RUN FINISHED; exit value 2; real time: 1s; user: 0ms; system: 0ms
何が問題なのですか?どんな助けでも大歓迎