#include #include #include #define NUM 1000 void enter(); void search_num(); void dele_num(); void modi_num(); void browse(); void count(); void add(); void menu(); int n; //员工的总数 struct emploee //职工数据结构 { char no[5]; char name[8]; int wage1; //员工的基本工资 int wage2; //员工的职务工资 int funds; //员工的公积金 int ylbx; //员工的医疗保险 int jt; //员工的津贴 int wage3; //员工的实发工资 int wage4; //前3项工资和 }emp[NUM],newemp; int main() { system("color CF"); menu(); } void menu()//主界面 { int n; do{ printf("**************** 职工工资管理系统 ***********\n"); printf("* 1-----输入职工信息------ *\n"); printf("* 2-----查询职工信息------ *\n"); printf("* 3-----删除职工信息------ *\n"); printf("* 4-----修改职工信息------ *\n"); printf("* 5-----工资统计信息------ *\n"); printf("* 6-----浏览职工信息------ *\n"); printf("* 7-----添加职工信息------ *\n"); printf("* 8-------退出程序-------- *\n"); printf("* 制造人:欧 慧 祥 *\n"); printf("*********************************************\n"); printf("输入你的选择(1-8):"); scanf("%d",&n); if(n<1||n>8) { printf("输入错误!请重新输入:\n"); return menu(); } switch(n) { case 1:enter(); break; case 2:search_num(); break; case 3:dele_num(); break; case 4:modi_num(); break; case 5:count(); break; case 6:browse(); break; case 7:add(); break; case 8:printf("*******欢迎下次使用!*******"); default:exit(0);//退出系统.exit(0)函数功能是退出程序 } }while(n!=0); } int load()/*导入函数int型*/ { FILE *fp; int i=0; if((fp=fopen("emp.txt","rb"))==NULL) { printf("不能打开文件\n"); exit(0); } else { do { fread(&emp[i],sizeof(struct emploee),1,fp); i++; }while(feof(fp)==0);//检测上面的文件结束符 } fclose(fp); return(i-1);//返回人数 } void save(int m)//保存文件的函数 { int i; FILE *fp;//声明fp是指针,用来指向FILE类型的对象 if((fp=fopen("emp.txt","wb"))==NULL)//打开职工列表文件为空 { printf("错误!\n"); exit(0); } for(i=0;i=2000&&emp[n].wage4<=3000) b++; else if(emp[n].wage4>0&&emp[n].wage4<=2000) c++; } a=n-b-c; printf("前三项之和在0~2000元的占的百分之%.1f\n",c*100/n); printf("前三项之和在2000~3000元的占的百分之%.1f\n",b*100/n); printf("前三项之和在3000元以上占的百分之%.1f\n",a*100/n); fclose(fp); } /********************删除信息的地方*******************/ void dele_num() { FILE *fp; int m=load(); int i,j,n,t,button; char name[20]; printf("原来的职工信息:\n"); browse();//显示删除前的职工信息 printf("\n"); printf("按姓名删除:\n"); scanf("%s",name); for(button=1,i=0;button&&i