- 1
- 0
- 约1.53万字
- 约 24页
- 2019-06-27 发布于浙江
- 举报
河北大学2013级数电二班《程序设计基础》课程设计报告
PAGE 1
1 系统概述
1.1 功能简介
本软件是一个简单的学校学生信息管理系统,软件窗口为DOS页面。
学生信息管理系统的功能主要是实现学校学生的信息化管理。通过学生信息管理系统,教学管理人员可以实现对学生信息的增加、删除、修改和查询等操作。本系统最大的优点就是操作简便快捷等。
1.2 设计思路
将学生信息定义为一个student类,在类中包含私有数据成员char stuNo[10]; //学号
char name[20]; //姓名
int age; //年龄
float Math; //数学
float English; //英语
float Physics; //物理
float total; //总成绩
然后定义了一个main( ) 菜单函数,使功能菜单显示在运行窗口以提示用户如何进行操作。
主函数是一个程序必不可少的,在主函数中,使用一个switch语句来选择调用主菜单中的各个功能函数。
1.3 结构图
主菜单
主菜单
查看某个学生成绩查看成绩单修改学生成绩登记学生成绩查找学生信息浏览学生信息删除学生信息修改学生信息创建或录入学生信息
查看某个学生成绩
查看成绩单
修改学生成绩
登记学生成绩
查找学生信息
浏览学生信息
删除学生信息
修改学生信息
创建或录入学生信息
2 系统功能的分析和设计
2.1 初始录入功能
此函数实现的功能主要是,对学生信息的初始化录入功能,在初始时,文件中没有任何数据,可以通过此函数输入任意个学生的信息,输入信息之前需先输入学生的个数
在此函数中使用文件处理的方式,先建立一个文件输出流对象,以写的方式打开stu.txt文件,使输入的学生信息都写入文件。
2.2 添加函数
此函数实现的功能主要是,添加学生的信息,调用一次这个函数可以选择添若干个学生的信息。在此函数中也使用文件处理的方式,但使用的是以追加的方式打开文件,使输入的学生信息写在文件里原有信息的后面。
2.3 删除函数
此函数实现的功能主要是,删除一个学生的信息。在此函数中,先以读的方式打开文件,读出文件里的信息在显示在屏幕上,用户再根据提示信息输入想要删除第几个人的信息,关闭文件。再以写的方式打开文件,以一个if条件语句控制,再重新将学生信息写入文件(除了打算删除的那个学生的信息),由于是以写的方式打开的文件,所以文件里原有的输入就都没有了,存入的新的数据。
2.4 修改函数
此函数实现的功能主要是,修改一个学生的信息。此函数的设计方法和删除函数的设计思想相类似,应用的思想都是将学生信息重新写入文件的方法,将原有数据覆盖。
2.5 查询函数
在查询功能中,可以按多条件查询,本系统分为两个查询条件,即按学号查询和按姓名查询。使用if语句来选择查询条件。
2.5.1 按学号查询
根据提示信息输入学号后,然后使用一个for循环语句,从第一个学生开始检索,如果该学生的学号和输入的学号相等,则输出该学生的信息,由于学生的学号是唯一固定的,所以并使用break语句跳出循环。
当无查询结果时,会输出一条提示信息“无此人信息!” 。
2.5.2 按姓名查询
根据提示信息输入姓名后,然后使用一个for循环语句,从第一个学生开始检索,如果该学生的姓名和输入的姓名一样,则输出该学生的信息,由于学生的姓名有可能重复出现,所以不能使用break语句跳出循环,应该从第一个学生开始检索直到最后一名学生。
当无查询结果时,会输出一条提示信息“无此人信息!” 。
2.6 显示函数
此函数实现的功能主要是,显示所有学生的信息。先是从文件中读取学生信息,然后在输出到显示窗口中。用一个for循环语句,来把所有学生的信息都输出。
2.7 退出系统
当输入“0”
3 调试及运行结果
3.1 主菜单
3.2 创建或录入学生信息
3.3 修改学生信息
3.4 删除学生信息
3.5 浏览学生信息
3.6 查找学生信息
3.7 登记成绩
3.8 修改成绩
3.9 查看成绩单
3.10 查看某个学生成绩
4 总结
4.1 遇到的问题及解决方法
首先,是对文件的处理不够熟练,通过看书和搜集一些资料解决了这个问题;其次,是在编写程序的过程中出现了一些语法错误,后通过调试逐一解决。
4.2 收获和体会
此次c++面向对象课程设计,在指导教师的精心教导下,我们学会了如何用C++编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。程序实现上,设计了简单的菜单界面,将各个功能集中出现在主菜单中,便于调用。
根据C++课程所学的概念、理论和方法,
您可能关注的文档
- APQP全套表格[98P][0.99MB].doc
- AQ-6-机械设备操作安全技术交底.doc
- AQ职业病防护设施设计专篇编制导则.doc
- ArcGIS-9--ArcToolbox-中英文对照表要点.doc
- ARM初始化程序分析..doc
- arm开发环境搭建流程..doc
- ASA5500产品资料.doc
- ASNT-UT二级官方教程.doc
- ATM系统需求分析报告.docx
- AutoCAD-2010建筑设计教学大纲.doc
- 《GB/T 46962-2026印刷技术 安全印刷过程管理》.pdf
- 中国国家标准 GB/T 46962-2026印刷技术 安全印刷过程管理.pdf
- GB/T 46962-2026印刷技术 安全印刷过程管理.pdf
- 中国国家标准 GB/T 32580.5-2026轨道交通 地面装置 高压交流开关设备及互感器 第5部分:27.5 kV和2×27.5 kV金属封闭开关设备和控制设备.pdf
- 《GB/T 32580.5-2026轨道交通 地面装置 高压交流开关设备及互感器 第5部分:27.5 kV和2×27.5 kV金属封闭开关设备和控制设备》.pdf
- GB/T 33248-2026印刷技术 胶印橡皮布.pdf
- GB/T 18282.6-2026医疗产品灭菌 化学指示物 第6部分:用于小型蒸汽灭菌器性能测试的二类指示物和过程挑战装置.pdf
- 中国国家标准 GB/T 18282.6-2026医疗产品灭菌 化学指示物 第6部分:用于小型蒸汽灭菌器性能测试的二类指示物和过程挑战装置.pdf
- 中国国家标准 GB/T 31308.1-2026行政、商业和行业中的数据元、过程和文档 长效签名 第1部分:CMS高级电子签名(CAdES)规范.pdf
- GB/T 31308.1-2026行政、商业和行业中的数据元、过程和文档 长效签名 第1部分:CMS高级电子签名(CAdES)规范.pdf
原创力文档

文档评论(0)