您好,欢迎访问三七文档
通信与信息工程学院面向对象技术课程设计班级:姓名:学号:指导教师:设计时间:成绩:评语:通信与信息工程学院二〇一三年一、课程设计目的(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:Person(intn=0,stringnm=,strings=,inta=0,doublew=0.0,doublep=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:Teacher(intn=0,stringnm=,strings=男,inta=0,stringd=任课教师,doublew=0.0,doublep=0.0,doublewm=0.0,doublepm=0.0):Person(n,nm,s,a,w,p),depart(d){watermoney=wm;powermoney=pm;};voidInput(){cout请输入编号:endl;cinnum;cout请输入姓名:endl;cinname;cout请选择性别:;cout(1.男2.女)endl;cout请输入你的选择endl;cinchoice2;switch(choice2){case1:sex=男;break;case2:sex=女;break;default:cout输入错误。endl;break;}cout请输入年龄:endl;cinage;cout请选择工作部门:endl;cout1.任课教师2.教务处3.财政处4.校团委endl;cout请输入你的选择endl;cinchoice1;switch(choice1){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:Student(intn=0,stringnm=,strings=男,inta=0,stringz=,doublew=0.0,doublep=0.0,doublewm=0.0,doublepm=0.0):Person(n,nm,s,a,w,p),bj(z){watermoney=wm;powermoney=pm;};voidInput(){cout请输入学号:endl;cinnum;cout请输入姓名:endl;cinname;cout请选择性别:;cout(1.男2.女)endl;cout请输入你的选择endl;cinchoice2;switch(choice2){case1:sex=男;break;case2:sex=女;break;default:cout输入错误。endl;break;}cout请输入年龄:endl;cinage;cout请选择所在班级:endl;cout1.通信1201班2.通信1202班3.通信1203班4.通信1204班endl;cout请输入你的选择endl;cinchoice1;switch(choice1){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(){if(top=TMAX){cout用户已满endl;return;}Students;cout输入新添加的人员的信息endl;s.Input();for(inti=0;itop;i++)if(s.GetNum()==Stu[i].GetNum()){cout该编号的人员已存在endl;return;}Stu[top]=s;top=top+1;cout添加成功!endl;}voidStu_Manage::Show(){if(top==0){cout无数据!endl;return;}cout学号姓名性别年龄班级用水量用电量水费电费endl;for(inti=0;itop;i++)Stu[i].Output();}voidStu_Manage::Search(){if(top==0){cout当前系统中没有存储记录endl;return;}intchoice;cout请选择查找方式:1.按姓名查询2.按用水量查询3.按用电量查询endl;cinchoice;switch(choice){case1:{cout请输入要查找的姓名endl;stringname;cinname;cout学号姓名性别年龄班级用水量用电量水费电费endl;for(inti=0;itop;i++){if(Stu[i].GetName()==name){Stu[i].Output();}}return;cout查无此人!endl;}break;case2:{cout请输入要查找的水量:endl;doublewater;cinwater;cout学号姓名性别年龄班级用水量用电量水费电费endl;for(inti=0;itop;i++){if(Stu[i].GetWater()==water){Stu[i].Output();}}return;cout查无此人!endl;}break;case3:{cout请输入要查找的电量:endl;doublepower;cinpower;cout学号姓名性别年龄班级用水量用电量水费电费endl;for(inti=0;itop;i++){if(Stu[i].GetPower()==power){Stu[i].Output();}}return;cout查无此人!endl;}break;default:cout无此选项!请重试!endl;break;}}voidStu_Manage::Edit(){if(top==0){cout当前系统中没有存储记录!endl;return;}intnum;cout请输入要查找的学号:endl;cinnum;for(inti=0;itop;i++){if(Stu[i].GetNum()==num){cout请对这位学生的信息进行修改:endl;Stu[i].Input();cout修改成功endl;return;}}cout查无此人endl;}voidStu_Manage::Delete(){if(top==0){cout当前系统中没有存储记录!endl;return;}cout1、按编号查找删除2、按姓名查找删除endl;intchoice;cinchoice;switch(choice){case1:{cout请输入编号:;intnum;cinnum;for(inti=0;itop;i++){if(num==Stu[i].num){cout是否确认删除?1、是2、否endl;intchoice;cinchoice;switch(choice){case1:{for(intj=i;jtop-1;j++)Stu[j]=Stu[j+1];cout删除成功!endl;top
本文标题:水电费管理系统
链接地址:https://www.777doc.com/doc-4331840 .html