- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
C语言程序设计课程设计实验报告
一、设计名称:学生成绩管理查询系统实验项目性质:综合性
所涉及课程:C语言程序设计
计划学时:实验学时12
二、设计目的:
通过本课程设计,培养上机动手能力,使学生巩固《C语言程序设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手能力,闯过编程关;
为后续各门计算机课程的学习打下坚实基础。
理解程序设计的思路,掌握结构化程序设计的方法,综合使用C语言进行程序编写,巩固常用的C语言概念,如数组、指针、结构体、链表、文件操作等,注意良好的程序设计风格的培养。提高编写程序解决实际问题的能力、调试程序的技能。
三、设计环境(软件、硬件及条件)
硬件:PC机
软件:TurboC++
四、设计说明:
程序系统的结构:用一系列图表列出本程序系统内的每个程序(包括每
个模块和子程序)的名称、标识符和它们之间的层次结构关系。
主程序:
新建:输入记录(遇#号时停止输入)。
插入:在指定位置插入记录。
显示:列出所有记录。
查询:
1、按学号查询;
2、按名字排序。
删除:
1、按学号删除;
2、按名字删除;
3、删除所有记录。
排序:
1、按语文成绩排序;
2、按英语成绩排序;
3、按数学成绩排序。
保存:保存为任意名字,系统自动加后缀名为.txt。
读取:读取程序目录下的后缀名为.txt的文件。
退出:退出程序。
五、各功能模块的具体实现,用图表表示。
输入记录
开始:输入学号Y
开始:输入学号
Y
输入的学号是否为#
N
结束,返回主菜单
输入记录
循环输入
结束
显示
开始p=hp!=NULL
开始
p=h
p!=NULL
输出学生信息;p=p-next
结束
按学号(姓名)查询信息
输入要查询的学号(姓名)
输入要查询的学号(姓名)
Y
与要查询的学号(姓名)比较
Head=NULL
N
回到主界面
继续运行
Y
是否找到该学生
N
输出该学生成绩
输出该学生不存在
Y
Y
是否重新查询
结束
N
按学号(姓名)删除信息
Y
Y
输入要删除的学号(姓名)
与要删除的学号(姓名)比较
Head=NULL
N
回到主界面继续运行
回到主界面
继续运行
是否找到该学生
Y N
删除
删除
输出不能找到该学生
返回
返回
读取文件
head=a1=a2=NULL;n=0;
head=a1=a2=NULL;n=0;
输入文件名字(自动添加后缀名字.
输入文件名字(自动添加后缀名字.txt)
Y能否找到文件
Y
能否找到文件
N
开辟新单元a1,a2;
找不到该文件
读文件fp
!feof(fp)
n=n+1
Y
N==1
N
head=a1a2-next=a1a2=a1;
head=a1
a2-next=a1
a2=a1;开辟新单元a1;读取fp;
a2-next=NULL
返回
保存文件
head=a1=a2=NULL;n=0;
head=a1=a2=NULL;n=0;
输入文件名字(自动添加后缀名字.
输入文件名字(自动添加后缀名字.txt)
保存完毕
保存完毕
六、各模块(函数)的功能介绍,数据结构设计描述,参数说明等。
STUDENT*init();/*初始化链表*/STUDENT*create();/*新建链表*/
STUDENT*del_no(STUDENT*h);/*按学号删除信息*/STUDENT*del_name(STUDENT*h);/*按姓名删除信息*/voidprint(STUDENT*h);/*显示信息函数*/
voidsearch_no(STUDENT*h);/*按学号搜索*/voidsearch_name(STUDENT*h);/*按姓名搜索*/STUDENT*insert(STUDENT*h);/*插入信息函数*/voidsort(STUDENT*h);/*排序函数*/
voidsave(STUDENT*h);/*保存数据到文件*/voidload(STUDENT*h);/*从文件读取数据*/intmenu_main();/*菜单函数*/
voidinputs(char*prompt,char*s,intcount);/*输出信息*/
七、程序代码:
Enterrecords\n);
printf(2.Addrecords\n);printf(3.Listrecords\n);printf(4.Searchrecords\n);printf(5.Deleterecords\n);printf(6.Sortrecords\n);printf(7.Savefiles\n);printf(8.Lo
文档评论(0)