计算机毕业设计医院候诊系统.docx
《计算机毕业设计医院候诊系统.docx》由会员分享,可在线阅读,更多相关《计算机毕业设计医院候诊系统.docx(20页珍藏版)》请在冰豆网上搜索。
计算机毕业设计医院候诊系统
计算机科学与技术学院
课程设计报告
课程名称
面向对象程序设计
课程设计名称
医院候诊系统
1.课程设计目的及要求
1)设计目标(问题描述)
(1)要求学生达到熟练掌握C++语言的基本知识和技能;
(2)基本掌握面向对象程序设计的基本思路和方法;
(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题
2)、功能设计要求
医院候诊管理系统
已知医院有内科、外科、骨科、皮肤科和口腔科,每个科均有普通门诊和专家门诊,普通门诊挂号费5元,专家门诊挂号费10元,其中内科门诊要求14岁以下(含14岁)儿童进第一诊室,15~25岁(含25岁)男患者进第二诊室,女患者进第三诊室,其他的进第四诊室,要求编制程序实现如下功能(患者信息包括挂号单编号、性别、年龄、所挂科室):
编写主菜单:
1)统计一天的挂号费收入,并分别统计出各科挂各类号的人数排序。
2)对各科的就诊人数由大到小进行排序。
输出各科室不同年龄层就诊的比例顺序
3)、软件、硬件环境
软件环境:
MicrosoftVisualC++6.0
硬件环境:
AMDAthlon(tm)64*2Processor3600+
32位操作系统
2006MicrosoftCorporation.AllRightsReserved
2.01GHz,512MB内存,80G硬盘
2.课程设计步骤
1)认真分析程序,考虑类中大致会用哪些数据成员和成员函数;
2)编写程序,上机调试;
3)改正程序中的错误并进一步完善。
4)填写实验报告。
3.课程设计内容
1)、设计概述
(a)开发平台:
MicrosoftVisualC++6.0
(b)参考书籍:
面向对象程序设计与C++语言(第二版)
(c)开发周期:
5天(构思1天、雏形1天、修改1天、再修改1天、完善1天)
2)、处理流程
(a)画出功能结构图
(b)画出类图
定义静态常整形变量
c1=0,c2=0,c3=0,c4=0,c5=0,c6=0,c7=0,c8=0,number=0;b1=0,b2=0,b3=0,b4=0,b5=0,b6=0,b7=0,b8=0,b9=0,b10=0,b11=0,
b12=0,b13=0,b14=0,b15=0,b16=0,b17=0;
Classperson
数据成员
charsex;
intmoney;
intage;
introom;
成员函数
voidinput();
voidoutput();
voidcount();
voidroomone();
voidroomall();
voidbili();
(c)主要函数的程序流程图
(d)写出数据测试表(输入数据/预期结果)
数据输入
结果预测
Sex:
1
error,pleasechooseagain
room-number:
3
error,pleasechooseagain
room:
6
error,pleasechooseagain
sex:
m
room-number:
1
Age:
5
room:
1
*************************************************************
Welcometo内科tobetreated
**************************************
*******************************
总收入:
:
5
**********************************************************
Thepopulationof内科is:
1
Thepopulationof外科is:
0
Thepopulationof骨科is:
0
Thepopulationof皮肤科is:
0
Thepopulationof口腔科is:
0
*************************************************************
第一科室1
第二科室0
第三科室0
第四科室0
**********************************************************
内科的各年龄段统计比例
14岁以下所占比例为:
1/1
14到25岁所占比例为:
0/1
25岁以上所占比例为:
0/1
**********************************************************
Yournumberis:
GFSZB2
pleasechooseyoursex:
m(man)orw(women)
sex:
sex:
w
room-number:
1
Age:
18
room:
1
*************************************************************
Welcometo内科tobetreated
*********************************************************************
总收入:
:
10
**********************************************************
Thepopulationof内科is:
2
Thepopulationof外科is:
0
Thepopulationof骨科is:
0
Thepopulationof皮肤科is:
0
Thepopulationof口腔科is:
0
*************************************************************
第一科室1
第二科室0
第三科室1
第四科室0
**********************************************************
内科的各年龄段统计比例
14岁以下所占比例为:
1/2
14到25岁所占比例为:
1/2
25岁以上所占比例为:
0/2
**********************************************************
Yournumberis:
GFSZB3
pleasechooseyoursex:
m(man)orw(women)
sex:
4.课程设计结果
运行正确:
5.课程设计总结分析
1)、程序的优点:
本程序具有良好的人性化、智能化的特点,容错性能良好,页面设计极佳,易被常人理解,可以说是一个完美的程序!
Year!
2)、遇到的问题:
也没遇到什么大的问题,就是在开始设计的时候对于整个程序的设计思路颇费脑细胞。
反正总算是写出来了。
3)、存在的缺陷:
没有用到文件,我想这可能是唯一的一点缺点吧。
4)、自我评价:
本程序无论从设计,还是页面还是运行,都是比较不错的,容错性能良好,
是一个非常不错的程序。
6.附录(源程序清单,要求含有30%的注释)
//头文件person.h
//c1,c2,c3,c4,c5用来统计各个科室的人数
//c6,c7用来统计普通,专家门诊的人数.number用来记录挂号单编号的
//c8用来记录总收入的
staticintc1=0,c2=0,c3=0,c4=0,c5=0,c6=0,c7=0,c8=0,number=0;
//b1到b17都是用来统计各个科室各个年龄段人数的
staticintb1=0,b2=0,b3=0,b4=0,b5=0,b6=0,b7=0,b8=0,b9=0,b10=0,b11=0,
b12=0,b13=0,b14=0,b15=0,b16=0,b17=0;
//条件编译
#ifndefPERSON_H
//条件编译
#definePERSON_H
//定义一个病人个人信息类
classperson
{
public:
//输入个人信息及确定挂号单编号
voidinput();
//统计普通门诊与专家门诊的人数
voidoutput();
//统计各科人数
voidcount();
//统计内科科室中各诊室的人数
voidroomone();
//统计各个科室中各个年龄段人数
voidroomall();
//统计各科室中三个年龄段的人数比例
voidbili();
private:
//个人信息中的性别
charsex;
//选择门诊所需要的钱数
intmoney;
//个人信息中的年龄
intage;
//科室名称
introom;
};
#endif
//头文件person.cpp
#include
#include
#include"person.h"
voidperson:
:
input()//输入个人信息及确定挂号单编号
{
number=number++;//确定你的编号
cout<<"Yournumberis:
GFSZB"<loop1:
cout<<"pleasechooseyoursex:
m(man)orw(women)"<cout<<"Sex:
";
cin>>sex;
if(sex!
='m'&&sex!
='w')//输入错误信息请重新输入
{
cout<<"*******************************************"<cout<<"error,pleasechooseagain"<cout<<"*******************************************"<gotoloop1;
}
loop2:
cout<<"1istheformalmedical-room:
price(5yuan)"<cout<<"2istheexpertmedical-room:
price(10yuan)"<cout<<"pleasechooseroom-number:
";
cin>>money;
if(money!
=1&&money!
=2)//输入错误信息请重新输入
{
cout<<"*******************************************"<cout<<"error,pleasechooseagain"<cout<<"*******************************************"<gotoloop2;
}
loop3:
cout<<"pleaseenteryourage:
"<cout<<"Age:
";
cin>>age;