题目3:职工工资管理系统设计 功能:实现简单的职工工资信息管理,职工工资的基本信息包括编号、姓名、基本工资、奖金、工资总额等 基本要求: 1 设计简单的菜单,能够进行系统功能选择。 2 实现信息的录入功能。 3 在已有信息的基础上添加新的记录。 4 删除指定编号的记录。 5 修改指定编号的记录 6 实现信息的浏览功能 7 按编号查询功能 8 按工资总额排序功能 #include "stdio.h" #include "stdlib.h" #include "ctype.h" #include "process.h" struct gongzi /*定义数组*/ { int bianhao; char xingming[10]; int jbgz;/*基本工资*/ int jiangjin; int tatal; struct gongzi *next; }; void print() /*菜单*/ { printf("welcom!\n"); printf("1.创建新信息\n"); printf("2.删除原信息\n"); printf("3.修改原信息\n"); printf("4.按编号查找\n"); printf("5.工资总额排序\n"); } struct gongzi * creat(struct gongzi*head) /*case1创建工资,降序排列*/ { struct gongzi *p1, *p2, *p3; /*p1 新增点,p2,p3 切点*/ p1 =p2 =p3 =(struct gongzi * )malloc(sizeof(struct gongzi) ); printf("创建新信息\n 输入编号,姓名,基本工资,奖金\n"); printf("输入编号"); scanf("%d",&p1->bianhao); printf("输入姓名"); scanf("%s",&p1->xingming); printf("输入基本工资"); scanf("%d",&p1->jbgz); printf("输入奖金"); scanf("%d",&p1->jiangjin); p1->tatal =p1->jbgz + p1->jiangjin; p1->next =NULL; if(head == NULL) { head =p1; } else { p2 =head; while((p2->tatal < p1->tatal) && (p2->next !=NULL)) { p3 =p2; p2 =p2->next; } if(p1->tatal < p2->tatal) { if(head == p1) { head =p1; } else { p3->next =p1; } p1->next =p2; } else { p2->next =p1; p1->next =NULL; } } return head; } struct gongzi * del(struct gongzi*head) /*case2 删除原信息*/ { int bianhao; struct gongzi *p1, *p2; printf("输入要删除的编号"); if(head == NULL) { printf("\nlist is null"); goto end; } p1=head; scanf("%d",&bianhao); while((bianhao != p1->bianhao) && (p1->next != NULL)) { p2 =p1; p1 =p1->next; } if(bianhao ==p1->bian...