欢迎来到天天文库
浏览记录
ID:20626856
大小:131.00 KB
页数:17页
时间:2018-10-14
《c语言程序设计课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C语言程序设计课程设计实验报告一、设计名称:学生成绩管理查询系统实验项目性质:综合性所涉及课程:C语言程序设计计划学时:实验学时12二、设计目的:1.通过本课程设计,培养上机动手能力,使学生巩固《C语言程序设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手能力,闯过编程关;2.为后续各门计算机课程的学习打下坚实基础。3.理解程序设计的思路,掌握结构化程序设计的方法,综合使用C语言进行程序编写,巩固常用的C语言概念,如数组、指针、结构体、链表、文件操作等,注意良好的程序设计风格的培养。提高编写程序解决实
2、际问题的能力、调试程序的技能。三、设计环境(软件、硬件及条件)1.硬件:PC机2.软件:TurboC++3.0四、设计说明:程序系统的结构:用一系列图表列出本程序系统内的每个程序(包括每个模块和子程序)的名称、标识符和它们之间的层次结构关系。主程序:l新建:输入记录(遇#号时停止输入)。l插入:在指定位置插入记录。l显示:列出所有记录。l查询:1、按学号查询;2、按名字排序。l删除:1、按学号删除;2、按名字删除;3、删除所有记录。l排序:1、按语文成绩排序;2、按英语成绩排序;3、按数学成绩排序。l保存:保存为
3、任意名字,系统自动加后缀名为.txt。l读取:读取程序目录下的后缀名为.txt的文件。l退出:退出程序。五、各功能模块的具体实现,用图表表示。输入记录开始:输入学号YN输入的学号是否为#输入记录结束,返回主菜单循环输入结束显示开始p=hp!=NULL输出学生信息;p=p->next结束按学号(姓名)查询信息输入要查询的学号(姓名)与要查询的学号(姓名)比较YHead=NULLN继续运行回到主界面NY是否找到该学生输出该学生不存在输出该学生成绩结束NY是否重新查询按学号(姓名)删除信息输入要删除的学号(姓名)与要删
4、除的学号(姓名)比较YHead=NULLN回到主界面继续运行是否找到该学生NY删除输出不能找到该学生返回读取文件head=a1=a2=NULL;n=0;输入文件名字(自动添加后缀名字.txt)NY能否找到文件找不到该文件开辟新单元a1,a2;读文件fp!feof(fp)n=n+1YNN==1a2->next=a1head=a1a2=a1;开辟新单元a1;读取fp;返回a2->next=NULL保存文件head=a1=a2=NULL;n=0;输入文件名字(自动添加后缀名字.txt)保存完毕六、各模块(函数)的功能介
5、绍,数据结构设计描述,参数说明等。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(S
6、TUDENT*h);/*插入信息函数*/voidsort(STUDENT*h);/*排序函数*/voidsave(STUDENT*h);/*保存数据到文件*/voidload(STUDENT*h);/*从文件读取数据*/intmenu_main();/*菜单函数*/voidinputs(char*prompt,char*s,intcount);/*输出信息*/七、程序代码:///////////////////////////////////////#include/*引用库函数*/#inclu
7、de#include#include#defineN3/*科目数*/#defineMAX100/*分数最大值*/#defineNULL0/*定义为空指针*/#defineLENsizeof(STUDENT)/*STUDENT所占内存大小*/typedefstructz1{charno[11];/*学号*/charname[15];/*姓名*/charsex[5];intscore[N];/*分数*/floatsum;/*总分*/floataverage;
8、/*平均分*/structz1*next;}STUDENT;////////////////////////////////////////*以下为函数原型*/STUDENT*init();/*初始化链表*/STUDENT*create();/*新建链表*/STUDENT*del_no(STUDENT*h);/*按学号删除信息*/STUDENT*del_name(STUD
此文档下载收益归作者所有