ImageVerifierCode 换一换
格式:DOC , 页数:16 ,大小:93.54KB ,
资源ID:4130442      下载积分:8 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4130442.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(工资管理系统C++编程实验报告.doc)为本站上传会员【精***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

工资管理系统C++编程实验报告.doc

1、— 《C++程序设计》课程综合实习 实习题目: 工资管理系统 系 别: 计算机系 ___ 专业: 计算机与科学 班级: 姓 名: 学号: 指导教师: 日 期: 2015年12月27日_ 目录 一、课程实习的题目、任务与要求2 1。课程实习的题目2 2.课程实习内容2 3.课程实习的要求2 二、系统分析2 1.需求分析2 2。系统性能要求3 3。系统的功能分析3 4.系统功能模块3 5。模块框架图3 三、系统设计与实现4 1。界面设计4 2。功能设计与实现4 四、运行及测试结果5 五、总结5 六

2、参考资料5 附录:源程序6 一、课程实习的题目、任务与要求 1.课程实习的题目 工资管理系统 2。课程实习内容 (1)存储的数据包括:员工号,姓名,基本工资,补贴金额,奖励金额,扣除金额、实发工资等)。实发工资=基本工资+补贴金额+奖励金额-扣除金额。 (2)按职工号增加、删除、修改记录功能; (3)查询功能,包括按姓名、职工号查询; (4)排序功能,按指定的关键字(如职工号、姓名、实发工资)排序。 3.课程实习的要求 根据C++课程所学的概念、理论和方法,按照C++程序设计的基本步骤,设计出一个适当规模的程序来实现设计课程内容中的全部功能;设计主控模块程序,对给出的程

3、序源代码要给出各部分的详细注释.自己根据能力及需要添加相应功能模块,增强模拟系统功能。包括系统的功能分析、系统的功能模块设计、程序流程图或结构框图、逻辑结构设计等。 二、系统分析 1.需求分析 a。能对员工工资信息进行录入。 b.能对员工工资信息进行增加。 c.能对员工工资进行删除。 d。能对员工工资进行修改. e.能对员工按实发工资,姓名,进行查询. f.能输出员工工资的所有数据。 g。能对员工工资信息按实发工资、员工号进行排序。 2。系统性能要求 a。系统安全、可靠; b。功能齐全; c。操作方便、界面友好; d易于维护和扩充。 3。系统的功能分析 资料维护

4、系统维护包括对员工工资信息的录入操作及数据表中的信息进行浏览. 系统功能:可以对数据表中的信息进行浏览。 系统查询:可以对员工工资信息进行查询. 4.系统功能模块 员工查询系统有:工资信息录入、增加、删除、修改,数据查询,排序显示构成。 5.模块框架图 工资管理系统 操作 查询 排序 退出 录入 增加 删除 修改 实发工资 姓名 按实发工资排序 按员工好排序 输出所有学生的成绩 三、系统设计与实现 1。界面设计 程序运行后会出现一个简捷的窗口,便于用户查询数据。通过cout语句排列而成. 2.功能设计与实现 应用系统主控界面主要包括三大模块

5、记录编辑、记录查询、排序。 (一) 记录编辑 (1)数据录入 数据录入是通过cin输入数据,然后用文件“工资表.txt"来作以储存。 (2)增加员工数据 增加员工数据是通过cin输入数据,然后用文件“工资表。txt"来作以储存。 (3)删除员工数据 删除员工数据是通过cin语句输入要删除的员工信息,然后使用if语句在“工作表1.txt”中寻找名字判断是否相等,最后在文件中删除。 (4)修改员工数据 修改员工数据是通过cin语句输入要修改的员工信息,然后使用if语句在“工作表1。txt”中寻找名字判断是否相等,再使用cin输入修改的信息,最后储存在文件中.如果寻找不到则输出“

