C语言课程设计学生信息管理系统

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c 语言及数据结构与算法课程设计

题目: 学生信息管理系统

专业:

姓名:

学号:

同组其他学生(学号):

2013 年月日

目录

一、需求分析 . (3)

二、总体设计 . (4)

三、详细设计 . (5)

四、调试与测试 . (6)

五、测试结果 . (7)

六、用户手册 . (9)

七、附录 . (9)

一、需求分析

每年九月份都有大量新生来到学校报道,使学校管理学生工作量增大,为此我们设计一学生信息管理系统,学生信息包括:学号,姓名,年龄,性别,出生年月,地址,,E-mail 等。使之能提供以下功能:

(1)系统以菜单方式工作

(2)学生信息录入功能--- 输入

(3)学生信息浏览功能--- 输出

(4)查询、排序功能--- 算法按学号查询、按姓名查询、学生信息的删除

与修改(可选项)

二、总体设计

组成框图

主菜单欢迎界面录入

按姓名

Y

主菜单

3-- 查询学生信息

退出结束

流程

密码是否正确

1录入学生信息

2浏览学生信息

Y 密码是否正确

删除 4 - 删除学生信

5 - 修改学生信

录入

浏览修改查询

0 - 退出系

入开始

申请新空

间浏览

输入各项数据

指针 p 指向头结

输出指针的数据P=p->next

显示数据

结束

N P==NULL?

结束

查询

修改&删

输入姓名或学号

输入要删除

或修改的学

P指针的学号与

姓名是否与输 N 入的相同?

P=p->next

P 指针的学号

与输入的是否N 相同

输出数据

结束

三、详细设计

主函数通过在while 循环结构中嵌入switch 分支结构实现操作选择功能。

(1)Record 录入函数

建立一个包含学生全部信息的结构体,申请空间,其指针为p0,存入学生各项

对应的数据。

(2)Insert 插入函数:

按输入的数据存储在一个stu 类型的指针里,若原来链表里没有元素,则将此作为第一个元素;若原来的链表里有元素,则将指向头结点指

结束

针存储的学号与头指针下一个的学号大小进行比较,小的在前大的在

后,之后指向头结点处的指正后

移,进行比较,直到尾结点为止在进行比较的while 函数,每比较一次,计算总人数的TOTAL_NU自M加。

(3)Display 浏览函数:

将传给Display 函数的指针P 所指向的结构体的各项数据输出以便核对信息。

(4)DisplayAll 浏览函数:

指针指向链表头结点,在if 语句中嵌套do-while 语句将学生信息按学号从大到小进行逐一输出。

(5)Query 查询函数:

首先使用switch 语句生成菜单,实现操作选择功能。分三个部分按学号查询、按姓名查询和取消返回上一层。按学号查询时调用while 语句对学号检索,再调用if 语句进行判断,最后输出想要查询的信息。按姓名查询的方法跟按学号查询的一样。

(6)Del 删除函数:

使用while 语句进行检索,直接删除学生信息。

(7)Change修改函数:

建立devise 函数,生成菜单,用switch 语句进行分叉选择功能,选择项目进行相应的信息输入。在Change 函数中使用while 语句进行检索后再调用devise 函数修改信息。实现学生信息修改。

四、调试与测试

1、进行多次运行,发现那栏的一打长就会显示一样的数字,打短的数字就可以。我们原本是使用长整型来定义,想说空间不够,后来改用

字符型,用字符串记录

程序运行结果正确

2、程序设计初就在考虑退出与返回有什么差别,如果返回了主菜单那退出用什么,关于这个问题看了许多网上的资料,发现许多程序都有exit ( 0)的函数,所以去查了不少关于exit 的函数容,最后退出就用了exit(0), 但是又提醒说要编写exit 函数,之后发现要加入 的头文件,程序可以正常运行。

3、程序在180 行显示说readData 函数不可以返回值,所以在if 条件

句中将return 0 删除了,不过这个程序在学校的机房即使不删return 0 也是可以运行的,关于这点很是不解,还有待解决。

五、测试结果

1、进入系统界面,输入密码,超过三次会自动退出。

2、选 1 时录入学生信息,编辑完后会继续显示菜单

3、选 2 浏览学生信息,之后继续返回菜单界面,为节省空间菜单界面暂不截图

4、选择 3 查询学生信息会有按学号与按姓名查询。下图是先按学号查询的截图。

5、按姓名查询时,如果查无此人会显示“没有该学生信息,请核对。”之后返回上一层,按姓名查询。显示学生信息后可以选择取消返回主菜单。

6、选择 4 删除学生,输入学号删除学生的信息。之后会返回主菜单

7 选择 5 修改学生信息,按学号输入,之后按显示输入即可。

用几组测试数据进行测试算法设计的正确性。(附上程序运行的截图)

六、用户手册

1 程序一开始会显示欢迎界面,按要求输入密码, 3 次错误会退出程序

2 密码正确后会显示主菜单,按要求输入您的需求。

七、附录

源程序清单和结果:源程序要加注释。结果要包括测试数据和运行结果。/* Note:Your choice is C IDE */

#include

相关文档
最新文档