void Insert(){//添加功能 int i,j; int swi=0; Data dt,tt; Data *p=&dt;//指针操作 char tp[30]; char buff[20]; FILE *fp = NULL,*ff = NULL; while(1){ system("cls"); printf("请输入职工的姓名: "); scanf("%s",p->name); while(1){ system("cls"); printf("请输入职工ID编号(不可重复):"); scanf("%d",&p->number); if(p->number>0){ if(ff=fopen("data.txt", "r")){ swi=0; while(fgets(tp, 512, ff) != NULL){ memset(buff,0,sizeof(buff)); j=0; for(i=0;inumber==atoi(buff))swi=1; break; } buff[j++]=tp[i]; } if(swi==1)break; } fclose(ff); } if(swi==1){ printf("编号重复,请重新输入!\n"); system("pause"); continue; } } else{ printf("编号格式为纯数字,请重新输入!\n"); system("pause"); continue; } printf("(以下格式:按要求输入类型为数字)\n"); printf("\n请输入职工的基本工资:"); scanf("%d",&p->baseWage); printf("请输入职工的职务工资岗位津贴:"); scanf("%d",&p->dutyWage); printf("请输入职工的岗位津贴:"); scanf("%d",&p->allowance); printf("请输入职工的医疗保险:"); scanf("%d",&p->insurance); printf("请输入职工的公积金:"); scanf("%d",&p->fund); if(p->baseWage>=0&&p->dutyWage>=0&&p->insurance>=0&&p->fund>=0)break; else{ printf("抱歉!您输入的格式有问题,请重新输入!\n"); system("pause"); continue; } } break; } if(fp=fopen("data.txt","a")){ fprintf(fp, "%d,%s,%d,%d,%d,%d,%d,\n",p->number,p->name,p->baseWage,p->dutyWage,p->allowance,p->insurance,p->fund); } fclose(fp); printf("\n该订单信息存储成功\n"); system("pause"); } void Show(){//显示功能 int i,j,z,k; int cnt; int allSum=0; double x1,x2,x3,x4,x5; Data temp; Data dt[100]; char tp[30]; char buff[20]; FILE *ff = NULL; if(ff=fopen("data.txt", "r")){ sum=0; while(fgets(tp, 512, ff) != NULL){ memset(buff,0,sizeof(buff)); j=0; cnt=0; for(i=0;i='0'&&ch<='9'){ delNum=ch; swis=1; break; } else if(ch=='y'||ch=='Y'){ delNum='1'; swis=1; break; } else if(ch=='n'||ch=='N'){ printf("\n取消操作,返回功能页面\n"); system("pause"); break; } else{ printf("\n输入有误,请按要求重新确认\n"); system("pause"); } } if(swis==1){ while(1){ system("cls"); printf("***************************************选中修改信息***************************************\n"); printf("\n 职工信息《编号: %d 姓名: %s 基本工资: %d 职务工资: %d 岗位津贴: %d 医疗保险: %d 公积金: %d》\n",dt[num[delNum-'0'-1]].number,dt[num[delNum-'0'-1]].name,dt[num[delNum-'0'-1]].baseWage,dt[num[delNum-'0'-1]].dutyWage,dt[num[delNum-'0'-1]].allowance,dt[num[delNum-'0'-1]].insurance,dt[num[delNum-'0'-1]].fund); printf("******************************************************************************************\n"); printf(" 按选项选择需要修改的信息\n"); printf(" 0-保存 1-编号 2-姓名 3-基本工资 4-职务工资 5-岗位津贴 6-医疗保险 7-公积金\n"); ch=getch(); system("cls"); if(ch=='1'){ printf("请输入新的编号(不可和其他编号重复):"); scanf("%d",&dt[num[delNum-'0'-1]].number); } else if(ch=='2'){ printf("请输入新的姓名:"); scanf("%s",dt[num[delNum-'0'-1]].name); } else if(ch=='3'){ printf("请输入新的基本工资:"); scanf("%d",&dt[num[delNum-'0'-1]].baseWage); } else if(ch=='4'){ printf("请输入新的职务工资:"); scanf("%d",&dt[num[delNum-'0'-1]].dutyWage); } else if(ch=='5'){ printf("请输入新的岗位津贴:"); scanf("%d",&dt[num[delNum-'0'-1]].allowance); } else if(ch=='6'){ printf("请输入新的医疗保险:"); scanf("%d",&dt[num[delNum-'0'-1]].insurance); } else if(ch=='7'){ printf("请输入新的公积金:"); scanf("%d",&dt[num[delNum-'0'-1]].fund); } else if(ch=='0'){ break; } else{ printf("抱歉!请输入选项(0-7)\n"); system("pause"); continue; } printf("刚刚修改的信息-修改完成!\n"); printf("是否继续修改该职工信息\n"); printf("Y-继续(修改) N-退出(保存)"); ch=getch(); if(ch=='N'||ch=='n')break; else if(ch='y'||ch=='Y')continue; else{ printf("抱歉!请输入 Y or N\n"); system("pause"); continue; } } if(fp=fopen("data.txt","w")){ for(i=0;i