#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 300
struct date
{ char year[6];
char month[4];
char day[4];};
struct st
{ char num[13];
char name[15];
int age;
char work[20];
char sex[6];
char add[30];
char phone[10];
struct date hiredate; };
void lr()
{ FILE *p;
struct st s1;
char ans='y'; p=fopen("staff.dat","a"); if(p==NULL)
{ printf("file open
error!\n");
exit(-1); } while(ans=='y'||ans=='Y') { printf("请输入工号:"); scanf("%s",s1.num); printf("请输入姓名:"); scanf("%s",s1.name); printf("请输入年龄:"); scanf("%d",&s1.age); printf("请输入工作:"); scanf("%s",s1.work); printf("请输入性别:"); scanf("%s",s1.sex); printf("请输入地址:"); scanf("%s",s1.add); printf("请输入电话:"); scanf("%s",s1.phone); printf("请输入入职时间(年月日):"); scanf("%s%s%s",s1.hiredate.year,s1.hiredate.month,s1.hiredate.day); fwrite(&s1,sizeof(struct st),1,p); getchar(); printf("继续输入吗?(y/n)"); scanf("%c",&ans); } fclose(p);}void cx(){ FILE *p; struct st s[N]; char num[13]; char name[15]; char phone[10]; int i,w,c,n=0,m=1; if(m>0) { do{ printf("\n"); printf("************************\n");
printf("******按1 工号查询******\n"); printf("******按2 姓名查询******\n"); printf("******按3 电话查询******\n"); printf("******按0 退出系统******\n"); printf("************************\n"); printf("请输入你的选择:\n"); scanf("%d",&c); switch(c) { case 1: p=fopen("staff.dat","rb"); if(p==NULL) { printf("file open error.\n"); exit(-1); } while(fread(&s[n],sizeof(struct st),n,p)==1) { n++; } fclose(p); printf("请输入工号:"); scanf("%s",num); printf("\n"); for(i=0;i<n;i++) { if(strcmp(num,s[i].num)==0) break; if(i>=n) { printf("不存在该工号!\n"); }
else
{ printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone); } }
p=fopen("staff.dat","w"); fwrite(s,sizeof(struct st),n,p);
fclose(p);
system("pause"); break;
case 2: p=fopen("staff.dat","rb"); if(p==NULL)
{ printf("file open error.\n"); exit(-1); } while(fread(&s[n],sizeof(struct st),n,p)==1)
{ n++; }
fclose(p);
printf("请输入姓名:"); scanf("%s",name); printf("\n"); for(i=0;i<n;i++) { if(i>=n) { printf("不存在该姓名!\n"); } else { printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone); } }
p=fopen("staff.dat","w"); fwrite(s,sizeof(struct st),n,p);
fclose(p); system("pause"); break;
case 3: p=fopen("staff.dat","rb"); if(p==NULL)
{ printf("file open error.\n"); exit(-1); } while(fread(&s[n],sizeof(struct st),n,p)==1)
{ n++; }
fclose(p);
printf("请输入电话:"); scanf("%s",phone); printf("\n"); for(i=0;i<n;i++) { if(i>=n) { printf("不存在该电话!\n"); } else { printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone); } }
p=fopen("staff.dat","w"); fwrite(s,sizeof(struct st),n,p);
fclose(p);
system("pause"); break; } } while(c!=0);
}
}
int main()
{ int choice;
printf("\n");
while(1) { printf("*************************************************************\n");
printf("**------------------欢迎进入企业员工管理系统---------------**\n");
printf("**--------------------按1,录入员工信息--------------------**\n");
printf("**--------------------按2,更新员工信息--------------------**\n");
printf("**--------------------按3,查询员工信息--------------------**\n");
printf("**--------------------按4,排列员工信息--------------------**\n");
printf("**--------------------按5,统计员工信息--------------------**\n");
printf("**--------------------按6,输出员工信息--------------------**\n");
printf("**--------------------按0,退出系统------------------------**\n"); printf("**----------------------------------制作者:3组--**\n"); printf("*************************************************************\n");
printf("请输入你的选项:"); scanf("%d",&choice); switch(choice) { case 0:
printf("运行结束,谢谢使用!\n");
system("pause");
return 0;
case 1:lr();break; /*case 2:gx();break;*/ case 3:cx();break; /*case 4:pl();break; case 5:tj();break; case 6:sc();break;*/ default:printf("输入错误,请重新选择!\n"); }
} system("pause");
return 0;}
#include<stdio.h>#include<stdlib.h>#include<string.h>#define N 300struct date{ char year[6]; char month[4]; char day[4];};struct st{ char num[13]; char name[15]; int age; char work[20]; char sex[6]; char add[30]; char phone[10]; struct date hiredate; };void lr(){ FILE *p; struct st s1; char ans='y'; p=fopen("staff.dat","a"); if(p==NULL) { printf("file open error!\n"); exit(-1); } while(ans=='y'||ans=='Y') { printf("请输入工号:"); scanf("%s",s1.num); printf("请输入姓名:"); scanf("%s",s1.name); printf("请输入年龄:"); scanf("%d",&s1.age); printf("请输入工作:"); scanf("%s",s1.work); printf("请输入性别:"); scanf("%s",s1.sex); printf("请输入地址:"); scanf("%s",s1.add); printf("请输入电话:"); scanf("%s",s1.phone); printf("请输入入职时间(年月日):"); scanf("%s%s%s",s1.hiredate.year,s1.hiredate.month,s1.hiredate.day); fwrite(&s1,sizeof(struct st),1,p); getchar(); printf("继续输入吗?(y/n)"); scanf("%c",&ans); } fclose(p);}void cx(){ FILE *p; struct st s[N]; char num[13]; char name[15]; char phone[10]; int i,w,c,n=0,m=1; if(m>0) { do{ printf("\n"); printf("************************\n"); printf("******按1 工号查询******\n"); printf("******按2 姓名查询******\n"); printf("******按3 电话查询******\n"); printf("******按0 退出系统******\n"); printf("************************\n"); printf("请输入你的选择:\n"); scanf("%d",&c); switch(c) { case 1: p=fopen("staff.dat","rb"); if(p==NULL) { printf("file open error.\n"); exit(-1); } while(fread(&s[n],sizeof(struct st),n,p)==1) { n++; } fclose(p); printf("请输入工号:"); scanf("%s",num); printf("\n"); for(i=0;i<n;i++) { if(strcmp(num,s[i].num)==0) break; if(i>=n) { printf("不存在该工号!\n"); } else { printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone); } } p=fopen("staff.dat","w"); fwrite(s,sizeof(struct st),n,p); fclose(p); system("pause"); break; case 2: p=fopen("staff.dat","rb"); if(p==NULL) { printf("file open error.\n"); exit(-1); } while(fread(&s[n],sizeof(struct st),n,p)==1) { n++; } fclose(p); printf("请输入姓名:"); scanf("%s",name); printf("\n"); for(i=0;i<n;i++) { if(i>=n) { printf("不存在该姓名!\n"); } else { printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone); } } p=fopen("staff.dat","w"); fwrite(s,sizeof(struct st),n,p); fclose(p); system("pause"); break; case 3: p=fopen("staff.dat","rb"); if(p==NULL) { printf("file open error.\n"); exit(-1); } while(fread(&s[n],sizeof(struct st),n,p)==1) { n++; } fclose(p); printf("请输入电话:"); scanf("%s",phone); printf("\n"); for(i=0;i<n;i++) { if(i>=n) { printf("不存在该电话!\n"); } else { printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone); } } p=fopen("staff.dat","w"); fwrite(s,sizeof(struct st),n,p); fclose(p); system("pause"); break; } } while(c!=0); }}int main(){ int choice; printf("\n"); while(1) { printf("*************************************************************\n"); printf("**------------------欢迎进入企业员工管理系统---------------**\n"); printf("**--------------------按1,录入员工信息--------------------**\n"); printf("**--------------------按2,更新员工信息--------------------**\n"); printf("**--------------------按3,查询员工信息--------------------**\n"); printf("**--------------------按4,排列员工信息--------------------**\n"); printf("**--------------------按5,统计员工信息--------------------**\n"); printf("**--------------------按6,输出员工信息--------------------**\n"); printf("**--------------------按0,退出系统------------------------**\n"); printf("**----------------------------------制作者:3组--**\n"); printf("*************************************************************\n"); printf("请输入你的选项:"); scanf("%d",&choice); switch(choice) { case 0:printf("运行结束,谢谢使用!\n");system("pause");return 0; case 1:lr();break; /*case 2:gx();break;*/ case 3:cx();break; /*case 4:pl();break; case 5:tj();break; case 6:sc();break;*/ default:printf("输入错误,请重新选择!\n"); } } system("pause"); return 0;}
修改如下,供参考:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 300
struct date
{
char year[6];
char month[4];
char day[4];
};
struct st
{
char num[13];
char name[15];
int age;
char work[20];
char sex[6];
char add[30];
char phone[10];
struct date hiredate;
};
void lr()
{
FILE *p;
struct st s1;
char ans='y';
p=fopen("staff.dat","a");
if(p==NULL)
{
printf("file openerror!\n");
exit(-1);
}
while(ans=='y'||ans=='Y') {
printf("请输入工号:");
fflush(stdout);rewind(stdin);
scanf("%s",s1.num);
printf("请输入姓名:");
fflush(stdout);rewind(stdin);
scanf("%s",s1.name);
printf("请输入年龄:");
fflush(stdout);rewind(stdin);
scanf("%d",&s1.age);
printf("请输入工作:");
fflush(stdout);rewind(stdin);
scanf("%s",s1.work);
printf("请输入性别:");
fflush(stdout);rewind(stdin);
scanf("%s",s1.sex);
printf("请输入地址:");
fflush(stdout);rewind(stdin);
scanf("%s",s1.add);
printf("请输入电话:");
fflush(stdout);rewind(stdin);
scanf("%s",s1.phone);
printf("请输入入职时间(年月日):");
fflush(stdout);rewind(stdin);
scanf("%s%s%s",s1.hiredate.year,s1.hiredate.month,s1.hiredate.day);
fwrite(&s1,sizeof(struct st),1,p);
//getchar();
printf("继续输入吗?(y/n)");
fflush(stdout);rewind(stdin);
scanf("%c",&ans);
}
fclose(p);
}
void cx()
{
FILE *p;
struct st s[N];
char num[13];
char name[15];
char phone[10];
int i,w,c,n=0,m=1;
p=fopen("staff.dat","rb");
if(p==NULL) {
printf("file open error.\n");
exit(-1);
}
while(fread(&s[n],sizeof(struct st),1,p)==1)n++;
fclose(p);
//if(m>0) {
do{
printf("\n");
printf("************************\n");
printf("******按1 工号查询******\n");
printf("******按2 姓名查询******\n");
printf("******按3 电话查询******\n");
printf("******按0 退出系统******\n");
printf("************************\n");
printf("请输入你的选择:\n");
fflush(stdout);rewind(stdin);
scanf("%d",&c);
switch(c) {
case 1:
printf("请输入工号:");
fflush(stdout);rewind(stdin);
scanf("%s",num);
for(i=0;i<n;i++) {
if(strcmp(num,s[i].num)==0) break;
}
if(i>=n) {
printf("不存在该工号!\n");
}else{
printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone);
}
//p=fopen("staff.dat","w");
//fwrite(s,sizeof(struct st),n,p);
//fclose(p);
system("pause");
break;
case 2:
printf("请输入姓名:");
fflush(stdout);rewind(stdin);
scanf("%s",name);
for(i=0;i<n;i++) {
if(strcmp(name,s[i].name)==0) break;
}
if(i>=n){
printf("不存在该姓名!\n"); }
else {
printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone);
}
//p=fopen("staff.dat","w");
//fwrite(s,sizeof(struct st),n,p);
//fclose(p);
system("pause");
break;
case 3:
printf("请输入电话:");
scanf("%s",phone);
for(i=0;i<n;i++) {
if(strcmp(phone,s[i].phone)==0) break;
}
if(i>=n) {
printf("不存在该电话!\n");
}else {
printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone);
}
//p=fopen("staff.dat","w");
//fwrite(s,sizeof(struct st),n,p);
//fclose(p);
system("pause");
break;
}
}while(c!=0);
//}
}
int main()
{
int choice;
printf("\n");
while(1) {
printf("*************************************************************\n");
printf("**------------------欢迎进入企业员工管理系统---------------**\n");
printf("**--------------------按1,录入员工信息--------------------**\n");
printf("**--------------------按2,更新员工信息--------------------**\n");
printf("**--------------------按3,查询员工信息--------------------**\n");
printf("**--------------------按4,排列员工信息--------------------**\n");
printf("**--------------------按5,统计员工信息--------------------**\n");
printf("**--------------------按6,输出员工信息--------------------**\n");
printf("**--------------------按0,退出系统------------------------**\n");
printf("**---------------------制作者:3组-------------------------**\n");
printf("*************************************************************\n");
printf("请输入你的选项:");
scanf("%d",&choice);
switch(choice)
{
case 0:
printf("运行结束,谢谢使用!\n");
system("pause");
return 0;
case 1:
lr();
break;
/*case 2:gx();
break;*/
case 3:
cx();
break;
/*case4:
pl();
break;
case 5:
tj();
break;
case 6:
sc();
break;*/
default:
printf("输入错误,请重新选择!\n");
break;
}
}
system("pause");
return 0;
}
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 300
struct date
{
char year[6];
char month[4];
char day[4];
};
struct st
{
char num[13];
char name[15];
int age;
char work[20];
char sex[6];
char add[30];
char phone[10];
struct date hiredate;
};
void lr()
{
FILE *p;
struct st s1;
char ans='y';
p=fopen("d:\\staff.dat","a");
if(p==NULL) {
printf("file open error!\n");
exit(-1);
}
while(ans=='y'||ans=='Y') {
printf("请输入工号:");
scanf("%s",s1.num);
printf("请输入姓名:");
scanf("%s",s1.name);
printf("请输入年龄:");
scanf("%d",&s1.age);
printf("请输入工作:");
scanf("%s",s1.work); printf("请输入性别:");
scanf("%s",s1.sex);
printf("请输入地址:");
scanf("%s",s1.add);
printf("请输入电话:");
scanf("%s",s1.phone);
printf("请输入入职时间(年月日):");
scanf("%s%s%s",s1.hiredate.year,s1.hiredate.month,s1.hiredate.day);
fwrite(&s1,sizeof(struct st),1,p);
getchar();
printf("继续输入吗?(y/n)");
scanf("%c",&ans);
}
fclose(p);
}
void cx(){
FILE *p;
struct st s[N];
char num[13];
char name[15];
char phone[10];
int i,w,c,n=0,m=1;
if(m>0) {
do{
printf("\n");
printf("************************\n");
printf("******按1 工号查询******\n");
printf("******按2 姓名查询******\n");
printf("******按3 电话查询******\n");
printf("******按0 退出系统******\n");
printf("************************\n");
printf("请输入你的选择:\n");
scanf("%d",&c);
switch(c) {
case 1:
p=fopen("d:\\staff.dat","rb");
if(p==NULL) {
printf("file open error.\n");
exit(-1);
}
while(fread(&s[n],sizeof(struct st),1,p)==1) {
printf("%-15s%-20s%-4s\n",s[n].num,s[n].name,s[n].phone);
n++;
}
fclose(p);
printf("请输入工号:");
scanf("%s",num);
printf("\n");
for(i=0;i<n;i++) {
if(strcmp(num,s[i].num)==0){
printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone);
break;
}
if(i>=n) {
printf("不存在该工号!\n");
}
}
system("pause");
break;
case 2:
p=fopen("d:\\staff.dat","rb");
if(p==NULL){
printf("file open error.\n");
exit(-1);
}
while(fread(&s[n],sizeof(struct st),n,p)==1) {
n++;
}
fclose(p);
printf("请输入姓名:");
scanf("%s",name);
printf("\n");
for(i=0;i<n;i++) {
if(i>=n) {
printf("不存在该姓名!\n");
} else {
printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone);
}
}
p=fopen("d:\\staff.dat","w");
fwrite(s,sizeof(struct st),n,p);
fclose(p);
system("pause");
break;
case 3:
p=fopen("d:\\staff.dat","rb");
if(p==NULL){
printf("file open error.\n");
exit(-1);
}
while(fread(&s[n],sizeof(struct st),n,p)==1) {
n++;
}
fclose(p);
printf("请输入电话:");
scanf("%s",phone);
printf("\n");
for(i=0;i<n;i++) {
if(i>=n) {
printf("不存在该电话!\n");
} else {
printf("%-15s%-20s%-4s\n",s[i].num,s[i].name,s[i].phone);
}
}
p=fopen("d:\\staff.dat","w");
fwrite(s,sizeof(struct st),n,p);
fclose(p);
system("pause");
break;
}
}
while(c!=0);
}
}
int main()
{
int choice;
printf("\n");
while(1) {
printf("*************************************************************\n");
printf("**------------------欢迎进入企业员工管理系统---------------**\n");
printf("**--------------------按1,录入员工信息--------------------**\n");
printf("**--------------------按2,更新员工信息--------------------**\n");
printf("**--------------------按3,查询员工信息--------------------**\n");
printf("**--------------------按4,排列员工信息--------------------**\n");
printf("**--------------------按5,统计员工信息--------------------**\n");
printf("**--------------------按6,输出员工信息--------------------**\n");
printf("**--------------------按0,退出系统------------------------**\n");
printf("**----------------------------------制作者:3组--**\n");
printf("*************************************************************\n");
printf("请输入你的选项:");
scanf("%d",&choice);
switch(choice) {
case 0:
printf("运行结束,谢谢使用!\n");
system("pause");
return 0;
case 1:
lr();
break;
case 3:
cx();break;
default:
printf("输入错误,请重新选择!\n");
}
}
system("pause");
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632