c++程序设计源程序—职工信息管理系统.doc_第1页
c++程序设计源程序—职工信息管理系统.doc_第2页
c++程序设计源程序—职工信息管理系统.doc_第3页
c++程序设计源程序—职工信息管理系统.doc_第4页
c++程序设计源程序—职工信息管理系统.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

#include#include#include#define N 100 /*宏定义N*/struct clerk /*定义结构型 clerk*/char num12;/*职工号*/char name9;/*职工姓名*/char sex3;/*职工性别*/char xl11;/*职工学历*/char adr60;/*职工住址*/char tell13;/*职工电话号码*/int age; /*职工年龄*/int salary; /*职工工资*/cN;void menu()/*定义菜单函数并显示菜单*/ printf(n);printf(tn);printf(t*n);printf(t*n);printf(t*1.输入记录 2.浏览记录*n); printf(t* *n);printf(t*3.查询记录 4.添加记录*n);printf(t* *n);printf(t*5.删除记录 6.修改记录*n);printf(t* *n);printf(t* 7.退出系统 *n);printf(t*n);printf(tn);int enter(int n) /*录入职工信息*/int i;char judge;for(i=0;i100;i+)printf(开始输入记录!n); printf(职工号: );scanf(%s,ci.num);printf(姓名: );scanf(%s,);printf(性别: );scanf(%s,ci.sex);printf(学历: );scanf(%s,ci.xl);printf(住址: );scanf(%s,ci.adr);printf(电话: );scanf(%s,ci.tell);printf(年龄: );scanf(%d,&ci.age); printf(工资: );scanf(%d,&ci.salary);printf(n);getchar();printf(是否继续输入(Y/N)?);/*是否继续输入数据*/judge=getchar();if(judge=Y|judge=y)continue;elseif(judge=N|judge=n)break;printf(输入成功,按任意键返回.);getchar();getchar();return i+1;void display(int a) /*浏览职工信息*/int i;printf(开始浏览记录!n); printf( 职工号 姓名 性别 学历 住址 电话 年龄 工资n);for(i=0;ia;i+) /*输出数据*/printf(%-12s,ci.num);printf(%-9s,);printf(%-6s,ci.sex);printf(%-6s,ci.xl);printf(%-14s,ci.adr);printf(%-13s,ci.tell);printf(%-5d,ci.age);printf(%-6d,ci.salary);printf(n); printf(按任意键返回.);getchar();getchar();void locate(int a) /*查询职工信息*/int choice,i,flag=0;char ch11;printf(开始查询记录!n);printf(请选择查找方式:(1.按学历 2.按职工号):);scanf(%d,&choice); /*输入查找方式*/getchar();switch(choice)case 1:printf(请输入要查职工学历:);/*按职工学历查询*/gets(ch); printf( 职工号 姓名 性别 学历 住址 电话 年龄 工资n);for(i=0;ia;i+)if(strcmp(ch,ci.xl)=0) /*比较两个字符串的大小*/printf(%-12s,ci.num);printf(%-9s,);printf(%-6s,ci.sex);printf(%-6s,ci.xl);printf(%-14s,ci.adr);printf(%-13s,ci.tell);printf(%-5d,ci.age);printf(%-6d,ci.salary);printf(n);flag=1;if(flag=0)printf(无此职工的相关信息!n);break;case 2:printf(请输入要查找的职工的职工号:); /*按职工工号查询*/gets(ch);printf( 职工号 姓名 性别 学历 住址 电话 年龄 工资n);for(i=0;ia+1)printf(输入位置有误,按任意键返回.);return a;elseprintf(开始插入记录!n);for(i=a-1;i=po-1;i-)strcpy(ci+1.num,ci.num);strcpy(ci+1.name,);strcpy(ci+1.sex,ci.sex);strcpy(ci+1.xl,ci.xl); strcpy(ci+1.adr,ci.adr); strcpy(ci+1.tell,ci.tell); ci+1.age=ci.age; ci+1.salary=ci.salary;printf(请输入职工号: );scanf(%s,cpo.num);getchar();printf(姓名: );scanf(%s,);printf(性别: );scanf(%s,cpo-1.sex);printf(学历: );scanf(%s,cpo-1.xl);printf(住址: );scanf(%s,cpo-1.adr);printf(电话: );scanf(%s,cpo-1.tell);printf(年龄: );scanf(%d,&cpo-1.age); printf(工资: );scanf(%d,&cpo-1.salary);printf(n);*f=1;if(* f=1)printf(添加成功,按任意键返回.);getchar();getchar();return a+1;elseprintf(添加失败,按任意键返回.);getchar();getchar();return a;int delet(int a,int *f) /*删除职工信息*/int i,po,flag=0;char nu20;printf(开始删除记录!n);printf(请输入要删除职工的工号:);/*按职工号删除职工信息*/getchar();scanf(%s,nu);/*输入职工号*/for(i=0;ia;i+)if(strcmp(nu,ci.num)=0)/*比较两个字符串的大小*/po=i;flag=1;if(flag=1)for(i=po;ia;i+)strcpy(ci.num,ci+1.num);/*后一个职工信息覆盖前一个职工信息*/strcpy(,ci+1.name);strcpy(ci.sex,ci+1.sex);strcpy(ci.xl,ci+1.xl); strcpy(ci.adr,ci+1.adr); strcpy(ci.tell,ci+1.tell); ci.age=ci+1.age; ci.salary=ci+1.salary;* f=1;printf(删除成功,);elseprintf(无此职工的相关信息!n);printf(按任意键继续.);getchar();getchar();if(flag=1)return i-1;elsereturn i;int modify(int a,int f) /*修改职工信息*/int i,po,flag=0;char numb12;printf(开始修改记录!n);printf(请输入要修改职工的工号:);/*按职工号修改职工信息*/getchar();gets(numb); /*输入数据给数组numb*/for(i=0;ia;i+)if(strcmp(numb,ci.num)=0)/*比较两个字符串的大小*/po=i;flag=1;if(flag=1)printf( 职工号 姓名 性别 学历 住址 电话 年龄 工资n); /*显示指定职工信息*/printf(%-12s%-9s%-6s%-6s%-14s%-13s%-5d%-6d%n,cpo.num,,cpo.sex,cpo.xl,cpo.adr,cpo.tell,cpo.age,cpo.salary); printf(请输入职工号: );scanf(%s,cpo.num);getchar();printf(姓名: );scanf(%s,);printf(性别: );scanf(%s,cpo.sex);printf(学历: );scanf(%s,cpo.xl);printf(住址: );scanf(%s,cpo.adr);printf(电话: );scanf(%s,cpo.tell);printf(年龄: );scanf(%d,&cpo.age); printf(工资: );scanf(%d,&cpo.salary);printf(n);f=1;elseprintf(无此职工的相关信息!n);printf(修改成功,按任意键返回.);getchar();getchar();return f;void exit() /*退出职工信息管理系统*/printf(退出系统.);getchar();getchar();void main()int i,j,choice,a=0,flag=0; FILE *fp; /*定义文件型指针变量*/if(fp=fopen(news.txt,a+)=NULL)/*打开文件并判断文件是否正确打开*/printf(Cant open file!n);return;i=0;while(!feof(fp) /*判断文件尾*/if(fread(&ci,sizeof(struct clerk),1,fp)=1)/*从文件中读取数据存入数组ci并判断是否正确读取*/i+;a+;system(cls);printf(共有%d条记录n,a); while(1)menu(); /*调用menu()函数*/printf(Please input your choice:);scanf(%d,&choice);switch(choice)case 1:a=enter(a);break;case 2:display(a);break; case 3:locate(a);break; case 4: a=add(a,&flag);break;case 5:a=delet(a,&flag);break;case 6:modify(a,flag);break;case 7:exit();switch(flag)case 1:for(j=i;ja;j+)fwrite(&cj,sizeof(struct clerk

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论