教学设备管理系统c

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中南大学《高级程序设计实践(C++)》课程设计报告

设计题目

指导老师

设计者

专业班级

时间日期

目录

一课题的基本内容和要求

二程序功能简介

三主体内容:

1 设计分析

2 程序结构

3 各模块的功能及程序说明

4 相关模块源程序

5 操作方法

6试验结果

7设计体会

8 参考文献

一基本内容和要求

(一)基本要求

本设计采用教师指导、学生自学和独立编程操作方式,先由学生查阅与本设计有关的书籍和资料,利用Visual C++ 6.0设计环境与开发工具,在两周时间内,完成课程设计内容中的一个管理系统,具体要求如下:

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

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<

}

void Date::foutput(ofstream &fout)

{

fout<

}

Date::Date(int y,int m,int d)

{

year = y;

month = m;

day = d;

}

Date & Date::operator = (Date &a)

{

year = a.year;

month = a.month;

day = a.day;

return *this;

}

void Date::output()

{

cout<

class Equipment

{

private:

int num; //设备编号

char name[20]; //设备名称

char factory[30]; //生产厂家

Date date; //购置日期

int amount; //台数

double prrice; //单价

char notes[101]; //备注

public:

Equipment(int num_ = 0 , char *name_ = NULL ,

int amount_ = 0, double prrice_ = 0); Equipment & operator = (Equipment &a)

{

num = a.num;

strcpy(name,);

strcpy(factory,a.factory);

date = a.date;

return *this;

}

void give(char *factory_ , Date date_ , char *notes); void output();

void alloutput();

int getNum();

int getAmount();

double getPrrice();

void setNum();

void setName();

void setFactory();

void setDate();

void setAmount();

void setPrrice();

void setNotes();

void foutput(ofstream &fout);

};

void Equipment::alloutput()

{

cout<

<

<

date.alloutput();

相关文档
最新文档