- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中 南 大 学
《高级程序设计实践(C++)》
课程设计报告
设计题目
指导老师
设计者
专业班级
时间日期
目 录
一 课题的基本内容和要求
二 程序功能简介
三 主体内容:
1 设计分析
2 程序结构
3 各模块的功能及程序说明
4 相关模块源程序
5 操作方法
6试验结果
7设计体会
8 参考文献
一 基本内容和要求
(一)基本要求
本设计采用教师指导、学生自学和独立编程操作方式,先由学生查阅与本设计有关的书籍和资料,利用Visual C++ 6.0设计环境与开发工具,在两周时间内,完成课程设计内容中的一个管理系统,具体要求如下:
独立思考:独立完成课程设计中各任务的设计和调试。
上机准备:每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。
数据管理:管理系统中的数据可用数据库(如Access数据库)的形式保存,也可用普通文件(文本文件或二进制文件)的形式保存。
程序要求:界面美观、可操作性强、稳定性好。
(二)基本内容: 教学设备管理系统
为方便管理学校教学设备,编写一个教学设备管理系统软件。系统记录必须包括设备编号、设备名称、生产厂家、购置日期、台数、单价、及备注等。
二 程序功能简介
添加:增加一台设备的记录到管理系统中。
查询:可以根据设备编号查找某台设备的相关信息,若找到则显示其信息。
修改:在管理系统中修改一台设备的记录。
保存:将所有教学设备信息保存在一个文件中(数据库文件或普通的文本文件)。
读取:从文件中读取已保存了数据。
删除:从管理系统中删除一条记录。
恢复:能恢复被删除的记录。
统计:(A)统计每页合计台数及金额;(B)累计设备的总台数及总金额;(C)统计单价在:200元以下、200~800元之间和800元以上的设备总台数及总金额。(D)以表格形式打印教学设备明细表。
其他:可以根据自己的思路设计其他功能。
三 主体内容
1 设计分析
根据问题描述和要求,系统要求能够添加设备,按设备编号查询,修改,保存,读取,删除,恢复设备的信息。系统既然具有“数据存盘”功能,设备数据可以保存到磁盘文件,那么也就意味着今后可以从磁盘文件读出人员数据,所以系统增加了“人员数据装入”模块,以方便用户使用,避免数据重新录入。考虑到系统实现简捷,人员数据文件采用文本文件,人员数据文件名.
使用面向对象的程序设计思想进行分析,整个系统涉及两个类的信息和操作,设备和购置日期。所以系统主要涉及两个大类:设备类Equipment,日期Date。系统的主体框架就是设备类,考虑系统操作的设备信息的数量具有不确定性,所以考虑使用链表保存,处理设备信息。设备类包含所以设备信息的一个不带头结点的链表,可以对设备信息进行增,删,改,查询,基础数据设置,数据存盘,数据装入等操作的相关模块(Add,Delete,Modify,Find,Save,Recover,Read,Statistic)作为成员函数。
2程序结构
(1)系统功能模块图
设 备管 理
设 备
管 理
系 统
添加
设备
信息
查找
设备
信息
修改
设备
信息
保存
设备
信息
读取
设备
信息
删除
设备
信息
恢复
设备
信息
统计
设备
信息
各模块的功能
开 始主函数流程
开 始
创建设备 对象
创建设备 对象
显示菜单
显示菜单
接受输入
接受输入
根据输入 执行操作
根据输入 执行操作
结束退出
结束
退出
4 源函数
#include <iostream>
#include <fstream>
#include <cstring>
#include <windows.h>
using namespace std;
class Date
{
private:
int year;
int month;
int day;
public:
Date(int y = 0 , int m = 0 , int d = 0);
Date & operator = (Date &a);
void foutput(ofstream &fout);
void output();
void alloutput();
};
void Date::alloutput()
{
cout<<year<<":"<<month<<":"<<day<<'\t';
}
void Date::foutput(ofstream &fout)
{
fout<<year<<" "<<month<<" "<<day<<endl;
}
Date::Date(int y,int m,int d)
{
year = y;
month = m;
da
文档评论(0)