6、对不起,您要修改的学生不存在!请查证后输入!”。 (二) 查询 (1)按员工实发工资查询 通过输入员工实发工资,在for循环语句中用if语句在“工作表1.txt”中寻找实发工资是否与输入的实发工资相等,如果相等就输出该员工信息,如果寻找不到就输出“对不起!您要查询的员工不存在!"。 (2)按员工姓名查询 通过输入员工姓名,在for循环语句中用if语句在“工作表1。txt”中寻找姓名是否与输入的员工姓名相等,如果相等就输出该员工的信息,如果寻找不到就输出“对不起!您要查询的员工不存在!”. (3)浏览所有员工工资信息 直接输出“工作表1。txt"中的数据。 (三) 排序 (1)

7、按实发工资排序 先让实发工资数组赋给a[100],再通过双重for语句依次将a[n]小的调到前面,排序完后再通过双重for循环输出排序后的相关信息。 (2)按员工号排序 先让员工号数组赋给a[100],再通过双重for语句依次将a[n]小的调到前面,排序完后再通过双重for循环输出排序后的相关信息。 在每个case中都有一个判断是否继续运行次case和一个是否进行其他操作。在case4/5/6/8/9开头都有一个判断语句,判断系统中是否有数据,没有数据则结束此case,有则继续执行下一条语句. 四、运行及测试结果 每一个case都能执行,但是有些的地方还都不够完善,例如:删除数据中

8、本来没有该员工信息,它也依然显示删除成功. 五、总结 此次C++程序设计课程综合实习,让我们学会了如何用C++编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试.程序实现上,设计了简单的查询界面,将各个功能集中出来按照程序编写原则,便于查询。 根据C++课程所学的概念、理论和方法,按照C++程序设计的基本步骤,设计出一个适当规模的程序;进一步加深对C++语言的理解和掌握。理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力.我们编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我们在编程,就必须不

9、断改进,才能更好提高编程能力. 六、参考资料 龚静 李娟芳。C++语言程序设计。西安:西北工业大学出版社,2013。 附录:源程序 #include〈iostream〉 #include #include〈string〉 #include usingnamespace std; class Money { string name; float Wage,Subsidy,Reward,Deduct,SumWage; int number; public: Money(){}; Mone

10、y(int num,string n,float W,float S,float R,float D); float getSumWage();//实发工资 friendvoid main(); }; Money::Money(int num, string n, float W, float S, float R, float D) { number=num; name=n; Wage=W;//基本工资 Subsidy=S;//补贴工资 Reward=R;//奖励工资 Deduct=D;//扣除工资 } float Money::getSumWage()

