给你借鉴一下
#include<stdio.h>
#define n 3
void main()
{
int i;
FILE *fp;//文件指针
struct staff
{
long int num;
char name[20];
char sex;
char addr[20];
int IDnum;
int borndate;
}staffs[n];
for(i=0;i<n;i++)
{
printf("请输入员工编号");
scanf("%d",&staffs[i].num);
printf("\n请输入员工姓名");
scanf("%s",&staffs[i].name);
printf("\n请输入员工性别");
scanf("\n%c",&staffs[i].sex);//字符用%c匹配
printf("\n请输入员工身份证号");
scanf("%d",&staffs[i].IDnum);
printf("\n请输入员工出生日期");
scanf("%d",&staffs[i].borndate);
printf("\n请输入员工住址");
scanf("%s",&staffs[i].addr);
printf("\n");
//for(i=0;i<n;i++)多余
{printf("员工编号%d\n",staffs[i].num);
printf("员工姓名%s\n",staffs[i].name);
printf("员工性别%c\n",staffs[i].sex);
printf("员工身份证号%d\n",staffs[i].IDnum);
printf("员工出生日期%d\n",staffs[i].borndate);
printf("员工住址%s\n",staffs[i].addr);
}
}
fp=fopen("out.dat","wb");//在当前程序运行目录下自动建立out.dat文件,并用二进制写方式打开文件
if(fp==NULL)
{
printf("打开文件出错\n");
return ;
}
//用fread读取与fwrite匹配
if(fwrite(staffs,sizeof(staff),3,fp)!=3)//直接写入3个记录
{
printf("写文件出错\n");
return ;
}
fclose(fp);
printf("写入完毕!\n");
}
温馨提示:答案为网友推荐,仅供参考