1、 通信与信息工程学院 面向对象技术课程设计 一、课程设计目的 (1)要求学生达到熟练掌握C++语言的基本知识和技能; (2)基本掌握面向对象程序设计的基本思路和方法; (3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。 二、程序设计要求 1、基本功能:设计一个高校水电管理信息系统,能够对高校的水电费用进行管理,包括登记费用、查询费用和住户信息管理等。完成如下功能:⑴实现对用户信息的录入。⑵实现水电数据的录入。⑶计算并查询用户应缴费用。(4)显示当前系统中所有学生和教工的记录(5)可根据查询结果对相应的记录进行修改(6)计算电费和水费。
2、 2、程序主菜单:教师水电费管理,学生水电费管理,退出系统三个选项 3、 设计流程图:画出本程序的总体设计流程图(手画) 4、 功能框图:画出本程序的功能框图(手画) 三、程序功能设计 1、功能设计:添加功能 查询功能 显示功能 编辑功能 删除功能 统计功能 保存功能 读取功能 计算水费和电费 2、组员分工:赵政 类的定义 马晶晶 史娟丽 杨洁 功能的实现 姜田茹 界面设计 设计思路: 1、在主函数中通过分支选择实现不同的功能。 2、在菜单函数中,通过设计界面与用户进行交互。 3、定义一个使用者类,在类的内部定义各种函数,实现显示、修改、删除、查询、统计
3、用户信息等功能。
四、程序数据结构(手写)
五、程序函数设计(手写)
六、程序源代码(此部分可打印)
七 截图(手写)
八 心得(手写)
附录:程序源代码
#include
4、tring nm="",string s="",int a=0,double w=0.0,double p=0.0) { num=n; name=nm; sex=s; age=a; water=w; power=p; }; virtual void Input(){}; virtual void Output(){}; int GetNum(){return num;} string GetName(){return name;} double GetWater(){return water;} double GetPower
5、){return power;} }; class Teacher:virtual public Person { public: string depart; double watermoney; double powermoney; int choice1; int choice2; public: Teacher(int n=0,string nm="",string s="男",int a=0,string d="任课教师",double w=0.0, double p=0.0, double wm=0.0, double pm=0.0) :P
6、erson(n,nm,s,a,w,p),depart(d)
{
watermoney=wm;
powermoney=pm;
};
void Input()
{
cout<<"请输入编号:"<
7、男";break;
case 2:sex="女";break;
default:cout<<"输入错误。"<
8、k;
case 2:depart="教务处";
break;
case 3:depart="财政处";
break;
case 4:depart="校团委";
break;
default:cout<<"输入错误。"<
9、id Output()
{
cout<<" "< 10、
int choice1;
int choice2;
public:
Student(int n=0,string nm="",string s="男",int a=0,string z="",double w=0.0, double p=0.0, double wm=0.0, double pm=0.0)
:Person(n,nm,s,a,w,p),bj(z)
{
watermoney=wm;
powermoney=pm;
};
void Input()
{
cout<<"请输入学号:"< 11、t<<"请输入姓名:"< 12、ndl;
cout<<"1.通信1201班"<<"2.通信1202班"<<"3.通信1203班"<<"4.通信1204班"< 13、}
cout<<"请输入本月的用水量"< 14、 <<""< 15、return;
}
Student s;
cout<<"输入新添加的人员的信息"< 16、l;
return;
}
cout<<""<<"学号"
<<""<<"姓名"
<<""<<"性别"
<<""<<"年龄"
<<""<<"班级"
<<""<<"用水量"
<<""<<"用电量"
<<""<<"水费"
<<""<<"电费"
< 17、
int choice;
cout<<"请选择查找方式:1.按姓名查询 2.按用水量查询 3.按用电量查询"< 18、<""<<"水费"
<<""<<"电费"
< 19、""<<"姓名"
<<""<<"性别"
<<""<<"年龄"
<<""<<"班级"
<<""<<"用水量"
<<""<<"用电量"
<<""<<"水费"
<<""<<"电费"
< 20、e 3:
{
cout<<"请输入要查找的电量:"< 21、r)
{
Stu[i].Output();
}
}
return;
cout<<"查无此人!"< 22、 23、t choice;
cin>>choice;
switch(choice)
{
case 1:
{
cout<<"请输入编号:";
int num;
cin>>num;
for(int i=0;i 24、
for(int j=i;j 25、
string name;
cin>>name;
for(int i=0;i 26、<"删除成功!"< 27、
int choice;
cout<<"请输入你的选择"< 28、ak;
case 2:
{
double zwatermoney=0.0, zpowermoney=0.0;
for(int i=0; i 29、endl;break;
}
}
class Tea_Manage
{
Teacher Tea[TMAX];
int top;
public:
Tea_Manage(){top=0;}
void Add();
void Show();
void Search();
void Edit();
void Delete();
void Total();
};
void Tea_Manage::Add()
{
if(top>=TMAX)
{
cout<<"用户已满"< 30、
cout<<"输入新添加的人员的信息"< 31、<<""<<"编号"
<<""<<"姓名"
<<""<<"性别"
<<""<<"年龄"
<<""<<"部门"
<<""<<"用水量"
<<""<<"用电量"
<<""<<"水费"
<<""<<"电费"
< 32、选择查找方式:1.按姓名查询 2.按用水量查询 3.按用电量查询"< 33、"
<<" "<<"电费"
< 34、 "<<" "<<" 性别 "<<" "<<" 年龄 "<<" "<<" 部门 "<<"用水量"<<"用电量"<<"水费"<<"电费"< 35、power;
cin>>power;
cout<<" "<<"编号 "<<" "<<" 姓名 "<<" "<<" 性别 "<<" "<<" 年龄 "<<" "<<" 部门 "<<"用水量"<<"用电量"<<"水费"<<"电费"< 36、ault:cout<<"无此选项!请重试!"< 37、ut();
cout<<"修改成功"< 38、um;
cin>>num;
for(int i=0;i 39、
top--;
};
break;
case 2:
return;
default:cout<<"无此项,失败!"< 40、e==Tea[i].name)
{
cout<<"是否确认删除? 1、是 2、否 "< 41、turn;
default:cout<<"无此项,失败!"< 42、
switch(choice)
{
case 1:
{
double zwater=0.0, zpower=0.0;
for(int i=0; i 43、ney=0.0;
for(int i=0;i 44、 main()
{
int choice;
do
{
cout<<"\n================================================================================\n"< 45、e;
switch(choice)
{
case 1:TeaMenu();break;
case 2:StuMenu();break;
case 0:cout<<"\n您已安全退出系统."< 46、
}
void TeaMenu()
{
Tea_Manage t;
int choice;
while(choice!=0)
{
cout<<"\n================================================================================\n"< 47、t<<"\n"< 48、试!"< 49、读取 8.统计 0.退出 "< 50、ak;
default:cout<<"无此选项!请重试!"<






