工资管理系统实验任务书.doc_第1页
工资管理系统实验任务书.doc_第2页
工资管理系统实验任务书.doc_第3页
工资管理系统实验任务书.doc_第4页
工资管理系统实验任务书.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高级程序语言课程设计实验项目名称: 工资管理系统 学 院:通信与信息工程学院班 级:电子信息科学与技术 1101 班姓 名: 孙越学 号: 1107080107一、实验名称 工资管理系统二、实验目的了解管理信息系统的开发流程,熟悉C语言的文件和结构数组的各种基本操作。程序涉及结构体、数组、文件等方面知识,掌握利用数组存储结构实现工资管理的原理,为进一步开发出高质量的信息管理系统打下基础。三、实验内容工资管理系统主要实现以下几种功能:1、输入记录功能模块:完成将工资数据存入数组中的工作。2、查询记录功能模块:完成在数组中查找满足相关条件的工资数据记录,并显示。3、更新记录功能模块。完成对工资数据记录的修改、删除、插入和排序操作。4、统计记录功能模块。完成对公司员工的工资在各等级的人数统计。5、输出记录功能模块。实现对工资数据记录的存盘操作。实现将数组中存储的工资数据记录信息以表格的形式在屏幕上打印出来。6、提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观。三、实验要求1、 对实验程序进行分析,完成主程序及每个子程序功能说明、参数说明和流程图。例如:函数: void Modify(ZGGZ tp, int n)输入参数:ZGGZ tp 参数概念:职工数据结构数组int n 参数概念:第n条记录输出参数: 无返回参数 函数功能: 完成在数组tp中修改职工工资记录的功能。在修改记录操作中,系统会先按用户输入的职工编号查找到该记录,然后提示用户修改职工编号之外的值,但职工编号不能修改。函数流程图:2、编写补充完成部分不全程序代码,调试程序使其能正确运行(1)/* 删除记录:先找到保存该记录的数组元素的下标值,然后在数组中删除该数组元素*/int Del(ZGGZ tp,int n)int sel;char findmess20;int p=0,i=0;if(nNo employee record!n); getchar(); return n;system(cls);Disp(tp,n);printf(n =1 Delete by number =2 Delete by namen);printf( please choice1,2:);scanf(%d,&sel);if(sel=1) stringinput(findmess,10,input the existing employee number:); p=Locate(tp,n,findmess,num); getchar(); if(p!=-1) for(i=p+1;idelete success!n); n-; getchar(); saveflag=1; else Nofind(); getchar(); else if(sel=2) /*先按姓名查询到该记录所在的数组元素的下标值*/ stringinput(findmess,15,input the existing employee name:); p=Locate(tp,n,findmess,name); getchar(); if(p!=-1) for(i=p+1;idelete success!n); n-; getchar(); saveflag=1; else Nofind(); getchar(); return n;/ 补充完成以下程序代码(2)/* 统计公司的员工的工资在各等级的人数*/void Tongji(ZGGZ tp,int n)int count10000=0,count5000=0,count2000=0,count0=0;int i=0;if(nNot employee record!n); getchar(); return ;system(cls);Disp(tp,n);i=0;while(i=10000) count10000+;i=i+1;continue; /*实发工资10000*/ if(tpi.sfgz=5000) count5000+;i=i+1;continue; /*5000=实发工资=2000) count2000+;i=i+1;continue; /*2000=实发工资5000*/ if(tpi.sfgz2000) count0+;i=i+1;continue; /*实发工资= 10000:%d (ren)n,count10000);printf(5000=sfgz10000:%d (ren)n,count5000);printf(2000=sfgz 5000:%d (ren)n,count2000);printf(sfgz 2000:%d (ren)n,count0);printf(-n);printf(nnpress any key to return);getchar();/*利用冒泡排序法实现数组的按实发工资字段的降序排序,从高到低*/void Sort(ZGGZ tp,int n)int i=0,j=0,flag=0;ZGGZ newinfo;if(nNot employee record!n); getchar(); return ;system(cls);Disp(tp,n); /*显示排序前的所有记录*/for(i=0;in;i+) flag=0; for(j=0;jn-1;j+) if(tpj.sfgzsort complete!n);/ 补充完成以下程序代码(3)/*数据存盘,若用户没有专门进行此操作且对数据有修改,在退出系统时, 会提示用户存盘*/void Save(ZGGZ tp,int n)FILE* fp;int i=0;fp=fopen(c:zggz,wb);/*以只写方式打开二进制文件*/if(fp=NULL) /*打开文件失败*/ printf(n=open file error!n); getchar(); return ;for(i=0;i0) getchar(); printf(nn=save file complete,total saveds record number is:%dn,i); getchar(); s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论