还剩37页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
通信与信息工程学院面向对象技术课程设计
一、课程设计目的
(1)要求学生达到熟练掌握C++语言的基本知识和技能;
(2)基本掌握面向对象程序设计的基本思路和方法;
(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题
二、程序设计要求
1、基本功能:设计一个高校水电管理信息系统,能够对高校的水电费用进行管理,包括登记费用、查询费用和住户信息管理等完成如下功能⑴实现对用户信息的录入⑵实现水电数据的录入⑶计算并查询用户应缴费用
(4)显示当前系统中所有学生和教工的记录
(5)可根据查询结果对相应的记录进行修改
(6)计算电费和水费
2、程序主菜单教师水电费管理,学生水电费管理,退出系统三个选项
3、设计流程图画出本程序的总体设计流程图(手画)
4、功能框图画出本程序的功能框图(手画)
三、程序功能设计
1、功能设计:添加功能查询功能显示功能编辑功能删除功能统计功能保存功能读取功能计算水费和电费
2、组员分工赵政类的定义马晶晶史娟丽杨洁功能的实现姜田茹界面设计设计思路:
1、在主函数中通过分支选择实现不同的功能
2、在菜单函数中,通过设计界面与用户进行交互
3、定义一个使用者类,在类的内部定义各种函数,实现显示、修改、删除、查询、统计用户信息等功能
四、程序数据结构(手写)
五、程序函数设计(手写)
六、程序源代码(此部分可打印)七截图(手写)八心得(手写)附录程序源代码#includeiostream#includestringconstintTMAX=50;usingnamespacestd;classPerson{public:intnum;stringname;stringsex;intage;doublewater;doublepower;public:Personintn=0stringnm=strings=inta=0doublew=
0.0doublep=
0.0{num=n;name=nm;sex=s;age=a;water=w;power=p;};virtualvoidInput{};virtualvoidOutput{};intGetNum{returnnum;}stringGetName{returnname;}doubleGetWater{returnwater;}doubleGetPower{returnpower;}};classTeacher:virtualpublicPerson{public:stringdepart;doublewatermoney;doublepowermoney;intchoice1;intchoice2;public:Teacherintn=0stringnm=strings=男inta=0stringd=任课教师doublew=
0.0doublep=
0.0doublewm=
0.0doublepm=
0.0:Personnnmsawpdepartd{watermoney=wm;powermoney=pm;};voidInput{cout请输入编号endl;cinnum;cout请输入姓名endl;cinname;cout请选择性别;cout
1.男
2.女endl;cout请输入你的选择endl;cinchoice2;switchchoice2{case1:sex=男;break;case2:sex=女;break;default:cout输入错误endl;break;}cout请输入年龄endl;cinage;cout请选择工作部门endl;cout
1.任课教师
2.教务处
3.财政处
4.校团委endl;cout请输入你的选择endl;cinchoice1;switchchoice1{case1:depart=任课教师;break;case2:depart=教务处;break;case3:depart=财政处;break;case4:depart=校团委;break;default:cout输入错误endl;break;}cout请输入本月的用水量endl;cinwater;cout请输入本月的用电量endl;cinpower;watermoney=
0.5*water;powermoney=
0.5*power;}voidOutput{coutnumnamesexagedepartwaterpowerwatermoneypowermoneyendl;}};classStudent:virtualpublicPerson{public:stringbj;doublewatermoney;doublepowermoney;intchoice1;intchoice2;public:Studentintn=0stringnm=strings=男inta=0stringz=doublew=
0.0doublep=
0.0doublewm=
0.0doublepm=
0.0:Personnnmsawpbjz{watermoney=wm;powermoney=pm;};voidInput{cout请输入学号endl;cinnum;cout请输入姓名endl;cinname;cout请选择性别;cout
1.男
2.女endl;cout请输入你的选择endl;cinchoice2;switchchoice2{case1:sex=男;break;case2:sex=女;break;default:cout输入错误endl;break;}cout请输入年龄endl;cinage;cout请选择所在班级endl;cout
1.通信1201班
2.通信1202班
3.通信1203班
4.通信1204班endl;cout请输入你的选择endl;cinchoice1;switchchoice1{case1:bj=通信1201班;break;case2:bj=通信1202班;break;case3:bj=通信1203班;break;case4:bj=通信1204班;break;default:cout输入错误endl;break;}cout请输入本月的用水量endl;cinwater;cout请输入本月的用电量endl;cinpower;watermoney=
0.5*water-10;powermoney=
0.5*power-10;}voidOutput{coutnumnamesexagebjwaterpowerwatermoneypowermoneyendl;}};classStu_Manage{StudentStu[TMAX];inttop;//toppublic:Stu_Manage{top=0;}voidAdd;voidShow;voidSearch;voidEdit;voidDelete;voidTotal;};voidStu_Manage::Add{iftop=TMAX{cout用户已满endl;return;}Students;cout输入新添加的人员的信息endl;s.Input;forinti=0;itop;i++ifs.GetNum==Stu[i].GetNum{cout该编号的人员已存在endl;return;}Stu[top]=s;top=top+1;cout添加成功!endl;}voidStu_Manage::Show{iftop==0{cout无数据!endl;return;}cout学号姓名性别年龄班级用水量用电量水费电费endl;forinti=0;itop;i++Stu[i].Output;}voidStu_Manage::Search{iftop==0{cout当前系统中没有存储记录endl;return;}intchoice;cout请选择查找方式:
1.按姓名查询
2.按用水量查询
3.按用电量查询endl;cinchoice;switchchoice{case1:{cout请输入要查找的姓名endl;stringname;cinname;cout学号姓名性别年龄班级用水量用电量水费电费endl;forinti=0;itop;i++{ifStu[i].GetName==name{Stu[i].Output;}}return;cout查无此人!endl;}break;case2:{cout请输入要查找的水量:endl;doublewater;cinwater;cout学号姓名性别年龄班级用水量用电量水费电费endl;forinti=0;itop;i++{ifStu[i].GetWater==water{Stu[i].Output;}}return;cout查无此人!endl;}break;case3:{cout请输入要查找的电量:endl;doublepower;cinpower;cout学号姓名性别年龄班级用水量用电量水费电费endl;forinti=0;itop;i++{ifStu[i].GetPower==power{Stu[i].Output;}}return;cout查无此人!endl;}break;default:cout无此选项!请重试!endl;break;}}voidStu_Manage::Edit{iftop==0{cout当前系统中没有存储记录!endl;return;}intnum;cout请输入要查找的学号:endl;cinnum;forinti=0;itop;i++{ifStu[i].GetNum==num{cout请对这位学生的信息进行修改:endl;Stu[i].Input;cout修改成功endl;return;}}cout查无此人endl;}voidStu_Manage::Delete{iftop==0{cout当前系统中没有存储记录!endl;return;}cout
1、按编号查找删除
2、按姓名查找删除endl;intchoice;cinchoice;switchchoice{case1:{cout请输入编号;intnum;cinnum;forinti=0;itop;i++{ifnum==Stu[i].num{cout是否确认删除?
1、是
2、否endl;intchoice;cinchoice;switchchoice{case1:{forintj=i;jtop-1;j++Stu[j]=Stu[j+1];cout删除成功!endl;top--;};break;case2:return;default:cout无此项,失败!endl;break;}return;}}cout无此人!endl;};break;case2:{cout请输入姓名;stringname;cinname;forinti=0;itop;i++{ifname==Stu[i].name{cout是否确认删除?
1、是
2、否endl;intchoice;cinchoice;switchchoice{case1:{forintj=i;jtop-1;j++Stu[j]=Stu[j+1];cout删除成功!endl;top--;};break;case2:return;default:cout无此项,失败!endl;break;}return;}}cout无此人!endl;};break;default:cout没有此项,失败endl;break;}}voidStu_Manage::Total{cout1学生所用水电量的总量2学生总的水电费endl;intchoice;cout请输入你的选择endl;cinchoice;switchchoice{case1:{doublezwater=
0.0zpower=
0.0;forinti=0;itop;i++{zwater+=Stu[i].water;zpower+=Stu[i].power;}cout学生的总用水量为zwaterendl;cout学生的总用电量为zpowerendl;}break;case2:{doublezwatermoney=
0.0zpowermoney=
0.0;forinti=0;itop;i++{zpowermoney+=Stu[i].powermoney;zwatermoney+=Stu[i].watermoney;}cout学生的总水费为zwatermoneyendl;cout学生的总电费为zpowermoneyendl;}break;default:cout输入错误请重新输入endl;break;}}classTea_Manage{TeacherTea[TMAX];inttop;public:Tea_Manage{top=0;}voidAdd;voidShow;voidSearch;voidEdit;voidDelete;voidTotal;};voidTea_Manage::Add{iftop=TMAX{cout用户已满endl;return;}Teachert;cout输入新添加的人员的信息endl;t.Input;forinti=0;itop;i++ift.GetNum==Tea[i].GetNum{cout该编号的人员已存在endl;return;}Tea[top]=t;top=top+1;cout添加成功!endl;}voidTea_Manage::Show{iftop==0{cout无数据!endl;return;}cout编号姓名性别年龄部门用水量用电量水费电费endl;forinti=0;itop;i++Tea[i].Output;}voidTea_Manage::Search{iftop==0{cout当前系统中没有存储记录endl;return;}intchoice;cout请选择查找方式:
1.按姓名查询
2.按用水量查询
3.按用电量查询endl;cinchoice;switchchoice{case1:{cout请输入要查找的姓名endl;stringname;cinname;cout编号姓名性别年龄部门用水量用电量水费电费endl;forinti=0;itop;i++{ifTea[i].GetName==name{Tea[i].Output;}}return;cout查无此人!endl;}break;case2:{cout请输入要查找的水量:endl;doublewater;cinwater;cout编号姓名性别年龄部门用水量用电量水费电费endl;forinti=0;itop;i++{ifTea[i].GetWater==water{Tea[i].Output;}}return;cout查无此人!endl;}break;case3:{cout请输入要查找的电量:endl;doublepower;cinpower;cout编号姓名性别年龄部门用水量用电量水费电费endl;forinti=0;itop;i++{ifTea[i].GetPower==power{Tea[i].Output;}}return;cout查无此人!endl;}break;default:cout无此选项!请重试!endl;break;}}voidTea_Manage::Edit{iftop==0{cout当前系统中没有存储记录!endl;return;}intnum;cout请输入要查找的教编号:endl;cinnum;forinti=0;itop;i++{ifTea[i].GetNum==num{cout请对这位教师的信息进行修改:endl;Tea[i].Input;cout修改成功endl;return;}}cout查无此人endl;}voidTea_Manage::Delete{iftop==0{cout当前系统中没有存储记录!endl;return;}cout
1、按编号查找删除
2、按姓名查找删除endl;intchoice;cinchoice;switchchoice{case1:{cout请输入编号;intnum;cinnum;forinti=0;itop;i++{ifnum==Tea[i].num{cout是否确认删除?
1、是
2、否endl;intchoice;cinchoice;switchchoice{case1:{forintj=i;jtop-1;j++Tea[j]=Tea[j+1];cout删除成功!endl;top--;};break;case2:return;default:cout无此项,失败!endl;break;}return;}}cout无此人!endl;};break;case2:{cout请输入姓名;stringname;cinname;forinti=0;itop;i++{ifname==Tea[i].name{cout是否确认删除?
1、是
2、否endl;intchoice;cinchoice;switchchoice{case1:{forintj=i;jtop-1;j++Tea[j]=Tea[j+1];cout删除成功!endl;top--;};break;case2:return;default:cout无此项,失败!endl;break;}return;}}cout无此人!endl;};break;default:cout没有此项,失败endl;break;}}voidTea_Manage::Total{cout1教师所用水电量的总量2教师总的水电费endl;intchoice;cout请输入你的选择endl;cinchoice;switchchoice{case1:{doublezwater=
0.0zpower=
0.0;forinti=0;itop;i++{zwater+=Tea[i].water;zpower+=Tea[i].power;}cout教师的总用水量为zwaterendl;cout教师的总用电量为zpowerendl;}break;case2:{doublezwatermoney=
0.0zpowermoney=
0.0;forinti=0;itop;i++{zwatermoney+=Tea[i].watermoney;zpowermoney+=Tea[i].powermoney;}cout教师的总水费为zwatermoneyendl;cout教师的总电费为zpowermoneyendl;}break;default:cout输入错误请重新输入endl;break;}}voidTeaMenu;voidStuMenu;intmain{intchoice;do{cout\n================================================================================\nendl;cout高校水电费管理系统\nendl;cout\nendl;cout\t1=教师水电费管理\t2=学生水电费管理\t0=退出系统endl;cout\nendl;cout\n请输入您的选择:;cinchoice;switchchoice{case1:TeaMenu;break;case2:StuMenu;break;case0:cout\n您已安全退出系统.endl;break;default:cout\n没有此选项.请重选.endl;break;}}whilechoice!=0;cout\n------------------------------欢迎您下次再使用!---------------------------------endl;return0;}voidTeaMenu{Tea_Managet;intchoice;whilechoice!=0{cout\n================================================================================\nendl;cout\n教师水电费管理endl;cout\nendl;cout
1.添加
2.查找
3.修改
4.删除
5.显示
6.保存
7.读取
8.统计
0.退出endl;cout\nendl;cout\n输入您操作的选项;cinchoice;switchchoice{case1:t.Add;break;case2:t.Search;break;case3:t.Edit;break;case4:t.Delete;break;case5:t.Show;break;case8:t.Total;break;case0:cout退出成功!endl;break;default:cout无此选项!请重试!endl;break;}}}voidStuMenu{Stu_Manages;intchoice;whilechoice!=0{cout\n================================================================================\nendl;cout\n学生水电费管理endl;cout\nendl;cout
1.添加
2.查找
3.修改
4.删除
5.显示
6.保存
7.读取
8.统计
0.退出endl;cout\nendl;cout\n输入您操作的选项;cinchoice;switchchoice{case1:s.Add;break;case2:s.Search;break;case3:s.Edit;break;case4:s.Delete;break;case5:s.Show;break;case8:s.Total;break;case0:cout退出成功!endl;break;default:cout无此选项!请重试!endl;break;}}}
7、程序调试结果毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意作者签名 日 期 指导教师签名 日 期 使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容作者签名 日 期 学位论文原创性声明本人郑重声明所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明本人完全意识到本声明的法律后果由本人承担作者签名日期年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文涉密论文按学校规定处理作者签名日期年月日导师签名日期年月日注意事项
1.设计(论文)的内容包括1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)
2.论文字数要求理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于
1.2万字
3.附件包括任务书、开题报告、外文译文、译文原文(复印件)
4.文字、图表要求1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序1)设计(论文)2)附件按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它。