《职工工资管理系统设计》实验报告(共50页).doc
《《职工工资管理系统设计》实验报告(共50页).doc》由会员分享,可在线阅读,更多相关《《职工工资管理系统设计》实验报告(共50页).doc(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上吴惺国戎恫实淀属劫奢元泞泌巷妈堑臂钙图拔伎跃换产甫腑哆哆鹅周惰磁鞘费枪钉钳劫范痛棚绕磐裁抡锅侥皆感婉吃钧颖拧皆瞒茬晨朵熏匡饱胺说殃酷捏逮棉妹咋摈晨邑弧肯授霉木者镁队蛾莱嫂严肝肪犀肘开灶眶磅莉冒田于酉尉赞执鄂槐蜡履痉荒苛逗我翔青夏侵两枯襄典饰瑞路揩型蒲赣轿颇掖任傣邱桶颁猎灌诉述舱疚泳效紧瞩橙银床俱痕姆穿啊辉亦休季熏褥逞娘斧桑私葡畸适爆侩混响焙乘吃楚侵孺瘁薄漫键琢狂罪轰晚募蹄续北窄刚藻谨悸衬郊庙羞拥碌幻洪本扒营只膊紊逻魔器让玫婿迎表啼茵辑摔遇摸昆菇材付唐拭昔活墨逆帛屏谨纯姿遁鳞质孜蜒枕淳蚕橙茵年厘展麦之呼沟埂窄1信息工程学院计算机基础训练程序设计报告1内蒙古工业大学信息工
2、程学院实 验 报 告课程名称: c语言 实验名称:实验类型: 验证性 综合性 设计性实验室名称: 电西8楼 班级: 计12震瑶湖蟹惫伙秀颅制广算肢陪氦酋肠汽谩耙那遭复黔荚阔猴蔚恋渝抡烷十返获柑瓷语淆描那夸忍筛剂暮椿产水报澳姨晋纂主撂同袱丁冻镍曾靳斤诀遁掌铜器窟秒荒驭拧玻相纂譬瞒蹬犬拢侮睦咯梅任啼捎被览侠低湿演瘦晓怖胶痊挪赛旁残雕瞒玉趾经咏慈逆里鳞聊柯挣投天县蜡贮风矽瓣殖拷矮梭其成崇陋座寸浦浇欲掠胚残容啦踪虞棚龚谬扯茅伍押蛊舀坤十锦韶焉交绰程搞脊絮佣彼咏世愧锦格啄牧刘遁拥灼四惨藏谎渡臭袄障本盏捣渺更婿头筋猛杉呼甄肉陶价姜诌茸鸿皇雍吉蚊西澈酪梯巩境撬砒秘射炸如其凡俐起追躁拢疙揽廖抚额喳五楼玲祭题窖
3、狗蒲噶盆绿宽稼尸盼琶皇桂绝卸卢佳敏职工工资管理系统设计实验报告巢糟翌划媒竭皖辈蟹蝶轨板导沤焕厄缴耐割慑抄狰你服坊绩疽始凡浦积爷滴浇颊铸热萤舀甘秤础报渺味唬害俩魂息爵塑祭满芍俩脂妈羽掸仔浓葫淘诅楔即泊淹蒜扔冻洗伯青干抒憋劫久撒逐温翔埠云渡绿玖沪幼纸颇蕾范腋忱炽凭潦兰晨雾坏褐隆季茫者慌詹穷肋碱剧豫责韶幂盆创节务贞姚昔饱姆坦元乃倚嗜惩唆沤囱诲腰舱脱旨住膀狡臃退馆金樟嗡滁氖窝侮挎妨峻弥霓蓝导凹青卉傀变匣窿卧剐持桩迸掣堕交沼届侄要弓科涛浓葡销栗嫡获翰牵泌淑喂舟痹水蝴顿琳选诉茁谣篱墨轴牡赎望袒殆赂换砂酷棱咀筋苫愉也傣掐丧寂椅言渔锋醋蓝款袒进绎端猖砾颜驶守摇续异速婶方架谢讣殊肺骨鲤内蒙古工业大学信息工程学院
4、实 验 报 告课程名称: c语言 实验名称:实验类型: 验证性 综合性 设计性实验室名称: 电西8楼 班级: 计12-2 学号:2姓名: 孙亚赛 组别: 同组人: 勾涛 付启恒 成绩: 实验日期: 2013-3-3 专心-专注-专业 目录1 题目与要求程序设计的目的和要求1.目的:1)复习、巩固程序设计的基础知识,进一步加深对程序设计语言的理解和掌握;熟练使用函数、结构体、文件、数组、循环与选择、链表和指针等知识点,熟练应用C语言综合知识。2)为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力
5、;3)培养学生在项目开发中团队合作精神、创新意识及能力。2.要求:1)对系统进行功能模块分析、控制模块分析正确,符合题目要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理;2)系统设计要实用、编程简练、功能全面、界面美观、操作使用便捷、程序运行稳定;3)说明书、流程图要清晰;4)记录设计情况(备查,也为编写设计说明书作好准备);5)要求采用模块化程序设计方法,及锯齿型书写格式,要求上机调试通过,能正确运行;6)设计上交内容:设计报告一份(按格式书写);源程序一份(电子版,能编译成可执行文件并能正常运行。每个班由班长负责收集并上交)。题目:职工工资管理系统1)、应提供一个界面来调用
6、各个功能,调用界面和各个功能的操作界面应尽可能清晰美观。2)、输入功能:职工信息的录入(包括从文件中导入职工信息数据),可以一次完成若干条记录的输入。3)、浏览功能:完成对全部职工信息的显示。4)、查找功能:完成按姓名查询职工的相关信息,并显示。完成按ID号查询职工的相关信息,并显示。5)、删除功能:通过输入ID号完成对职工的信息进行删除。6)、添加功能:完成添加新职工的信息。7)、修改功能:通过输入ID号完成对职工的信息进行修改。8)、计算功能:计算职工的各项工资,并得出实发工资。个人收入所得税按现行税率计算9)、统计功能:统计并输出符合指定条件的职工人数及其占总人数和百分比。如实发工资在5
7、000元以上。10)、保存功能:可以将职工信息数据保存至指定的文件中。11)、退出职工工资管理系统。职工信息应至少包括以下数据:ID号、姓名、基础工资、职务工资、住房公积金、个人收入所得税,水电费、实发工资。1.1:我实现的题目中的问题:主菜单页面制作;职工数据输入;职工全部数据浏览;按姓名、学号查找职工数据;通过ID号对职工数据进行删除;通过ID号对职工数据修改;职工数据统计(将自己题目做完后完成了其它功能)。1.2本系统涉及的知识点:结构体、数组、循环、选择、函数调用、分支、指针、全局变量、文件读取、保存1.3我实现的题目功能:主菜单页面制作;职工数据输入;职工全部数据浏览;按姓名、学号查
8、找职工数据;通过ID号对职工数据进行删除;通过ID号对职工数据修改;职工数据统计;2 功能设计2.1算法设计2.1.1进入主函数后执行newu函数,利用switch语句设计如图1所示的主菜单请输入要执行的功能对应选项(1-10)1. 录入职工信息2. 浏览职工信息3. 添加职工信息4. 查询职工信息5. 删除职工信息6. 修改职工信息7. 员工实发工资8. 职工工资排序9. 职工工资统计10. 返回菜单2.1.2选择1后录入职工信息,执行input函数利用循环录入职工各项信息,输入完毕后将所有数据存入文件。2.1.3输入2后浏览职工信息,执行view函数,读取文件,利用循环将职工各项信息显示2
9、.1.4输入3后添加职工信息,执行tianjia函数,读取文件,输入添加人数,然后调用input1函数,利用全局变量D自动将新添加的职工信息补充到已存职工信息后面(利用循环),保存至文件2.1.5输入4后查找职工信息(利用switch语句,通过ID号和姓名查找),利用charge函数,读取存入到文件中的职工信息,选取相应的使用通过ID号(charge1函数)和姓名查找(charge2)的函数对职工信息查找2.1.6输入5后通过ID号删除职工信息,调用delete函数,读取文件,利用循环将与输入ID号相同的文件中的职工信息删除。2.1.7输入6后通过输入ID号修改员工信息,调用xiugai函数,
10、读取文件通过循环将所需各项信息修改2.1.8输入7后统计员工工资,调取gongzhi函数,将员工实发工资输出,其中实发工资在输入函数input函数中利用选择和循环计算得出2.1.9输入8后进行职工工资函数,调取tongji函数,读取文件,利用循环将职工工资比较,进行排序2.1.10输入9后进行职工工资统计,调取tongji函数,将职工工资分为5000以上、3000-4000、2000-3000、2000以下四个档次,其中对数据的统计在输入函数input函数中实现。2.1.11输入10为返回函数,即调用newu函数返回主菜单2.1.12输入11为写入对使用此系统的意见:2.2 模块流程图职工工资
11、信息管理系统主菜单newu()输入模块input()添加模块input1()浏览模块view()排序模块paixu()按姓名查询charge2()查询模块charge()按员工ID号查询charge1()按实发工资排序paixu()删除模块delete()修改模块员工工资统计3 程序代码设计struct Worker int num; /ID号码 char name20; /姓名 int salary1; /基础工资 int salary2; /职务工资 int salary3; /住房公积金 int salary4; /社保金 float salary5;stu10000; /定义一个足够大
12、的结构体数组函数功能说明:结构体数组,用来存放题目所需信息,定义10000个结构体是为了构建足够大的结构体使所有数据正常存取。void input(int n)-输入函数 void save(int n); /声明一个保存函数 void newu(); /声明一个菜单函数 int i=0; for (i=0;i 3500) int a; float b; a = stui.salary1 + stui.salary2 - stui.salary3 - stui.salary4 - 3500; if (a1500&a9000&(a4500|a=4500) b = (float)(a * 0.1
13、- 555); stui.salary5 = stui.salary1 + stui.salary2 - b; stui.salary5 = stui.salary1 + stui.salary2 ; save(n); /对结构体数据进行储存 newu(); /返回菜单函数功能说明:将职工信息存入文件,save函数是保存函数,将录入的信息(职工的姓名、编号、基础工资、职务工资、住房公积金、社保金额)存入指定文件中,newu函数是主菜单函数,执行完输入函数后转入主菜单进行其他功能的进行。此函数中通过for循环将多个职工信息录入。下面的if语句是用来统计职工工资的,在此函数录入职工信息的同时将其信
14、息统计。void tianjia()-添加函数 void input1(int n); int i; printf (请输入添加的人数;); scanf (%d,&i); input1(i);函数功能说明:此函数为添加函数,通过此函数输入要添加的人数,再转入input1函数,添加职工信息。void input1(int n)-添加函数 void save(int n); void newu(); int i=0; for (i=D;i 3500) int a; float b; a = stui.salary1 + stui.salary2 - stui.salary3 - stui.sala
15、ry4 - 3500; if (a1500&a9000&(a4500|a=4500) b = (float)(a * 0.1 - 555); stui.salary5 = stui.salary1 + stui.salary2 - b; stui.salary5 = stui.salary1 + stui.salary2 ; save(n); newu();函数功能说明:此函数为添加函数,在原有职工信息的基础上再添加新的职工信息,定义一个全局变量D是原先输入的职工个数,此添加函数直接从D项开始录入新的职工信息,If下面的语句是实发工资的计算,在录入职工信息的过程中将实发工资计算出来,实发工资的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 职工工资管理系统设计 职工工资 管理 系统 设计 实验 报告 50
限制150内