11、 { SumWage=Wage+Subsidy+Reward—Deduct; return SumWage; } void main() { system("color 0a”); cout〈<”*******************************************************************************"〈〈endl; cout<〈”*******************************************************************************”<

12、〈<”*******************************************************************************”〈〈endl; cout〈〈”*******███████***-—-—-欢迎来到工资管理系统-——————-***█████████*”<

13、——-——--——***********█*********”〈

14、〈〈endl; cout〈〈”***█*******************——--—(4)修改员工数据—--————-—————***********█*********”<

15、**********—---—(6)按姓名查询——————-—---———-***********█*********”<〈endl; cout<〈”***█*******************——-——(7)浏览所有学生的数据-—-—-——***********█*********”〈〈endl; cout〈〈”***█*******************—排序:——-——--—-—————-——-—-——————***********█*********”<〈endl; cout<〈”*****█*****************-----(8)按实发工资排序—-———-—

16、————*****█****█*********”〈

17、〈endl; cout<〈”*******************************************************************************”〈p; if(p〉=0&&p〈=9

18、 { chris1=1; } else { cout〈〈"输入指令无效!请重新输入:”〈〈endl; } }while(chris1==0); do { switch(p) { case 1://录入员工数据 { char c;//用于判断是否 int number; string name; float Wage,Subsidy,Reward,Deduct,SumWage; do { cout<<”请输入员工号:”; cin〉〉number;

19、 cout<<”请输入员工姓名:”; cin>〉name; cout〈〈"请输入员工基本工资:”; cin〉〉Wage; cout〈〈”请输入员工补贴工资:"; cin>〉Subsidy; cout<〈”请输入员工奖励工资:"; cin〉〉Reward; cout〈〈”请输入员工扣除工资:”; cin>〉Deduct; SumWage=Wage+Subsidy+Reward-Deduct; fstream outf

20、ile,infile; outfile。open("工资表.txt”,ios::out|ios::app);//用于显示录入的数据 if(!file) { cout<<”工资表。txt can not open.\n"; return; } outfile〈〈”员工号:”〈

21、e〈

22、umber,name,Wage,Subsidy,Reward,Deduct); i++; cout<〈"员工数据录入成功,想继续录入吗?(y/n)”〈c; chris1=0; do { if(c!='y’&&c!='n') { cout<〈"输入的指令无效!请重新输入!”〈c; } else { chris1=1; }

23、 }while(chris1==0); }while(c==’y'); break; } case 2://增加员工工资信息 { char c;//用于判断是否 int number; string name; float Wage,Subsidy,Reward,Deduct,SumWage; do { cout〈〈"请输入增加的员工号:"; cin〉>number; cout<<”请输入增加的员工姓名:”; cin〉〉name; cout

24、〈〈”请输入增加的员工基本工资:”; cin〉>Wage; cout<〈”请输入增加的员工补贴工资:"; cin〉〉Subsidy; cout<<”请输入增加的员工奖励工资:"; cin〉〉Reward; cout〈〈”请输入增加的员工扣除工资:"; cin>〉Deduct; SumWage=Wage+Subsidy+Reward—Deduct; fstream outfile,infile; outfile。

25、open("工资表.txt”,ios::out|ios::app); if(!file) { cout<<"工资表.txt can not open。\n”; return; } outfile〈<”员工号:”〈〈number〈〈” 姓名:”<〈name<〈endl<〈”基本工资:"〈〈Wage〈<" 补贴工资:"〈〈Subsidy〈〈” 奖励工资:"〈〈Reward〈<” 扣除工资:"<〈Deduct〈<" 实发工资:”<

26、 outfile。close(); infile。open("工资表。txt”,ios::in); if(!file) { cout〈<"工资表.txt can not open。\n”; return; } char h; while(infile。get(h)) { cout〈〈h; } cout<

27、l; infile。close(); j++; s[i]=new Money(number,name,Wage,Subsidy,Reward,Deduct); i++; cout〈〈"员工数据增加成功,想继续录入吗(y/n)”<>c; if(c!='y'&&c!='n’)

28、 { cout<〈”输入的指令无效!请重新输入!”〈〈endl; cin〉〉c; } }while(c=='y’); break; } case 3://删除员工资料 { char c; string xingming,line,str,name; do { ifstream fin("工资表.txt”); fstream outfi

29、le(”工资表.txt",ios::trunc|ios::out); //作一个文本文档在文件夹中用于显示所录入的数据 cout〈<”请输入您要删除的员工的姓名:"; cin>〉xingming; while(!fin。eof() ) { getline(fin,line); istringstream stream(line);

30、 name = line。substr(0,line.find(” ”,0));//找到名字,判断是否相等 if(name != xingming) { outfile<〈line〈〈endl; } } outfile。close(); fin。close(); fstream f(”工资表。txt",ios::trunc|ios::out);

31、 ifstream outf("工资表.txt”); f〈c; } if(c!=’y'&&c!=’n') {

32、 cout〈〈”指令错误!请重新输入!”〈〈endl; cin>>c; } }while(c==’y’); break; } case 4://修改员工工资数据 { string sname,line,str,name; int n; float W,S,R,D,SW; int flag; char c; if(i==0) { cout〈〈"系统中没有输入数据,请先输入数据!”〈〈endl;br

33、eak; } do { flag=0; cout<〈”请输入您要修改的员工的姓名:”; cin〉>name; fstream fin(”工资表.txt”,ios::in); ofstream outfile(”工资表。txt”,ios::trunc|ios::out); cout〈

34、line); istringstream stream(line); sname = line。substr(0,line。find(" ",0)); if(name!=sname) { outfile〈

35、〉n; cout〈〈”请输入修改的员工姓名:”; cin〉〉name; cout〈〈”请输入修改的员工基本工资:"; cin〉>W; cout〈〈”请输入修改的员工补贴工资:"; cin〉>S; cout〈〈”请输入修改的员工奖励工资:”; cin>>R; cout〈〈”请输入修改的员工扣除工资:”; cin>>D; SW=W+S+R-D;

36、 cout<〈endl; outfile〈〈”员工号:"〈〈n<〈” 姓名:”<

37、f。rdbuf()〈

38、输入!"<〈endl〈<” ”; cin>>c; } }while(c=='y'); break; } case 5://按员工号查询 { int j=0; float num; char c; int flag; if(i==0) { cout〈<"系统中没有输入数据,请先输入数据!"<〈endl; break; } do { flag=0; cout<〈"请输入

39、您要查询的员工的员工号:”〈〈endl; cin〉〉num; for(int j=0;j

40、[j])。Wage<〈" 补贴工资:”<<(*s[j])。Subsidy〈〈" 奖励工资:"〈<(*s[j])。Reward〈〈” 扣除工资:"<〈(*s[j])。Deduct〈<” 实发工资:”〈<(*s[j])。SumWage<〈endl; } } if(flag==0)cout〈<”对不起!您要查询的员工不存在!”<〈endl; cout<〈”是否继续查?(y/n):”; cin〉>c; if(c!='y'&&c!=’n’) { cout〈〈”输入的指令

41、无效!请重新输入!"〈

42、工的名字: ”<〈endl; cin〉〉n; for(int j=0;j〈i;j++) { if(s[j]—>name==n) { flag=1; cout<<”您要查询的员工是:"〈<(*s[j])。name<

43、Reward<<” 扣除工资:”〈<(*s[j])。Deduct〈<" 实发工资:”<〈(*s[j]).SumWage〈>c; if(c!=’y'&&c!='n’) { cout〈<"输入的指令无效!请重新输入:"〈>c;

44、 } }while(c==’y’); break; } case 7://浏览所有员工工资信息 { cout<〈"所有员工数据如下:”〈〈endl; ifstream file; file。open(”工资表。txt",ios::in); cout〈

