1、 学生上机管理系统 1.1.需求分析需求分析 1.1 实现的目标 课程设计的任务: 制作一个小型的学生上机管理系统,要求制作一个菜单,实现数据的录入, 数据的显示,数据查找,数据的删除,数据的保存,数据的统计,数据的修改, 系统的退出。系统的设计要求用到 C+面向对象的程序设计,要求用到类来 实现,同时每一个功能用到一个函数。 基本功能: 学生基本信息(学号,姓名,上机对应的设备编号,设备名称,设备状态) 扩展功能: 学生数据的添加、修改、与删除 学生数据的读取与存储 系统特点: 系统要能够对相应的数据进行很好的测试,系统的统计对设备的状态,人 数都进行了统计;系统数据的录入 除可以手工录入外
2、,还可以采用文件的录 入;系统统计学生的基本信息较全面,包括学号,姓名;程序中查找运用了两 种查找方式即学号查找和姓名查找。 1.2 系统实现方案 第一步:分析题目,建立类并派生出它的子类,画出类图。 第二步:画出流程,根据流程图编写程序清单 第三步:上机调试程序(使用单步调试,设置断点、分块调试的方法) 。 第五步:及时整理资料,撰写课程设计报告中有关这个题目的内容。 1.3 界面设计与数据 程序对学生上机据处理要求 能够输入并浏览学生的基本信息; 能够实现对学生信息的查询和修改; 能够对成绩进行统计; 能够对学号排序; 能够对学生的信息进行保存; 现行的系统功能: 资料维护:系统维护包括对
3、各学生信息和成绩的录入操作。 资料维护:对数据表中的信息进行浏览。 系统查询:可以对学生的姓名,学号,设备信息来查询。 2.2.概要设计概要设计 1.现行系统组织结构图: 2.系统功能结构图: 主程序 初 始 化 程 序 采 单 程 序 查 找 删 除 修 改 统 计 输 入 显 示 退 出 开始 选择菜单序号 1 录 入 信 息 2 显 示 信 息 3 查 找 信 息 4 删 除 信 息 5 修 改 信 息 6 统 计 成 绩 8 保 存 信 息 按 要 求 逐 步 输 入 学 生 信息 选 择 修 改 方式 1? 编号查询 姓名查找 2? 保存? 输入 学生 信息 退出 保存 0 退 出
4、7 学 号 排 序 排 序 3详细详细设计设计 1.类设计类设计 类:student 数据成员 学号,姓名,性别,设备编号,设备名称 类:school 成员函数 录入函数 Input():输入编号到计算机的成绩; 统计函数 count():统计各科的总成绩,计算平均成绩,统计各科的及格率; 查询函数 found():按学号或姓名查找学生的记录; 修改函数 mend():修改指定学号学生成绩记录; 统计函数 ncount():统计学生人数; 排序函数 sort():按学号排序; 删除函数 del():删除指定学号学生记录; 输出函数 show():输出班级所有学生成绩记录; UML 图: 2.2
5、.界面设计界面设计 1.界面设计 程序运行后会出现一个简捷的窗口,便于用户查询数据。 2.功能设计 通过主窗体调用其他窗体,具体实现可以参照系统分析相关内容。应用系 统主控界面包括学生信息录入,查找等功能模块。学生信息录入功能完成学生 信息和成绩的输入。记录查询功能可以对数据各分类的记录进行查询。 3.系统主界面: Student #number:int #name20:char #sex6:char #deviceid20:char #devicename6:char #devicestatus20:char +student*next; +student() +student() + *
6、getname():char +getnumber():int +getscore(inti)double + getg():float + input():void +input(ifstream char name20; char devicestatus8; char deviceid10; char devicename20; public: student *next; friend void school:sort(); student() student() char* getname() return name; int getnumber() return number; void input() int e=1; coutnumber; coutde