c语言课程设计学生档案管理系统实验报告

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

学院:管理科学与信息工程学院
班级:计算机
学号:_____1401111633 姓名:张浩
程序作者:程光亮 ,张浩
C语言程序设计课程
-----设计报告课程设计的目的
1.复习、巩固C语言的基础知识,进一步加深对C语言的理解和掌握;
2.为学生提供一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机结合起来,锻炼学生的分析解决实际问题的能力。

提高学生实践编程的能力;
3.培养学生在项目开发中团队合作精神、创新意识及能力。

课程设计题目安排
课程设计题目可从以下题目中选择,也可经老师同意自拟题目。

可以多人合作完成(每组最多3人),合作完成的必须明确每个人的具体任务,每人单独上交课程设计报告。

一,题目内容描述
第1题学生档案管理
设计一个学生档案管理程序。

该程序应该具有下列功能:
(1)通过键盘输入某位学生的相关信息。

包括学号、姓名、性
别、年龄、出生年月、电话、E-mail、籍贯等;
(2)浏览学生信息;
(3)根据学号修改、删除学生信息;
(4)能按学号、姓名、年龄等关键字排序;
(5)统计学生年龄的平均值及各年龄段人数;
(6)用链表实现,原始数据输入和结果输出使用文件存放二,应用程序的详细说明
(一)系统总体框图
(二)模块功能说明
1学生信息的输入和修改
函数原形:void shuxiu()
功能:首次进入管理系统时,进行学生信息的录入,将学生信息存放于结构体链表中
入口参数:无
出口参数:结构体类型的头指针
函数调用关系说明:main()函数调用shuxiu()函数,返回结构体类型的头指针
Shuxiu()函数调用shuru()函数和xiugai()函数
Shuru()函数主要完成数据的输入以及将数据存储到硬盘的工作
Xiugai()调用add()用来添加学生信息
Shanchu()哟买回来删除学生信息
Xg()用来实现数据的修改
内容限制:录入学生信息学如果重复无法检测。

2修改学生信息
函数原形:void xiugai()
功能:主要王成数据的添加、删除和修改,隶属于数据的输入和修改模块
入口参数:无
出口参数:无
函数调用关系说明:shuxiu()函数调用修改函数
Xiugai()函数中调用add() shanchu() xg()
内容限制:待修改结点存在,不存在时进行提示
3删除学生信息
函数原形:int delete(LNode *head,char *n)
功能:找到待删除结点(找不到时return NULL),将其从链表中脱离并释放删除信息并释放该结点
入口参数:struct node *head
出口参数:结构体类型的头指针
函数调用关系说明:main函数调用delete函数,
Delete函数中调用shuchu1函数
返回结构体类型的头指针
内容限制:待删除结点存在,不存在时进行提示
4学生信息查询
函数原形:void chaxun()
功能:分为void sch_name()(按姓名查找)和void sch_num()(按学号查找)根据输入的部分信息,搜索另外的学生信息
入口参数:
出口参数:无
函数调用关系说明:main函数调用chaxun()函数
Chaxun()函数中调用sch_num()(按姓名查找)和sch_num()(按学号查找)两函数
内容限制:待查询结点存在,不存在时进行提示
5修改密码
函数原型:void gaimi()
入口参数:struct node *head
出口参数:无
函数调用关系说明:main函数调用gaimi函数,gaimi函数中调用comp1函数用来检查原始密码输入是否正确。

Gaimi函数中调用xiugai函数用来修改密码。

6学生信息的统计
函数原型:void gaimi()
入口参数:struct node *head
出口参数:无
函数调用关系说明:main函数调用gaimi函数,gaimi函数中调用comp1函数用来检查原始密码输入是否正确。

Gaimi函数中调用xiugai函数用来修改密码。

7退出存盘
函数原形:void tuichu()
功能:退出时将信息以文件形式存盘
入口参数:struct node *head
出口参数:无
函数调用关系说明:main函数调用tuichu函数
(三)主模块算法说明
1,主函数流程图main()
二,数据的输入和修改shuxiu() 1,数据的输入
2,修改学生档案信息xiugai()数据的添加add()
数据的删除shanchu()
数据的修改xg()
三,测试结果
(1)进入系统输入密码
(2)学生档案信息输入
(3)修改学生信息(添加)
(4)输出全部学生档案信
(5)学生信息查询
(6)修改密码
四,测试过程中遇到的主要问题及采取的解决措施:1,添加学生档案信息时总是将前面已输入的内容覆盖。

解决办法是:增加一个n的变量,再打开文件后先对原先从在的内容进行检查,然后在循环语句中(i=n;i=n+m;i++)使得从下一条开始存储。

2,姓名查找时明明有对应的信息存在,但总是输出“查找信息不存在”,原因:C语言无法识别汉字。

解决办法:输入姓名用英文代替。

3,修改密码,修改完显示“修改完成“,但下次进入时还是输入原始密码,解决办法:在修改完成时给一个返回值到输入密码中。

五,设计总结及体会。

相关文档
最新文档