教学设备管理系统c++.docx
- 文档编号:11171609
- 上传时间:2023-05-29
- 格式:DOCX
- 页数:14
- 大小:34.87KB
教学设备管理系统c++.docx
《教学设备管理系统c++.docx》由会员分享,可在线阅读,更多相关《教学设备管理系统c++.docx(14页珍藏版)》请在冰点文库上搜索。
教学设备管理系统c++
中南大学
《高级程序设计实践(C++)》
课程设计报告
设计题目
指导老师
设计者
专业班级
时间日期
一课题的基本内容和要求
二程序功能简介
三主体内容:
1设计分析
2程序结构
3各模块的功能及程序说明
4相关模块源程序
5操作方法
6试验结果
7设计体会
8参考文献
一基本内容和要求
(一)基本要求
本设计采用教师指导、学生自学和独立编程操作方式,先由学生查阅与本设计有关的书籍和资料,利用VisualC++设计环境与开发工具,在两周时间内,完成课程设计内容中的一个管理系统,具体要求如下:
1、独立思考:
独立完成课程设计中各任务的设计和调试。
2、上机准备:
每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。
3、数据管理:
管理系统中的数据可用数据库(如Access数据库)的形式保存,也可用普通文件(文本文件或二进制文件)的形式保存。
4、程序要求:
界面美观、可操作性强、稳定性好。
(二)基本内容:
教学设备管理系统
为方便管理学校教学设备,编写一个教学设备管理系统软件。
系统记录必须包括设备编号、设备名称、生产厂家、购置日期、台数、单价、及备注等。
二程序功能简介
(1)添加:
增加一台设备的记录到管理系统中。
(2)查询:
可以根据设备编号查找某台设备的相关信息,若找到则显示其信息。
(3)修改:
在管理系统中修改一台设备的记录。
(4)保存:
将所有教学设备信息保存在一个文件中(数据库文件或普通的文本文件)。
(5)读取:
从文件中读取已保存了数据。
(6)删除:
从管理系统中删除一条记录。
(7)恢复:
能恢复被删除的记录。
(8)统计:
(A)统计每页合计台数及金额;(B)累计设备的总台数及总金额;(C)统计单价在:
200元以下、200~800元之间和800元以上的设备总台数及总金额。
(D)以表格形式打印教学设备明细表。
(9)其他:
可以根据自己的思路设计其他功能。
三主体内容
1设计分析
根据问题描述和要求,系统要求能够添加设备,按设备编号查询,修改,保存,读取,删除,恢复设备的信息。
系统既然具有“数据存盘”功能,设备数据可以保存到磁盘文件,那么也就意味着今后可以从磁盘文件读出人员数据,所以系统增加了“人员数据装入”模块,以方便用户使用,避免数据重新录入。
考虑到系统实现简捷,人员数据文件采用文本文件,人员数据文件名.
使用面向对象的程序设计思想进行分析,整个系统涉及两个类的信息和操作,设备和购置日期。
所以系统主要涉及两个大类:
设备类Equipment,日期Date。
系统的主体框架就是设备类,考虑系统操作的设备信息的数量具有不确定性,所以考虑使用链表保存,处理设备信息。
设备类包含所以设备信息的一个不带头结点的链表,可以对设备信息进行增,删,改,查询,基础数据设置,数据存盘,数据装入等操作的相关模块(Add,Delete,Modify,Find,Save,Recover,Read,Statistic)作为成员函数。
2程序结构
(1)系统功能模块图
3各模块的功能
(1)
主函数流程
4源函数
#include
#include
#include
#include<>
usingnamespacestd;
classDate
{
private:
intyear;
intmonth;
intday;
public:
Date(inty=0,intm=0,intd=0);
Date&operator=(Date&a);
voidfoutput(ofstream&fout);
voidoutput();
voidalloutput();
};
voidDate:
:
alloutput()
{
cout< "< "< } voidDate: : foutput(ofstream&fout) { fout< } Date: : Date(inty,intm,intd) { year=y; month=m; day=d; } Date&Date: : operator=(Date&a) { year=; month=; day=; return*this; } voidDate: : output() { cout< } classEquipment { private: intnum;备编号: "< cout<<"2.设备名称: "< cout<<"3.生产厂家: "< cout<<"4.购置日期: ";(); cout<<"5.台数: "< cout<<"6.单价: "< cout<<"7.备注: "< } intEquipment: : getNum() { returnnum; } intEquipment: : getAmount() { returnamount; } doubleEquipment: : getPrrice() { returnprrice; } voidEquipment: : setNum() { cout<<"请输入设备编号: "; cin>>num; } voidEquipment: : setName() { cout<<"请输入设备名称: "; cin>>name; } voidEquipment: : setFactory() { cout<<"请输入生产厂家的名称: "; cin>>factory; } voidEquipment: : setDate() { inty,m,d; cout<<"请输入年、月、日,用空格隔开: "; cin>>y>>m>>d; Datea(y,m,d); date=a; } voidEquipment: : setAmount() { cout<<"请输入设备台数: "; cin>>amount; } voidEquipment: : setPrrice() { cout<<"请输入设备单价: "; cin>>prrice; } voidEquipment: : setNotes() { cout<<"请输入备注内容: "; cin>>notes; } voidEquipment: : foutput(ofstream&fout) { fout< fout< fout< (fout); fout< fout< fout< } classList { private: intn,capacity; Equipment**elem; public: List(); ~List(); booladd();出修改。 "< cout<<"请输入您需要修改的选项: "; cin>>choice; if(choice<1||choice>8) { cout<<"输入错误,请重新输入! "< choice=1; continue; } switch(choice) { case1: elem[i]->setNum(); break; case2: elem[i]->setName(); break; case3: elem[i]->setFactory(); break; case4: elem[i]->setDate(); break; case5: elem[i]->setAmount(); break; case6: elem[i]->setPrrice(); break; case7: elem[i]->setNotes(); break; case8: break; } }while(choice! =8); } } if(! ok)cout<<"您的输入有误! "< } elsecout<<"现无任何设备! "< } boolList: : Save() { ofstreamfout; (""); (0);加设备内容。 \t\t#"< cout<<"\t\t#\t\t2.查找设备内容。 \t\t#"< cout<<"\t\t#\t\t3.修改设备内容。 \t\t#"< cout<<"\t\t#\t\t4.保存设备记录。 \t\t#"< cout<<"\t\t#\t\t5.读取设备记录。 \t\t#"< cout<<"\t\t#\t\t6.删除设备内容。 \t\t#"< cout<<"\t\t#\t\t7.恢复删除记录。 \t\t#"< cout<<"\t\t#\t\t8.统计设备内容。 \t\t#"< cout<<"\t\t#\t\t9.退出管理系统。 \t\t#"< cout<<"\t\t================================================="< cout<<"请输入您的操作: "; cin>>choice; if(choice<1||choice>9) { cout<<"输入错误,请重新输入! "< choice=1; continue; } switch(choice) { case1: if()) { cout<<"添加成功! "< } else { cout<<"线性表已满,添加失败! "< } break; case2: (); break; case3: (); break; case4: (); break; case5: (); break; case6: (); break; case7: (); break; case8: (); break; case9: break; } system("pause"); system("cls"); }while(choice! =9); return0; } 5操作方法 6实验结果 (1)主界面 (2)添加结果 (3)查询结果 (4)修改结果 (5)保存结果 (6)读取结果 (7)删除结果 (8)恢复结果 (9)统计结果 7设计心得 本次课程设计虽然只有三个礼拜的时间,但内容充实而且所用的知识很多,但我们平时在课堂上所学的知识很有限,这就需要我们大量的自学书本和课外的其他书籍上的知识。 为了让程序使人看懂,我用到的知识点不是非常多,大都是一些基本知识,我能熟练的运用这些知识编程也算是一个很大的成功了。 毕竟很多知识没有学,能用基本知识就尽量用基本知识。 C++设计实践是对之前学过的知识的加深和巩固,之前学的较浅,实践的时间较少
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学 设备管理 系统 c+