1、高级语言程序设计说明书学生信息管理系统系 别计算机工程系专业班级10网络工程1班学生姓名吴小杰指导教师廖玲注释:2010计算机工程系高级语言程序设计大作业目录引言(3)程序结构(3)程序流程图(4)程序源程序模块设计说明 (5)模块1 :函数头(5)模块2: 主函数(5)模块3-1:子函数(添加)(5)模块3-2:子函数(浏览)(6)模块3-3:子函数(删除)(6)模块3-4:子函数(査找)(7)模块3-5:子函数(修改)(7)注释 (8)程序使用说明(8)总结(10)引言程序名称:学生信息管理系统 正式版 V1.0 开发平台: windows XPMicrosoft Visual C+ 6.0 主要功能:1。添加学生信息(学号、姓名、性别、班级、联系电话);2。浏览已录入的所有学生信息;3。查找学生信息(学号或姓名为索引);4。修改学生信息;5。删除学生信息;6。已录入的学生信息按学号排序(升序); 程序说明:准确性要求高,可靠性要求高,输入控制严格,页面响应时间短,用户界面友好,输出准确,功能强大!(人.人)运行环境:Windows NT/2000/XP/VISTA/WIN7 文件
2、说明:程序源代码(学生管理系统.cpp);程序运行文件(学生管理系统.exe);学生信息存储文件(information.txt)注:已存09电信2班学生信息; 文本文档备份于电信2班学生信息文件夹中;参考资料:C+程序设计基础(第二版) 周霭如 林伟健 编著 程序结构函数头: /包括 cin , cout , 等函数/包括类,对象,数组,等函数定义,/t、亠 i 亠厶/_、+ # * 小汀冷庐r ./包括 文本文档的读/写/复制 等函数主函数: void main ()子函数: void add ()/添加void browse ()/浏览void search ()/查找void change ()/修改void delete ()/删除程序流程图程序源程序模块设计说明(在说明各个模块时可适当粘贴一小部分代码,然后进行代码的讲解,此节可参考程序设计说明书 2中的关键代码分析部分。注意:粘贴最多 半页代码后要对该段代码进行分析,连续几页粘贴代码或 分析文字较少者为不合格)模块1:函数头#include #include #include 调用系统中的相关函数,以确保程序的运行正常。C
3、lass studentspublic:int sex,number;int number1,sex1;char num8,name20,phonenum20,grade20;char num18,name120,phonenum120,grade120;students s1000;建立一个学生类,其中包含了多个数组,number&num是用来存放学生学号的数组;name是用来存放学生姓名的数组;sex是用来存放学生性别的数组;grade是用来记录学生班级的数组;phonenum使用来存放学生电话的数组;其中整型和字符分别定义了两组相似的数组,是为了在程序运行中进行比较和相互赋值的。class bubblepublic:int pnumber,psex;char pnum8,pname20,pgrade20,pphonenum20;bubble p1000;建立一个比较类,其中包含多个数组;分别是用来存放学生学号,姓名,性别,班级电话的;建立这个类的目的是为了在应用冒泡排序法进行按学号排序时的排序数组。 模块 2:主函数int i;定义了一个全局变量i;目的在于在循环主菜单与子菜单的
4、过程中,可以共用一个变量;do.while()用了一个循环语句,目的是能让每次功能操作后都能循环回到主菜单并进行操作;Switch()经一个选择语句镶嵌到do.while的循环语句中,目的是让用户选择功能进行操作;模块3-1:子函数(添加)包含添加学生信息和按学生学号排序的两段代码添加学生信息(追加式添加)do.while() 运用了一个循环语句,目的是让用户可以循环录入而不用跳回主菜单再次选择;While()运用 3 个条件循环语句,目的是规范用户选择学生性别时的输入操作;if()运用了8个条件判断语句,其中3 个是为了提示用户在不要重复添加学生信息;其中 4 个是为了在用户在添加学生的各条具体信息时可以反放弃当前操作;其中 1 个是让用户确定添加信息的提示,避免输入错误的学生记录goto x;x:运用了 4个got。语句,前3个为了让用户在重复输入信息时,返回并重新输入; 最后1个是为了在添加成功后,进到排序的语句群中并进行数据排序;Ifstream wfile; 将添加的学生信息以学号,姓名,性别,班级,电话的顺序逐行写入文本文档中进行存储按学号排序(冒泡排序法)Ofstream
5、 rfile; 从文本文档中逐行提取学生信息,并逐个赋值给比较类中的各个数组,然后依照冒泡排 序法来对学生学号次从小到大进行排序;Ifstream wfile; 将已排序号的学生数据逐行写入文本文档,进行数据的存储;For()运用了 4个for循环语句;第1个用于信息的逐行提取;第2和第3个用于冒泡排序法; 第 4 个则用于信息的逐行写入文本文档;Go to();利用多个GOTO语句,使得程序对错误操作更好的处理,程序结构更清晰; 模块 3-2:子函数(浏览)包含浏览全部和删除全部的两段代码浏览全部:Ifstream rfile; while(); 逐行从文本文档中提取数据,然后再逐行显示出来;删除全部:Ifstream rfile;Ofstream wfile;删除全部的原理是将一个空的文本文档的内容复制到已存储数据的文本文档中;模块3-3:子函数(删除)If()运用了 4 个 if 条件判断语句;其中两个是为了让用户在误入的时候可以放弃操作; 其中 2个是相互配合并判断用户要删除的学生信息的存在性;Ifstream rfile;Ofstream wfile; 删除的原理:逐个提取旧
6、文本文档中的数据,然后再逐个写入新文本文档中,而用户 要删除的学生信息则不写入文本文档,然后再将新文档的内容复制并覆盖到旧文档中;Go to();利用多个 GOTO 函数,使得程序对错误操作更好的处理,程序结构更清晰; 模块 3-4:子函数(查找)Switch() 用一个选择语句,让用户可以选择学号或姓名两种方式进行查抄学生信息;学号索引:Ifstream rfile; while() 从文本文档逐行提取数据并赋值为数组元素;If()用了 2 个条件判断语句,相互配合,用于判断查找的学生信息的存在性,并输出;姓名索引:原理同学号查找,不同于,字符的比较语句与整型的比较语句不同; 模块 3-5:子函数(修改)此函数包含修改信息和按学号排序两段代码 修改信息:Switch()一个选择语句,包含7个case;让用户可以选择要修改的学生信息进行单个修改或某 个学生的全部信息进行修改;还可以放弃当前操作返回主菜单;Ifstream rfile , while(), if() 逐行读取数据库中的信息,并循环查找,将需要修改的学生信息提取,显示出来;Caes 15 (单个信息的修改)For(),if
7、(), fstream ;运用一个循环语句并镶嵌两个条件判断语句,目的是将要修改的学生的信息提取出来 并进行特定修改,而且可以规范用户的输入,防止用户将要修改的学生信息修改成数 据库中已有的数据,防止数据的重复,修改完后,再将修改后的学生信息写入数据库case 6 (全部信息的修改)将 case 16 的代码合并,从而达到修改一个学生的全部信息的效果;Go to();利用多个 GOTO 函数,使得程序对错误操作更好的处理,程序结构更清晰;按学号排序:同模块1:子函数(添加)中的按学号排序注释:本程序中的的所有功能在执行过程中,基本遵循一个运行流程读取后再写入,如下:1. 打开并逐行从 information.txt 中读取学生信息数据;2. 将读取的数据赋值给数组;3. 逐行比较各个数组最后哦那个的元素;4. 将符合条件的数组元素重新赋值后整行写入temp. txt中;5. 将不符合条件的数据逐行写入temp. txt中;6. 完成后,关闭 infroma tion.txt 和 t emp .txt;7. 将temp. txt中的数据全部复制并覆盖掉information. txt中的
8、数据;& 将empty.txt中的数据全部复制并覆盖掉temp. txt中的数据;注: information .txt 为本程序数据库的文本文档;temp.txt 为中转数据的空文本文件文件; empty.txt 为空文本文件;程序使用说明(本小节可适当的给出一些主要的运行截图并加以说明,截图不能超过 5幅图)注:请按照程序提示进行操作! 每次输入后都要按回车确定!主菜单 1 添加学生记录 2 浏览所有学生信息 3 查找学生信息4 修改学生记录 5 删除学生记录 6 帮助 & 关于 0 退出系统 用数字输入功能的序号,就可以进入所选功能;添加功能 选中后,按提示输入 (学号、姓名、性别、班级、联系电话) 添加成功后可以选择上继续添加信息或返回主菜单;浏览功能 选中后,逐行显示学生信息 (学号、姓名、性别、班级、联系电话) 浏览后可以选择删除全部学生信息或返回主菜单;查找功能 选中后,可以选择用学号查找或用姓名查找信息 选中后,就会显示你所查询的学生信息(学号、姓名、性别、班级、联系电话) 查看后可以选择继续查找学生信息或是返回上一级菜单;修改功能 选中后,输入要修改的学生学号或姓名,进行搜索; 找到后,程序显示该学生信息 (学号、姓名、性别、班级、联系电话) 接着可以选择修改的内容如下:1 修改学号 2 修改姓名 3 修改性别 4 修改班级 5 修改电话6 修改此学生的全部信息(学号、姓名、性别、班级、联系电话)修改成功后,可以选择继续修改学生信息或是返回主菜单;删除功能 选中后,输入要删除的学生学号或姓名,进行搜索; 找到后,程序显示该学生信息 (学号、姓名、性别、班级、联系电话) 记者可以选择删除信息或放弃并返回主菜单;帮助关于 选中后,程序会显示一段话,并且返回到主菜单中;退出程序 选中后,按任意键,再按回车,推出程序;总结:经过了整整一个星期(09.12.1712.24)八天的日日夜夜的艰苦奋战,终于完成了这 个近800行的代码C+程序。12.17 定下基本框架后就开始着手编写程序的;12.18 基本出现了一个可以进行添加、修改、浏览的雏形程序了,可是却发现,每次运行 都要重新添加信息,根本没有保存数据的功能;12.19在知道可
《程序设计说明书1》由会员鲁**分享,可在线阅读,更多相关《程序设计说明书1》请在金锄头文库上搜索。