完整c语言工资管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include
#include
#include
#include
#include
#define LEN sizeof(wor)
struct worker
{
long kahao;/*员工工资卡号*/
char name[10];/*员工姓名*/
int month;//月份
float yfgz;/*应发工资*/
float sf;/*水费*/
float df;/*电费*/
float sj;/*税金*/
float sfgz;/*实发工资*/
struct worker *next;
};
typedef struct worker wor;
int num;
void userId();//用户登录函数
char menu(void);//主菜单
wor *read(wor *head);//加载函数
int save(wor *head);//保存函数
void inputMenu(wor *head);//输入菜单
void input(wor **head);//输入员工信息
void searchMenu(wor *head);//查询菜单
int numSearch(wor *pNew);//卡号查询方式函数
int nameSearch(wor *pNew);//姓名查询方式函数
void search(wor *head);//查询功能
void deleteSal(wor *head);//删除员工信息
wor *deleteNode(wor *head, long nodeNum);//找到删除节点
void printSal(wor *head);//打印员工信息
void totalSalMenu(wor *head);//统计工资菜单
void totalSal(wor *head);/*统计员工某时间段的实发工资总和*/
void DeleteMemory(wor *head);//删除内存
void order(wor *head);//排序浏览函数
char menu1(void);//排序浏览菜单
void modify(wor *head);//修改函数,修改完后保存信息
void modifyNode(wor *head);//查找节点并修改信息
/*==================================================================== ==========================*/
int main()/*主函数main,功能:通过调用各函数,实现员工工资信息管理系统的功能*/ {
char ch;
wor *head=NULL;
system("color f2");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("#〓§〓〓〓〓〓§〓〓〓〓〓〓§〓〓〓〓〓〓§〓〓〓〓〓〓§〓〓〓〓〓〓§〓#\n");
printf("↓↓↓↓↓↓\n");
printf("☆★☆☆★☆☆★☆☆★☆☆★☆☆★☆\n");
printf("☆欢☆☆迎☆☆进☆☆入☆☆系☆☆统☆\n");
printf("☆★☆☆★☆☆★☆☆★☆☆★☆☆★☆\n");
printf("↓↓↓↓↓↓\n");
printf("※※※※※※\n");
printf("※※※※※※\n");
getchar();
userId();
system("cls");
while(1)
{
ch=menu();
switch(ch)/*用switch语句实现功能选择*/
{
case '1':
head=read(head);
inputMenu(head);
break;/*调用创建链表函数,添加员工工资信息,并保存到文件夹中*/ case '2':
head=read(head);
searchMenu(head);
break;/*调用信息查询函数,查询员工工资信息*/
case '3':
head=read(head);
deleteSal(head);
break;/*调用删除信息函数,删除员工工资信息*/
case '4':
head=read(head);
printSal(head);
break;/*调用显示信息资料函数*/
case '5':
head=read(head);
totalSalMenu(head);
break;/*统计某时间段员工工资信息*/
case '6':
head=read(head);
order(head);
break;/*按照卡号对员工进行排序浏览*/
case '7':
head=read(head);
modify(head);
break;//修改员工工资信息
case '0':
system("cls");
printf("\n\n\n\n\n");
printf("\t\t#〓§〓〓〓〓〓§〓〓〓〓〓〓§〓〓〓〓〓〓§〓#\n");
printf("\t\t↓↓↓↓\n");
printf("\t\t☆★☆☆★☆☆★☆☆★☆\n");
printf("\t\t☆感☆☆谢☆☆使☆☆用☆\n");
printf("\t\t☆★☆☆★☆☆★☆☆★☆\n");
printf("\t\t↓↓↓↓\n");
printf("\t\t※※※※\n");
printf("\t\t※※※※\n");
printf("\n\n\n\n\n");
printf("\t\t\t\t\t\t\t\t12 软件1班\n");
printf("\t\t\t\t\t\t\t\t 蔡文豪\n");
printf("\t\t\t\t\t\t\t\t201241404120\n\n\n");
getchar();
exit(0);/*退出系统,返回主界面*/
DeleteMemory(head); /*释放所有已分配的内存*/
printf("End of program!");
break;
default:
printf("输入错误,请重试!\n");
}
save(head);
}