#include <stdio.h>
#include <stdlib.h>
typedef struct StuInfo {
char name[10];
char sex[3];
unsigned int age;
unsigned int id;
};
void Init_StuInfo(StuInfo *s)
{
printf("请输入学生姓名:");
scanf("%s", s->name);
printf("\n请输入性别:");
scanf("%s", s->sex);
printf("\n请输入年龄:");
scanf("%d", &s->age);
printf("\n请输入学号:");
scanf("%d", &s->id);
printf("\n");
}
void Show_StudInfo(StuInfo s)
{
printf("学号:%d\n姓名:%s\n性别:%s\n年龄:%d\n", s.id, s.name, s.sex, s.age);
}
int WriteStuInfo(StuInfo* si,int size)
{
FILE * pf = NULL;
pf = fopen("StudentsInfo.txt", "w+");
if (!pf)
{
printf("file open fail.\n");
return -1;
}
fwrite(si, sizeof(StuInfo), size, pf);
if (pf)
{
fclose(pf);
}
return 0;
}
int ReadStuInfo(StuInfo* si)
{
FILE* pf = fopen("StudentsInfo.txt", "r+");
if (!pf)
{
printf("file open fail.\n");
return -1;
}
fread(si, sizeof(StuInfo), 1, pf);
if (pf)
{
fclose(pf);
}
return 0;
}
int main()
{
StuInfo s[3];
s[0] = { "罗位","男",24,1001 };
/*Init_StuInfo(&s[0]);*/
Show_StudInfo(s[0]);
WriteStuInfo(&s[0], 1);
ReadStuInfo(&s[2]);
Show_StudInfo(s[2]);
system("pause");
return 0;
}