//代码如下,问题在注释内有说明,请大家帮帮忙。
#include<stdio.h>
//定义一个学生结构体
typedef struct Student{
char name[20];// 定义学生姓名
char num[20];// 定义学号
};
int main(){
Student stu;//定义一个学生
FILE *fp=fopen("test.txt","a");//打开文件
if(fp!=NULL){
printf("Qing Shu Ru Name:");scanf("%s",stu.name);
printf("Qing Shu Ru Xuehao:");scanf("%s",stu.num);
fwrite(&stu,sizeof(Student),1,fp);//写入文件
}else{
//
}
fclose(fp);
rewind(fp);
Student putt;
FILE *fp1=fopen("test.txt","r");
if(fp1!=NULL){
while(putt!=EOF){// 问题在这里,如何采取一个判断输出说有的文件内结构体???
//我这个括号里的判断运行显示错误
//并且使用(!feof(fp1))时会多执行一次没法用。
fread(&putt,sizeof(Student),1,fp1);
printf("%s %s\n",putt.name,putt.num);
}
}else{
//
}
fclose(fp1);
return 0;
}
|
|