#include <stdio.h>
#include <stdlib.h>
#include<string.h>
#define LEN sizeof(struct Student)
#define SIZE 10
struct Student{
int num;
char name[20];
float score;
int age;
}stud[SIZE];
void save(){
FILE *fp;
int i;
if(!(fp = fopen("stud.dat", "wb"))){
printf("can't open file\n'");
exit(0);
}
for(i=0;i<SIZE;i++)
if(fwrite(&stud[i],LEN,1,fp)!=1)
printf("file write error\n");
fclose(fp);
}
void print(struct Student stu){
printf("学号:%d \t姓名:%s \t成绩:%f \年龄:%d ",stu.num,stu.name,stu.score,stu.age);
}
void load(){
FILE *fp;
int i;
if(!(fp = fopen("stud.dat", "rb"))){
printf("can't open file\n'");
exit(0);
}
for(i=0;i<SIZE;i++){
fread(&stud[i],LEN,1,fp);
print(stud[i]);
printf("\n");
}
fclose(fp);
}
int main()
{
int i;
printf("请输入各学生的信息:学号、姓名、分数、年龄:\n");
for(i=0;i<SIZE;i++)
scanf("%d %s %f %d",&stud[i].num,stud[i].name,&stud[i].score,&stud[i].age);
printf("输入成功\n");
save();
load();
return 0;
}