C语言课程设计说明书课程管理系统

上传人:壹****1 文档编号:408789296 上传时间:2023-02-28 格式:DOC 页数:21 大小:192KB
返回 下载 相关 举报
C语言课程设计说明书课程管理系统_第1页
第1页 / 共21页
C语言课程设计说明书课程管理系统_第2页
第2页 / 共21页
C语言课程设计说明书课程管理系统_第3页
第3页 / 共21页
C语言课程设计说明书课程管理系统_第4页
第4页 / 共21页
C语言课程设计说明书课程管理系统_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《C语言课程设计说明书课程管理系统》由会员分享,可在线阅读,更多相关《C语言课程设计说明书课程管理系统(21页珍藏版)》请在金锄头文库上搜索。

1、学号: 09050011 C语言课程设计设计说明书课程管理系统起止日期: 2010 年 06 月 21 日 至 2010年 06 月 27 日学生姓名: 班级: 09级通信工程(1)班 成绩: 指导老师(签字): 电子信息工程系2010年6月21日天津理工大学中环信息学院目 录一、设计目的3二、总体设计3三、详细设计3四、调试与测试4五、核心源程序清单8六、仍存在的问题34七、心得体会 34一、设计目的假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。试设计学生选修课程系统,使之能提供以

2、下功能:1、课程信息录入功能(课程信息用文件保存) 2、课程信息浏览功能3、排序:按开课学期排序4、查询功能:按课程名称查询5、课程修改、删除(可选项)二、总体设计(程序设计组成框图、流程图)课程修改及删除课程查询课程排序课程信息浏览课程信息录入课程管理系统退出系统void searchvoid taxisvoid sub_viewvoid sub_addInput 5Input 4Input 3Input 2Input 1N是1-5Input n(1-5)start三、详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)1 宏定义,文件包含,定义结构体变量;2 从主函

3、数进入;3 显示程序进入界面;4 调用函数一(录入课程详细信息):键盘上输入课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息5 调用函数二(浏览课程详细信息):在键盘上输入课程名,显示对应课程的详细信息。6 调用函数三(排序:按开课学期排序): 7 调用函数四(查询课程详细信息):显示所有输入的课程信息;8 退出;四、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施完成每一个函数后,进行单独调试,对测试结果有错的,逐个修改,最后合并在一起进行调试,修改,直到正确无误为止。测试过程中,在函数四(查找课程信息)中无法将输入信息

4、同已有信息进行比较,经同学指点顺利解决; 1 主函数模块(主菜单)是为了定义一个菜单函数,其功能在于供使用者选择输出菜单功能选择。其运行结果如下图:运行正常2 课程信息录入功能是为了输入课程的详细信息包括课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息其运行结果如下图运行正常3课程信息浏览功能为了让使用者能浏览所有课程详细信息其运行结果如下图运行正常4排序:按开课学期排序为了让使用者按开课学期排序所有课程详细信息其运行结果如下图运行正常5查询功能:按课程名称查询是为了使用者按课程名来查询课程详细信息其运行结果如下图:运行正常6退出是为了使用者退出程序所作的功能其运行结

5、果如下图:运行正常 调试方法:先将主函数完毕,在分别加入录入函数、输出函数、查找函数、保存等模块后再调试。无错之后编译运行。 遇到的主要问题及解决方法:(1)忘记加分号。(2)忽略了“+”与“+”的区别及n与n的区别。(3) scanf ( %d%d, &a, &b);输入时,不能用逗号作两个数据间的分隔符,如下面输入不合法:6,9输入数据时,在两个数据之间以一个或多个空格间隔,也可用回车键(4)switch 语句中漏写break 语句。五、核心源程序清单和执行结果:#includestdlib.h /*标准输入、输出头文件*/#includewindows.h /*包含字符串函数处理头文件*

6、/#includestring.h /*包含动态存储与释放函数头文件*/struct subinfint num; /*定义课程编号*/char name20; /*课程名称*/ char feat20; /*课程性质*/ int ttime; /*定义总学时*/ int ltime; /*定义授课学时*/ int etime; /*定义上机学时*/ float score; /*学分*/ int term; /*开课学期*/ ;void index() void sub_add(); /*课程信息录入*/void sub_view(); /*信息浏览*/void taxis(); /*排序*

7、/void search(); /*对课程名称查询*/void quit(); /*退出系统*/int input; /*输入*/char input_1; do printf(nt 欢迎使用课程管理系统 ); printf(nt 1.课程信息录入 ); printf(nt 2.课程信息浏览 );printf(nt 3.按开课学期排序 );printf(nt 4.按课程名称查询(修改与删除) );printf(nt 5.退出本系统 );printf(nt请选择服务类型(1-5):);scanf(%d,&input);if(input!=1&input!=2&input!=3&input!=4&

8、input!=5) printf(nt输入错误!请重输入n);printf(nt按任意键返回.);input_1=getchar();input_1=getchar();if (input=5)quit(); while(input!=1&input!=2&input!=3&input!=4&input!=5&input!=6);switch (input) case 1:sub_add(); break; case 2:sub_view();break; case 3:taxis();break; case 4:search();break; void sub_add()void index

9、();void sub_add();int i=0,j;int inp;FILE *fp;char input;struct subinf subs;struct subinf sub_taxis100;printf(nt 课程信息录入 );printf(nnnt请输入课程信息nn);printf(t课程编号:);scanf(%d,&subs.num);printf(nt课程名称:);scanf(%s,subs.name);printf(nt课程性质:);scanf(%s,subs.feat);printf(nt总学时:);scanf(%d,&subs.ttime);printf(nt授课学时

10、:);scanf(%d,&subs.ltime);printf(nt实验或上机学时:);scanf(%d,&subs.etime);printf(nt学分:);scanf(%f,&subs.score);printf(nt开课学期:);scanf(%d,&subs.term);if (fp=fopen(sub.dat,rb)!=NULL) dofread(&sub_taxisi,sizeof(struct subinf),1,fp); i=i+1;while(!feof(fp);fclose(fp);for (j=0;j=i;j+)if (subs.num=sub_taxisj.num) printf(nnnt!该编号已经被使用);printf(nt按任意键重录入.);input=getchar();input=getchar();sub_add();break;if (fp=fopen(sub.dat,rb)=NULL) fp

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号