c语言课程设计学生档案管理系统实验报告Word文件下载.docx
《c语言课程设计学生档案管理系统实验报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《c语言课程设计学生档案管理系统实验报告Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。
*****
程序作者:
程光亮,张浩
C语言程序设计课程
-----设计报告
课程设计的目的
1.复习、巩固C语言的基础知识,进一步加深对C语言的理解和掌握;
2.为学生提供一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机结合起来,锻炼学生的分析解决实际问题的能力。
提高学生实践编程的能力;
3.培养学生在项目开发中团队合作精神、创新意识及能力。
课程设计题目安排
课程设计题目可从以下题目中选择,也可经老师同意自拟题目。
可以多人合作完成(每组最多3人),合作完成的必须明确每个人的具体任务,每人单独上交课程设计报告。
一,题目内容描述
第1题学生档案管理
设计一个学生档案管理程序。
该程序应该具有下列功能:
(1)通过键盘输入某位学生的相关信息。
包括学号、姓名、性别、年龄、出生年月、电话、E-mail、籍贯等;
(2)浏览学生信息;
(3)根据学号修改、删除学生信息;
(4)能按学号、姓名、年龄等关键字排序;
(5)统计学生年龄的平均值及各年龄段人数;
(6)用链表实现,原始数据输入和结果输出使用文件存放
二,应用程序的详细说明
(一)系统总体框图
(二)模块功能说明
1学生信息的输入和修改
函数原形:
voidshuxiu()
功能:
首次进入管理系统时,进行学生信息的录入,将学生信息存放于结构体链表中
入口参数:
无
出口参数:
结构体类型的头指针
函数调用关系说明:
main()函数调用shuxiu()函数,返回结构体类型的头指针
Shuxiu()函数调用shuru()函数和xiugai()函数
Shuru()函数主要完成数据的输入以及将数据存储到硬盘的工作
Xiugai()调用add()用来添加学生信息
Shanchu()哟买回来删除学生信息
Xg()用来实现数据的修改
内容限制:
录入学生信息学如果重复无法检测。
2修改学生信息
voidxiugai()
主要王成数据的添加、删除和修改,隶属于数据的输入和修改模块
shuxiu()函数调用修改函数
Xiugai()函数中调用add()shanchu()xg()
待修改结点存在,不存在时进行提示
3删除学生信息
intdelete(LNode*head,char*n)
找到待删除结点(找不到时returnNULL),将其从链表中脱离并释放删除信息并释放该结点
structnode*head
main函数调用delete函数,
Delete函数中调用shuchu1函数
返回结构体类型的头指针
待删除结点存在,不存在时进行提示
4学生信息查询
voidchaxun()
分为voidsch_name()(按姓名查找)和voidsch_num()(按学号查找)
根据输入的部分信息,搜索另外的学生信息
无
main函数调用chaxun()函数
Chaxun()函数中调用sch_num()(按姓名查找)和sch_num()(按学号查找)
两函数
待查询结点存在,不存在时进行提示
5修改密码
函数原型:
voidgaimi()
main函数调用gaimi函数,gaimi函数中调用comp1函数用来检查原始密码输入是否正确。
Gaimi函数中调用xiugai函数用来修改密码。
6学生信息的统计
7退出存盘
voidtuichu()
退出时将信息以文件形式存盘
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,修改密码,修改完显示“修改完成“,但下次进入时还是输入原始密码,解决办法:
在修改完成时给一个返回值到输入密码中。
五,设计总结及体会