中南大学C语言程序设计实验——职工工资管理系统附详细操作说明及注释.doc
《中南大学C语言程序设计实验——职工工资管理系统附详细操作说明及注释.doc》由会员分享,可在线阅读,更多相关《中南大学C语言程序设计实验——职工工资管理系统附详细操作说明及注释.doc(32页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、. ./* Note:Your choice is C IDE */#include stdio.h#include string.h#include conio.h#include stdlib.hstruct Message/*此构造体用于存放职工信息以及创立链表*/char name30;int ID;int GZ;int ZWGZ;int JT;int YLBX;int GJJ;long int Total; float Sum_3; struct Message *nextPrt; static *head,*Rec_1=NULL,*Rec_2=NULL, *Rec_3=NULL;
2、/*此处创立一个表头,以及三个用于恢复函数的静态变量*/static float Sum_GZ=0,Sum_ZWGZ=0,Sum_JT=0,Sum_YLBX=0,Sum_GJJ=0;static float Average_GZ,Average_ZWGZ,Average_JT,Average_YLBX,Average_GJJ;void Input();/*此处声明各一级函数*/void Output();void Delete();void Add();void Recover();void Modify();void Search();void Statistic();struct Mess
3、age *creat(struct Message *h);/*此处声明各二级函数*/void print_Message(struct Message *h);struct Message *del_Message(struct Message *h,char *str);struct Message *add_Message(struct Message *h,struct Message *a,char *strafter);struct Message *Recover_Message(struct Message *h);struct Message *Modify_Message(
4、struct Message *h,char *str);void Search_Message(struct Message *h);void Statistic_Message(struct Message *h);main()/*主函数为菜单页*/char i;/*功能:调用各一级函数一级退出程序*/clrscr();gotoxy(27,9);printf(16 中南大学 );gotoxy(27,11);printf(16 职工工资管理系统 );gotoxy(27,13);printf(16 设计者:路 );gotoxy(27,15);printf(16 输入任意键继续 n);getch
5、();for(;)clrscr();gotoxy(25,9);printf(* * * * * * *菜单* * * * * *);gotoxy(25,10);printf(* a. 输入记录 *);gotoxy(25,11);printf(* b. 显示记录 *);gotoxy(25,12);printf(* c. 修改记录 *);gotoxy(25,13);printf(* d. 查找记录 *);gotoxy(25,14);printf(* e. 添加记录 *);gotoxy(25,15);printf(* f. 删除记录 *);gotoxy(25,16);printf(* g. 恢复记录
6、 *);gotoxy(25,17);printf(* h. 统计数据 *);gotoxy(25,18);printf(* i. 退出程序 *);gotoxy(25,19);printf(* 请选择 ai *);gotoxy(25,20);printf(* * * * * * * * * * * * * *);i=getch();if(i=i)break;else switch(i)casea:Input();break;/*调用记录输入函数*/ caseb:Output();break;/*调用记录显示函数*/ casec:Modify();break;/*调用记录修改函数*/ cased:S
7、earch();break;/*调用记录查找函数*/ casee:Add();break;/*调用记录添加函数*/ casef:Delete();break;/*调用记录删除函数*/ caseg:Recover();break;/*调用记录恢复函数*/ caseh:Statistic();break;/*调用记录统计函数*/ void Input()/*定义输入函数一级*/ /*主要功能:调用二级子函数创立链表*/head=NULL;head=creat(head);void Output()/*定义显示函数一级*/*主要功能:调用二级子函数实现按一定格式输出所有职工工资信息*/clrscr(
8、);print_Message(head);void Delete()/*定义删除函数一级*/*主要功能:调用二级子函数实现删除任意职工工资信息并输出删除后的工资信息*/char name50,*del_Mes=name;clrscr();gotoxy(1,1);printf(请输入XX:n);scanf(%s,name);head=del_Message(head,del_Mes);clrscr();printf(删除数据后:n);printf(-n);print_Message(head);void Add()/*定义添加函数一级*/*主要功能:调用二级函数以实现在任意位置添加一条或多条职
9、工工资信息*/char after_name30,i;struct Message* p;clrscr();gotoxy(1,1);printf(n请输入需要添加的信息n);printf(-n);p=(struct Message*)malloc(sizeof (struct Message);if(p!=NULL)printf(请输入XX:n);scanf(%s,&p-name);printf(请输入ID:n);scanf(%d,&p-ID);printf(请输入根本工资:n);scanf(%d,&p-GZ);printf(请输入职位工资:n);scanf(%d,&p-ZWGZ);print
10、f(请输入津贴:n);scanf(%d,&p-JT);printf(请输入医疗保险:n);scanf(%d,&p-YLBX);printf(请输入公积金:n);scanf(%d,&p-GJJ);p-Total=p-GZ+p-ZWGZ+p-JT-p-YLBX-p-GJJ;printf(总工资为:%dn,p-Total);printf(n输入在哪个职工信息下方添加新信息:n);scanf(%s,after_name);head=add_Message(head,p,after_name);printf(n是否继续添加?Y/N);i=getch();while (i!=N)printf(n请输入你想
11、要添加的信息n); printf(-n); p=(struct Message*)malloc(sizeof (struct Message);if(p!=NULL)printf(请输入XX:n);scanf(%s,&p-name);printf(请输入ID:n);scanf(%d,&p-ID);printf(请输入根本工资:n);scanf(%d,&p-GZ);printf(请输入职位工资:n);scanf(%d,&p-ZWGZ);printf(请输入津贴:n);scanf(%d,&p-JT);printf(请输入医疗保险:n);scanf(%d,&p-YLBX);printf(请输入公积金
12、:n);scanf(%d,&p-GJJ);p-Total=p-GZ+p-ZWGZ+p-JT-p-YLBX-p-GJJ;printf(总工资为:%ldn,p-Total);printf(n输入在哪个职工信息下方添加新信息:n);scanf(%s,after_name);head=add_Message(head,p,after_name);printf(n是否继续添加?Y/N);i=getch();clrscr();gotoxy(1,1);printf(n添加后的信息为:n);printf(-n);print_Message(head);void Recover()/*定义记录恢复函数一级*/
13、/*主要功能:调用二级函数以实现恢复已删除的信息*/clrscr();head=Recover_Message(head);gotoxy(1,4);printf(恢复成功!_n);printf(n输入任意键退出.);getch();void Modify()/*定义记录修改函数一级*/*主要功能:调用二级函数以实现修改任意职工的任意信息*/char name50,*Mod_Message=name;clrscr();printf(请输入需要修改信息的员工:n);scanf(%s,name);head=Modify_Message(head,Mod_Message);clrscr();print
14、f(修改后的信息为:n);printf(-n);print_Message(head);void Search()/*定义记录查找函数一级*/*主要功能:调用二级函数实现按照XX或ID通过关键字查找或准确查找的方式搜索职工信息*/clrscr();Search_Message(head);void Statistic()/*定义记录统计函数一级*/*调用二级函数以实现以表格的形式输出职工工资信息并统计前三项工资总额在一定围的人数及比例*/clrscr();Statistic_Message(head);printf(n输入任意键退出.);getch();struct Message *crea
15、t(struct Message *h)/*定义创立链表函数二级*/char i;struct Message *p1,*p2;clrscr();p1=p2=(struct Message*)malloc(sizeof (struct Message);if(p2!=NULL)gotoxy(1,1);printf(请输入XX:n);scanf(%s,&p2-name);printf(请输入ID:n);scanf(%d,&p2-ID);printf(请输入根本工资:n);scanf(%d,&p2-GZ);printf(请输入职位工资:n);scanf(%d,&p2-ZWGZ);printf(请输
16、入津贴:n);scanf(%d,&p2-JT);printf(请输入医疗保险:n);scanf(%d,&p2-YLBX);printf(请输入公积金:n);scanf(%d,&p2-GJJ);p2-Total=p2-GZ+p2-ZWGZ+p2-JT-p2-YLBX-p2-GJJ;printf(总工资为:%ldn,p2-Total);h=p2;p2-nextPrt=NULL; printf(输入s退出,输入其他键继续.n);i=getch();while(i!=s)p2=(struct Message*)malloc(sizeof (struct Message);if(p2!=NULL)pri
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中南 大学 语言程序设计 实验 职工工资 管理 系统 详细 操作 说明 注释
限制150内