将循环结构数据放入C中的文件中
Getting looped struct data into a file in C
我有一个循环结构数组,它接受用户输入的学生姓名和学号
代码:
int x;
struct studs
{
char name[50];
char rollno[50];
}student[50];
printf("\t\t________________________________");
printf("\n\n\t\t\tStudent Registration");
printf("\n\t\t_______________________________");
printf("\n\n\tHow many students in %s ", course);
scanf("%d", &stud);
admin = fopen(name, "a");
fprintf(admin, "\nNumber of students for %s: %d", course, stud);
fclose(admin);
for(x=0; x<stud; x++)
{
printf("\n\nStudent %d", x+1);
printf("\n_____________________________");
printf("\n\nStudent Name : ");
scanf("%s", student[x].name);
printf("\nStudent Rollno. : ");
scanf("%s", student[x].rollno);
system("\npause");
goto exam;
}
admin = fopen("student.txt", "w");
fprintf(admin, "Name: %s \nRoll Number: %s\n\n", student.name, student.rollno);
fclose(admin);
如您所见,我正在尝试将每个姓名和号码放入文本文件,但我一直收到此错误
错误:请求成员 'name' 不是结构或联合 |
错误:请求成员 'rollno' 不是结构或联合
有没有办法把它放到一个文件中,有或没有结构?
这个
fprintf(admin, "Name: %s \nRoll Number: %s\n\n", student.name, student.rollno);
无法工作,student
是 stud
的数组(或者至少如果我在学校的话会是这样)。您已经表明您知道如何使用 for(x=0; x<stud; x++)
遍历学生人数,所以再做一遍:
for(x=0; x<stud; x++) {
fprintf(admin, "Name: %s \nRoll Number: %s\n\n", student[x].name, student[x].rollno);
}
您的程序中可能会出现其他错误(例如 goto exam
立即跳出您的 for 循环到某个地方)。但这至少会解决你所描述的错误。
我有一个循环结构数组,它接受用户输入的学生姓名和学号
代码:
int x;
struct studs
{
char name[50];
char rollno[50];
}student[50];
printf("\t\t________________________________");
printf("\n\n\t\t\tStudent Registration");
printf("\n\t\t_______________________________");
printf("\n\n\tHow many students in %s ", course);
scanf("%d", &stud);
admin = fopen(name, "a");
fprintf(admin, "\nNumber of students for %s: %d", course, stud);
fclose(admin);
for(x=0; x<stud; x++)
{
printf("\n\nStudent %d", x+1);
printf("\n_____________________________");
printf("\n\nStudent Name : ");
scanf("%s", student[x].name);
printf("\nStudent Rollno. : ");
scanf("%s", student[x].rollno);
system("\npause");
goto exam;
}
admin = fopen("student.txt", "w");
fprintf(admin, "Name: %s \nRoll Number: %s\n\n", student.name, student.rollno);
fclose(admin);
如您所见,我正在尝试将每个姓名和号码放入文本文件,但我一直收到此错误
错误:请求成员 'name' 不是结构或联合 | 错误:请求成员 'rollno' 不是结构或联合
有没有办法把它放到一个文件中,有或没有结构?
这个
fprintf(admin, "Name: %s \nRoll Number: %s\n\n", student.name, student.rollno);
无法工作,student
是 stud
的数组(或者至少如果我在学校的话会是这样)。您已经表明您知道如何使用 for(x=0; x<stud; x++)
遍历学生人数,所以再做一遍:
for(x=0; x<stud; x++) {
fprintf(admin, "Name: %s \nRoll Number: %s\n\n", student[x].name, student[x].rollno);
}
您的程序中可能会出现其他错误(例如 goto exam
立即跳出您的 for 循环到某个地方)。但这至少会解决你所描述的错误。