




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PAGE 沈 阳 航 院 设 计 用 纸沈 阳 航 空空 工 业 学学 院 课程设设计学 号班 级 姓 名指导教师师 年月日沈阳航空空工业学学院课程设计计任务书书一、课程程设计题题目:工资管管理系统统二、课程程设计工工作自三、课程程设计内内容用C语言言编写软软件完成成以下任任务:1输入工工资数(职工数数据要有有职工号号.姓名名.所属属部门.工龄和和工资)保存在在paiid.ddat文文件中.2对现有有的职工工数据根根据所属属部门排排序,并并显示出出企业的的平均工工资.3职工涨涨工资(根据工工龄按比比例进行行工资调调整).4查询职职工的相相关数据据.四、课程程设计要要求:程序质量量:1贯彻结结构
2、化程程序设计计思想.2用户界界面友好好,功能能明确,操作方方便.可可以加以以其他功功能和修修饰.3用户界界面的菜菜单中包包含职职工信息息录入,排排序及显显示.工资资调整,信信息查询询.退出5项.所有职职工数据据的改变变都应该该在paaid.datt文件中中体现出出来.4代码应应适当缩缩进,并并给出必必要的注注释,以以增强程程序的可可读行.课程设计计说明书书:课程结束束后,上上交课程程设计说说明书(打打印稿和和电子稿稿),其其内容如如下:1封面2课程设设计任务务书3目录4需求分分析(分分析题目目的要求求)5程序流流程图(总总体流程程图和主主要功能能模块流流程图)6核心技技术的实实现说明明及相应应
3、程序段段7个人总总结8参考资资料9源程序序及适当当的注释释指导教师师:_ 学生生签名:_目录TOC o 1-3 h z HYPERLINK l _Toc170095930 一、需求求分析1 HYPERLINK l _Toc170095931 二、程序序流程图图2 HYPERLINK l _Toc170095932 三、核心心技术的的实现说说明及相相应程序序段5 HYPERLINK l _Toc170095933 四、个人人总结16 HYPERLINK l _Toc170095934 五、参考考文献177 HYPERLINK l _Toc170095935 六、源程程序118一、需求求分析经过对
4、程程序设计计题目的的分析可可知,整整个程序序的设计计实现大大致分为为五个模模块,其其中每一一个模块块对应一一个函数数,他们们的功能能分别是是:输入入职工数据据函数(shuuru),职工工排序函函数(soort_parrt),增加职职工工资资函数(addd_paaid),职工信信息的查查询函数数(seearcch_wworkker),以及及主函数数maiin().1、输入入职工数数据函数数 实现的的功能是是按照工工号对职工工的数据据输入并并保存在在paiid.ddat;2、职工工排序函函数 按照照题目的的具体要要求实现现的是按按职工部部门排序序并算出出平均工工资。3、增加加职工工工资函数数 允允
5、许职工工按照根据据工龄按按比例进进行工资资调整。4、职工工信息的的查询函函数 输输出paaid.datt文件中中的职工工的相关关数据。除上面介介绍的功功能之外外,程序序还具有有退出功功能,可可以在程程序的一一次运行行当中循循环执行行所有的的功能,并并根据需需要终止止程序的的执行。每一个职职工记录录都包含含职工号号.姓名名.所属属部门.工龄和和工资,在在程序当当中,将将职工记记录类型型定义为为结构体体类型,添添加以及及追加的的职工信信息直接接写入DD盘的paaid.datt文件中中,其他他函数每每次对职职工记录录的访问问,其数数据来源源都是ppaidd.daat文件件,这样样做不但但可以保保证职
6、工工数据的的一致性性,而且且可以对对职工数数据进行行永久保保存,保保证每次次运行程程序都可可以采用用原来的的数据。二、程序序流程图图1 主函函数 工资管理系统输入值n=1?真 假 输入值 n=2? 输 真 假 入 职 输入值n=3? 职 工 真 假 工 排 输入值n=4? 信 序 真 假 息 及 平 涨 查 均 工 询 工 资 职 退出 资 工 信息 2 录入入职工信信息函数数定义指针fp 整型数据i 结构体变量pp 字符串数组number50判断文件Paid.txt是否存在是 否创建文件paid.txt While循环 输入各项数据 将数据写入文件关闭文件3涨工资资函数 定义变量 打开文件N
7、o yesReturn 输入每年增加工资 假 While(!feof(fp) 真 调出文件中的工资数据Break 计算现在工资 输出职工信息 关闭文件4排序函函数定义变量 no 打开文件 yes 继续 假 while(!fof) 真 return 跳出循环 工资累加 Return 求平均工资For循环 (t=0;tall-1;t+ k=0; kppk+1.work.part假 真 将部门替换 break 将相应职工信息替换过来 输出职工信息 关闭文件5 查询询函数定义指针fp 整型数据j. 结构体变量pp 字符串数组number50判断文件Paid.txt是否存在是 否创建文件paid.txt
8、 While循环 输入各项数据 打印职工数据 关闭文件三、核心心技术的的实现说说明及相相应程序序段本程序主主要由四四个自定定义函数数和一个个主函数数组成,其其中主函函数以菜菜单的形形式调用用其他函函数来实实现要求求的所有有功能。在这些些函数当当中,输输入数据据函数、查询函数数、涨工工资函数数和排序序函数是是程序中中较为核核心的部部分,下下面分别别进行说说明:1 录入入职工信信息,职职工信息息包括职职工编号号,姓名名,部门门,工资资和工作作年龄,本本函数的的功能是是把职工工信息写写入到文文件中。在程序序中建立立一个文文件paaid.txtt.定义义一个结结构体变变量。输输入职工工的基本本信息把把
9、职工信信息写入入到文件件中。之之后再次次输入下下一个职职工的编编号,并并且判断断职工编编号是否否为 00 当不不为零时时,继续续输入职职工其它它信息,并且把把信息写写入到文文件中。直到输输入的职职工编号号为零退退出此函函数voidd shhuruu()/ 定定义文件件类型指指针 FILLE *fp; innt ii; /定定义结构构体变量量 ppp sttrucct PPaidd ppp; chhar nummer50; /打开文文件 iff(ffp=ffopeen(d:paaid.txtt,a+)=NUULL) ffp=ffopeen(d:paaid.txtt,w+); whhilee(st
10、trcmmp(ppp.wworkk_nuum,e)!=00) priintff(n请输输入职工工编号 :); sccanff(%s,pp.worrk_nnum ); priintff(n请输输入职工工姓名 :);sccanff(%s,pp.worrk_nnamee ); priintff(n请输输入职工工部门 :);sccanff(%s,pp.worrk_ppartt ); priintff(n请输输入职工工工资 :);sccanff(%d,&ppp.woork_paiid ); priintff(n请输输入职工工工龄 :);sccanff(%d,&ppp.woork_agee ); /把把员
11、工信信息写入入到文件件中 fprrinttf(ffp,%st%sst%stt%dt%ddn,ppp.woork_numm,ppp.woork_namme,ppp.wworkk_paart,pp.worrk_ppaidd,ppp.woork_agee); priintff(n退出出请输入入 en继续续请按任任意数字字n);sccanff(%s,pp.worrk_nnum); fcclosse(ffp);2 排序序函数的的功能是是对学生生信息进进行排序序,打开开文件ppaidd.txxt。定定义结构构体变量量数组,把把工人信信息读取取到结构构体数组组中,用用冒泡法法进行排排序并且且输出排排序结果果
12、,此函函数还有有计算平平均工资资的功能能。voidd soort_parrt() FIILE *fpp; innt ii,alll,ttempp_i,k,tt,suum=00; sttrucct PPaidd ppp110; chhar temmp_cch555; iff(ffp=ffopeen(d:paaid.txtt,r+)=NUULL) pprinntf(nn不能打打开文件件 paaid.txtt); rretuurn; i=0; / 判断文文件是否否结束 whiile(!feeof(fp) fsccanff(fpp,%stt%st%sst%dtt%dn,ppi.worrk_nnum ,
13、pppi.woork_namme,pppii.wworkk_paart,&pppi.woork_paiid,&ppi.worrk_aage); summ+=pppii.wworkk_paaid;i+; alll=ii; prrinttf(n%d个员员工的平平均工资资%lff,aall, (ffloaat)ssum/alll); prrinttf(n); fcclosse(ffp); foor(tt=0;taall-1;tt+) ffor(k=00;k00) sttrcppy(ttempp_chh,pppk.woork_numm ); sttrcppy(pppkk.wworkk_nuum,ppp
14、kk+1.woork_numm); sttrcppy(pppkk+1.woork_numm,teemp_ch); sttrcppy(ttempp_chh,pppk.woork_namme); sttrcppy(pppkk.wworkk_naame,ppk+11.wworkk_naame); sttrcppy(pppkk+1.woork_namme,ttempp_chh); sttrcppy(ttempp_chh,pppk.woork_parrt ); sttrcppy(pppkk.wworkk_paart,ppk+11.wworkk_paart); sttrcppy(pppkk+1.woork
15、_parrt,ttempp_chh);tempp_i = pppkk.wworkk_paaid;ppkk.wworkk_paaid = pppkk+1.woork_paiid; pppkk+1.woork_paiid = teemp_i;tempp_i = pppkk.wworkk_agge; ppk.worrk_aage = pppkk+1.woork_agee; pppkk+1.woork_agee = temmp_ii; fpp= ffopeen(d:paaid.txtt,w+); foor(ii=0;iaall;i+) ffpriintff(fpp,%stt%st%sst%dtt%dn
16、,ppi.worrk_nnum,ppi.worrk_nnamee,pppi.woork_parrt,pppii.wworkk_paaid,ppi.worrk_aage); pprinntf(%sst%stt%st%ddt%dnn,pppii.wworkk_nuum,pppii.wworkk_naame,ppi.worrk_ppartt,pppi.woork_paiid,pppii.wworkk_agge); fcclosse(ffp);3 增加加职工工工资,自自己设置置一个职职工工资资的增加加法则可可,读取取职工信信息并且且把职工工的工资资进行按按工龄增增加。最最后把职职工信息息全部写写入到文
17、文件中。关闭文文件voidd addd_ppaidd() FIILE *fpp; innt ii,j,gonngzii; sttrucct PPaidd ppp100; chhar nummberr500; prrinttf(n 请输入入职工每每年增加加的工资资 :); sccanff(%d,&goongzzi); iff(ffp=ffopeen(d:paaid.txtt,r+)=NUULL) pprinntf(nn不能打打开文件件 paaid.txtt); rretuurn; i=0; j=0; whhilee(!ffeoff(fpp) fsccanff(fpp,%stt%st%sst%dt
18、t%dn,ppj.worrk_nnum ,pppj.woork_namme,pppjj.wworkk_paart,&pppj.woork_paiid,&ppj.worrk_aage); ppj.worrk_ppaidd = ppj.worrk_ppaidd + ppj.worrk_aage * ggonggzi; j+; fcclosse(ffp); iff(ffp=ffopeen(d:paaid.txtt,w+)=NUULL) pprinntf(nn不能打打开文件件 paaid.txtt); rretuurn; foor(ii=0;ijj;i+) fprrinttf(ffp,%st%sst%
19、stt%dt%ddn,pppi.woork_numm,pppi.woork_namme,pppii.wworkk_paart,ppi.worrk_ppaidd,pppi.woork_agee); priintff(%stt%st%sst%dtt%dn,ppi.worrk_nnum,ppi.worrk_nnamee,pppi.woork_parrt,pppii.wworkk_paaid,ppi.worrk_aage); fcclosse(ffp);4 职职工信息息的查询询是通过过打开文文件paaid.txtt并且读读取文件件中的职职工信息息,并输出职职工信息息到屏幕幕上。当当文件结结束,关关闭文
20、件件,退出出函数voidd seearcch_wworkker() FIILE *fpp; innt jj; sttrucct PPaidd ppp100; chhar nummberr500; iff(ffp=ffopeen(d:paaid.txtt,r+)=NUULL) pprinntf(nn不能打打开文件件 paaid.txtt); rretuurn; j=00; whiile(!feeof(fp) fsccanff(fpp,%stt%st%sst%dtt%dn,ppj.worrk_nnum ,pppj.woork_namme,pppjj.wworkk_paart,&pppj.woork
21、_paiid,&ppj.worrk_aage);prinntf(%sst%stt%st%ddt%dnn,pppjj.wworkk_nuum ,ppj.worrk_nnamee,pppj.woork_parrt,pppjj.wworkk_paaid,ppj.worrk_aage); j+; if(00=jj) prrinttf(n数数据库中中没有员员工信息息); fcclosse(ffp);四、个人人总结计算机的的应用已已经越来来越普及及,进入入普通百百姓家庭庭。由于于计算机机的快速速发展,计计算机软软件的发发展也越越来越快快。在当当前流行行的计算算机软件件中,CC 语言言由于其其功能强强大,简
22、简单易懂懂,所以以我对用用C语言言编程充充满了爱爱好。当当做完程程序时对对自己的的小小成成绩感到到无比的的骄傲和和自豪。 通通过一个个学期的的C语言言学习,使使我基本本掌握了了C语言言的语法法,掌握握了面向向过程编编程的步步骤。这这次课程程设计在在课堂学学习C语言的的基础上上有了很很大的提提高。使使我更加加熟练地地掌握了了C语言言的调试试、编写写方法。总之我我觉得很很高兴能能用所学学解决实实际问题题。五、参考考文献1C高高级实用用程序设设计 作者:王士元元,清华华大学出出版社,119966,2 谭浩浩强CC程序设设计北北京:清清华大学学出版社社,200053 刘成成等CC语言程程序设计计实验指
23、指导与习习题集北京:中国铁铁道出版版社,220066六、源程程序/宏定定义#inccludde strringg.h#inccludde stddio.h#inccludde stddlibb.h/ 定义结结构体struuct Paiid chhar worrk_nnum50; chhar worrk_nnamee500; chhar worrk_ppartt500; innt worrk_ppaidd; innt worrk_aage;voidd shhuruu()/ 定定义文件件类型指指针 FIILE *fpp; innt ii; /定定义结构构体变量量 ppp sttrucct PPai
24、dd ppp; chhar nummer50; /打开文文件 iff(ffp=ffopeen(d:paaid.txtt,a+)=NUULL) ffp=ffopeen(d:paaid.txtt,w+); whhilee(sttrcmmp(ppp.wworkk_nuum,e)!=00) priintff(n请输输入职工工编号 :); sccanff(%s,pp.worrk_nnum ); priintff(n请输输入职工工姓名 :);sccanff(%s,pp.worrk_nnamee ); priintff(n请输输入职工工部门 :);sccanff(%s,pp.worrk_ppartt );
25、priintff(n请输输入职工工工资 :);sccanff(%d,&ppp.woork_paiid ); priintff(n请输输入职工工工龄 :);sccanff(%d,&ppp.woork_agee ); /把把员工信信息写入入到文件件中 fprrinttf(ffp,%st%sst%stt%dt%ddn,ppp.woork_numm,ppp.woork_namme,ppp.wworkk_paart,pp.worrk_ppaidd,ppp.woork_agee); priintff(n退出出请输入入 en继续续请按任任意数字字n);sccanff(%s,pp.worrk_nnum); f
26、cclosse(ffp);voidd soort_parrt() FIILE *fpp; innt ii,alll,ttempp_i,k,tt,suum=00; sttrucct PPaidd ppp110; chhar temmp_cch555; iff(ffp=ffopeen(d:paaid.txtt,r+)=NUULL) pprinntf(nn不能打打开文件件 paaid.txtt); rretuurn; i=0; / 判断文文件是否否结束 whhilee(!ffeoff(fpp) fsccanff(fpp,%stt%st%sst%dtt%dn,ppi.worrk_nnum ,pppi.
27、woork_namme,pppii.wworkk_paart,&pppi.woork_paiid,&ppi.worrk_aage); summ+=pppii.wworkk_paaid;i+; alll=ii; prrinttf(n%d个员员工的平平均工资资%lff,aall, (ffloaat)ssum/alll); prrinttf(n); fcclosse(ffp); foor(tt=0;taall-1;tt+) ffor(k=00;k00) sttrcppy(ttempp_chh,pppk.woork_numm ); sttrcppy(pppkk.wworkk_nuum,pppkk+1.
28、woork_numm); sttrcppy(pppkk+1.woork_numm,teemp_ch); sttrcppy(ttempp_chh,pppk.woork_namme); sttrcppy(pppkk.wworkk_naame,ppk+11.wworkk_naame); sttrcppy(pppkk+1.woork_namme,ttempp_chh); sttrcppy(ttempp_chh,pppk.woork_parrt ); sttrcppy(pppkk.wworkk_paart,ppk+11.wworkk_paart); sttrcppy(pppkk+1.woork_parr
29、t,ttempp_chh); ttempp_i = pppkk.wworkk_paaid;pppkk.wworkk_paaid = pppkk+1.woork_paiid; pppkk+1.woork_paiid = teemp_i; ttempp_i = pppkk.wworkk_agge; ppk.worrk_aage = pppkk+1.woork_agee; pppkk+1.woork_agee = temmp_ii; fp= foppen(d:ppaidd.txxt,w+); foor(ii=0;iaall;i+) ffpriintff(fpp,%stt%st%sst%dtt%dn,
30、ppi.worrk_nnum,ppi.worrk_nnamee,pppi.woork_parrt,pppii.wworkk_paaid,ppi.worrk_aage); pprinntf(%sst%stt%st%ddt%dnn,pppii.wworkk_nuum,pppii.wworkk_naame,ppi.worrk_ppartt,pppi.woork_paiid,pppii.wworkk_agge); fcclosse(ffp);voidd addd_ppaidd() FIILE *fpp; innt ii,j,gonngzii; sttrucct PPaidd ppp100; chhar
31、 nummberr500; prrinttf(n 请输入入职工每每年增加加的工资资 :); sccanff(%d,&goongzzi); iff(ffp=ffopeen(d:paaid.txtt,r+)=NUULL) pprinntf(nn不能打打开文件件 paaid.txtt); rretuurn; i=0; j=0; whhilee(!ffeoff(fpp) fsccanff(fpp,%stt%st%sst%dtt%dn,ppj.worrk_nnum ,pppj.woork_namme,pppjj.wworkk_paart,&pppj.woork_paiid,&ppj.worrk_aage); ppj.worrk_ppaidd = ppj.worrk_ppaidd + ppj.worrk_aage * ggonggzi; j+; fcclosse(ffp); iff(ffp=ffopeen(d:paaid.txtt,w+)=NUULL) pprinntf(nn不能打打开文件件 paaid.txtt); rretuurn; foor(ii=0;ijj;i+) fprrinttf(ffp,%st%sst%stt%dt%ddn,pppi.woork_numm,pppi.woork_namme,pppii.wworkk_paart,ppi.worrk_ppaidd,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2030年中国血样冷却器行业市场深度分析及发展趋势预测报告
- 中国服装面料行业市场发展现状及前景趋势与投资分析研究报告(2024-2030)
- 2025年中国空气压力开关行业市场前景预测及投资价值评估分析报告
- 中国时尚手表行业市场发展前景及发展趋势与投资战略研究报告(2024-2030)
- 2025年中国混凝土机械行业市场全景评估及发展战略规划报告
- 2025年中国移动支付市场行情动态分析及发展前景趋势预测报告
- 2025年中国红干椒行业市场深度研究及投资规划建议报告
- 2025年中国自升式塔吊行业市场规模及未来投资方向研究报告
- 工业污水处理设施可行性研究报告
- 工程项目的风险管理框架
- 2025年事业单位公开招聘考试(D类)《职业能力倾向测验》新版真题卷(附详细解析)
- 2025《中华人民共和国监察法实施条例》专题课件
- 国家教育事业发展“十五五”规划纲要
- T/CAS 612-2022碳中和管理体系要求
- 香囊课件小学生
- 2024婚姻家事法律服务业白皮书
- 二氧化硅材料制备与性能表征技术研究
- 学校内部控制培训
- 2025年外贸业务员考试试题及答案
- 2025年中国等静压机市场调查研究报告
- 2025年出版:全球市场多参数水质探测传感器总体规模、主要生产商、主要地区、产品和应用细分调研报告
评论
0/150
提交评论