1.系统设计概述
学生基本信息输入、输出、插入、删除、排序、查询、数据保存及打开。
2.系统设计思路
首页:自定义show()函数负责定义运行框的大小和背景、printhome()函数负责显示首页。
尾页:自定义printend()函数负责显示尾页。
功能:为了美观,程序需要有界面,因此每个功能都需要写两个函数负责,分别是执行功能的程序和显示功能界面的程序,具体如下:
1. 输入:自定义input()函数负责输入学生信息、printinput()负责显示输入学生信息界面。
2. 输出:自定义output()函数负责输出学生信息、printoutput()负责显示输出学生信息界面。
3. 插入:自定义insert()函数负责插入学生信息、printinsert()负责显示插入学生信息界面。
4. 删除:自定义del()函数负责删除学生信息、printdel()负责显示删除学生信息界面。
5. 排序:自定义sort()函数负责排序学生信息、printsort()负责显示排序学生信息界面。
6. 查询:自定义find()函数负责查询学生信息、printfind()负责显示查询学生信息界面。
7. 保存:自定义save()函数负责保存学生信息、printsave()负责显示保存学生信息界面。
8. 打开:自定义printopen()负责显示打开学生信息界面。
3.系统操作界面设计
4.系统功能实现
概述:
首页:自定义show()函数负责定义运行框的大小和背景、printhome()函数负责显示首页。
尾页:自定义printend()函数负责显示尾页。
功能:为了美观,程序需要有界面,因此每个功能都需要写两个函数负责,分别是执行功能的程序和显示功能界面的程序,具体如下:
9. 输入:自定义input()函数负责输入学生信息、printinput()负责显示输入学生信息界面。
10. 输出:自定义output()函数负责输出学生信息、printoutput()负责显示输出学生信息界面。
11. 插入:自定义insert()函数负责插入学生信息、printinsert()负责显示插入学生信息界面。
12. 删除:自定义del()函数负责删除学生信息、printdel()负责显示删除学生信息界面。
13. 排序:自定义sort()函数负责排序学生信息、printsort()负责显示排序学生信息界面。
14. 查询:自定义find()函数负责查询学生信息、printfind()负责显示查询学生信息界面。
15. 保存:自定义save()函数负责保存学生信息、printsave()负责显示保存学生信息界面。
16. 打开:自定义printopen()负责显示打开学生信息界面。
备注1:
没有自定义open()函数负责打开学生信息,是因为对于同一个文件的FILE、fopen、fclose,需要写在同一个函数里,我将FILE*fp写在main函数开头,fclose写在main函数结尾(若没有执行fopen则不执行),无法将fopen写在open()函数中进行调用,而C语言不包含内敛函数,所以我将open()函数的内容直接写在要调用它的地方。
备注2:
我发现大多数写法都是将(1.输入)和(7.保存)结合在一起,将(8.打开)和(2.输出)结合在一起,但我认为这样是不合理的,我将这四个功能拆开单独执行,以便实现随时保存随时读取,我认为这样更符合我们日常的使用习惯,更加合理。
7. 保存:在首页选择(7.保存)后进行保存,而不是输入时便保存,这样可以防止误输入影响了已保存的文件。
8. 打开:打开之前保存的文件,且不关闭,可以在此文件上进行1-6的操作。
9. 退出:如果使用了(8.打开)读取文件,那么此时会先关闭文件再退出。
5.主要源程序
包含源代码,可执行程序,文件系统,以及使用说明(本文的文档版)。
欢迎下载(仅需1积分)点击打开链接
6.测试数据及测试情况
1.输入学生信息:第1个;1001 小明 男 18 85 。
第2个;1002 小红 女 18 90。
2.输出学生信息。
3.插入学生信息:插入序号2;1003 小王 男 18 70;输出学生信息。
4.删除学生信息:删除序号2 ;输出学生信息。
5. 排序学生信息:按成绩排序;输出学生信息。
6.查询学生信息:查询学号1002;
7.保存学生信息;
8.退出管理系统;重新打开程序;输出学生信息;打开学生信息;输出学生信息。
7.末尾
再附一次源程序,包含源代码,可执行程序,文件系统,以及使用说明(本文的文档版)。
欢迎下载(仅需1积分)点击打开链接