《C++程序设计》课程设计
水电管理系统
指导教师设计成员班 级设计时间
2010年11月
日
1
: : : : 15
《C++程序设计》课程设计任务书
适用专业:过程控制 设计题目:水电管理系统 一、已知技术参数或设计前提
1、拖欠的的水或电费信息繁多。
2、每个用户都有自己的姓名、水电编号等信息。 3、若有新客户则可添加其信息。
4、若客户信息填写有误,可以修改其信息。
二、设计内容及要求
1、实现用户的信息录入,输入的信息如下:顾客姓名、水或电类别、水或电价格、拖
欠数量。
2、实现用户的信息查询,能够按客户的姓名或水电编号进行查询。
3、实现用户的信息输出,主要让用户输出已存档的顾客信息。
4、实现用户的信息修改,修改已存档用户的姓名、水电类别、水电价格、拖欠数量。 5、实现用户的信息删除,主要让用户删出已存档的顾客的信息。 6、实现系统的自动维护功能。
三、程设计工作计划
1、确定题目,成立设计小组,做用户分析。(9月16日)
2、查阅资料,进行问题分析,制定方案,确定成员分工。(9月17日-9月20日) 3、根据方案编写程序并进行调试。(10月15日)
4、撰写设计说明书,完成设计。(11月1日) 5、提交设计内容,答辩。
四、相关教材及参考书目
1、编著。C++语言及其程序设计教程。北京:电子工业出版社,1992; 2、编著。Visual C++程序设计。北京:北京大学出版社,1994; 3、主编。C++程序设计语言。北京:清华大学出版社,1995;
4、Herbert Schildt.Schildt’s Expert C++。McGraw-hill,1996; 5、主编。C++程序设计教程。北京:高等教育出版社,2004。
指导教师签字:迟立颖 系主任 签字:
2010年10月16日
2
目 录
一、需求分析??????????????????????????3 二、成员分工???????????????????????????3 三、系统功能模块图????????????????????????3 四、软硬件环境????????????????????????3 五、模块功能实现?????????????????????????4 六、系统使用说明??????????????????????????6 七、源程序???????????????????????????12 八、结束语???????????????????????????12 九、参考文献???????????????????????????12 3
一、需求分析
本系统为水电管理系统,用于登记每日售出的水或电信息的录入,查询,更改。由于每日售出的水或电信息繁多,故此系统可以解决售出的水或电的信息问题。又可以减速少工作人员的工作量,节约了时间。
二、成员的分工说明
李 莹:编写部分程序说明书,负责输入输出功能的实现。 胡 琪:编写部分程序说明书,负责管理查询部分的功能实现。 蔡仲彬:编写部分程序说明书,负责水电信息修改和删除功能实现。 黄少君:编写部分程序说明书,负责管理信息录入部分的功能实现。
三、系统功能模块图
水电管理系统
水水水水水
或或或或或 电电电电电信信信信信
息息息息息 录 查修删输入 询改除出
模模模模模
块块块块块
查按 询按询 水顾或客
电姓
编名 号查
四、系统的软硬件环境
1、软件环境
WindowsXP、Visual C++6.0 2、硬件环境 CPU(AMD 4000+)、内存(1G)、硬盘(160G)
4
五、功能模块实现及函数分析
1、类结构:shuidian
Class Shuidian类,此类的设计是遵循面向对象编程原理,主要是针对用户的个人信息进行操作,设计共分为两个部分,公有部分和私有部分。
公有部分:对象的功能函数,包括:
shuidian(); //构造函数
~shuidian(); //析构函数 void enter();//信息录入函数 void display();//信息输出函数 void setsno(int temp); //设置水电编码 int getsno(); //获取水电编码
char *getname(); //获取姓名
void change(); //修改函数 void del(); //删除函数 void read(); //读取函数 void write(); //写入函数
int tuiqian_jine(); //拖欠总额计算函数
私有部分:对象的一些属性信息 包括:
int maxnum; //最大值 char price[6];//单位价格 char name[10];//登记名字 char lei;//水或电分类 int sno; //水电编号 char tuoqian[10];
2、模块设计分析
(1)登记信息录入模块input():
1)首先调用enter()函数。
2、录入模块是以类的成员enter()为基础的,首先建立txt文件,然后通过屏幕输入输出,对类实例的各个数据成员赋值,待一起都输入完毕,将数据以shuidian类的大小为单位,存储到txt文件中,这样便完成了一次输入过程。
5