45、 { cout<〈”系统中没有输入数据,请先输入数据!"<a[n+1]) { temp=a[n]; a[n]=

46、a[n+1]; a[n+1]=temp; } } for(n=1;n〈=i;n++) { for(int j=0;j〈i;j++) { if(s[j]—>getSumWage()==a[n]) { cout<<"实发工资排第"〈〈n<<”的员工是:”〈<(*s[j])。name〈<" 实发工资:"<<(*s[j])。SumWage〈〈endl; } } } break; } case 9://按员工号排

47、序 { if(i==0) { cout〈<"系统中没有输入数据,请先输入数据!”〈〈endl; break; } int h,g,n; int j=0; int a[100],temp; for(g=0;g〈i;g++) { a[j]=(*s[g])。number; j++; } for(h=0;h〈i;h++) { for(n=0;n〈i-h;n++) if(a[n]>a[n+1]) { temp=a[n];

48、 a[n]=a[n+1]; a[n+1]=temp; } } for(n=1;n<=i;n++) { for(int j=0;j〈i;j++) { if(s[j]—〉number==a[n]) { cout〈<"第"〈

49、eak; } case 0: { exit(0); } } cout〈〈” 您想继续进行其他操作吗?(y/n):”; int flag=0; do { cin>〉w; cout〈

50、***********************************************************************”<〈endl; cout〈〈”*******************************************************************************"〈〈endl; cout〈〈”*******************************************************************************”<

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服