1、学生信息管理
(1)问题描述
学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计学生信息管理系统,使之能提供以下功能:
l 系统以菜单方式工作
l 学生信息录入功能(学生信息用文件保存)---输入
l 学生信息浏览功能---输出
l 查询、排序功能---算法
1、按学号查询
2、按姓名查询
l 学生信息的删除与修改(可选项)
(2)功能要求
l 界面比较美观;
l 有一定的容错能力,比如输入的成绩不在0~100之间,就提示不合法,要求重新输入;
l 最好用链表的方式实现。
(3)算法分析
首先,一个学生包括这么多的属性,应该考虑定义一个结构,其次,我们应该考虑数据的存储形式:是定义一个数组来存储,还是定义一个链表呢?在这里假如我们以数组的方式来存储,当然可以,但是我们知道,假如我们定义一个数组的话,我们首先必须知道学生人数大概是多少,以便我们确定数组的大小,但是题目中没有给出,而且题目要求中有大量的删除、插入操作,所以用链表的方式比较方便。
对于菜单的实现,其实也比较简单,首先我们用printf语句把程序的功能列出来,然后等待用户输入而执行不同的函数,执行完了一个功能后又回到菜单。文件的读写操作大家参照书中的有关文件的章节