-3

私はCプログラムを書いていますが、そのプログラムの目的は、構造を持つ4人の学生の詳細のみを入力したいということです。しかし、私のプログラムには何かが欠けているため、最初の学生の詳細を入力した後にプログラムが終了します。ここを見てください

# include <stdio.h>

struct student
{
int no;
char name[20];
float marks;
}s[10];

int main()
{
int i,n;


printf(" enter number of students ");
scanf("%d",&n);

printf(" enter student Number Name marks ");
for(i=0;i<n;i++)
{
scanf("%d%c%f",&s[i].no,&s[i].name,&s[i].marks);
}
return 0;
}

学生の数を 4 として選択した場合でも、1 人の学生の詳細を入力すると、プログラムが終了します。

私がここで与えている入力は

[root@localhost raja]# gcc -o s s.c
[root@localhost raja]# ./s
 enter number of students 4
 enter student Number Name marks 1 as 12.03
[root@localhost raja]# 

最初の学生の詳細のみを入力した後でも、プログラムを終了します。助けて。

4

3 に答える 3

0

これ:

scanf("%d%c%f"

次のようにする必要があります。

scanf("%d %s %f"
于 2013-07-06T02:20:56.877 に答える