文档介绍:学号: 09050011
C语言课程设计
设计说明书
课程管理系统
起止日期: 2010 年 06 月 21 日至 2010年 06 月 27 日
学生姓名:
班级: 09级通信工程(1)班
成绩:
指导老师(签字):
电子信息工程系
2010年6月21日
天津理工大学中环信息学院
目录
一、设计目的```````````````````````````````````````````````````````3
二、总体设计```````````````````````````````````````````````````````3
三、详细设计```````````````````````````````````````````````````````3
四、调试与测试`````````````````````````````````````````````````````4
五、核心源程序清单`````````````````````````````````````````````````8
六、仍存在的问题`````````````````````````````````````````34
七、心得体会`````````````````````````````````````````````````````` 34
一、设计目的
假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。试设计学生选修课程系统,使之能提供以下功能:
1、课程信息录入功能(课程信息用文件保存)
2、课程信息浏览功能
3、排序:按开课学期排序
4、查询功能:
按课程名称查询
5、课程修改、删除(可选项)
二、总体设计(程序设计组成框图、流程图)
课程修改及删除
课程查询
课程排序
课程信息浏览
课程信息录入
课程管理系统
退出系统
void search
void taxis
void sub_view
void sub_add
Input 5
Input 4
Input 3
Input 2
Input 1
N是1-5
Input n(1-5)
start
三、详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)
宏定义,文件包含,定义结构体变量;
从主函数进入;
显示程序进入界面;
调用函数一(录入课程详细信息):键盘上输入课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息
调用函数二(浏览课程详细信息):在键盘上输入课程名,显示对应课程的详细信息。
调用函数三(排序:按开课学期排序):
调用函数四(查询课程详细信息):显示所有输入的课程信息;
退出;
四、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施
完成每一个函数后,进行单独调试,对测试结果有错的,逐个修改,最后合并在一起进行调试,修改,直到正确无误为止。测试过程中,在函数四(查找课程信息)中无法将输入信息同已有信息进行比较,经同学指点顺利解决;
1 主函数模块(主菜单)
是为了定义一个菜单函数,其功能在于供使用者选择输出菜单功能选择。
其运行结果如下图:
运行正常
2 课程信息录入功能
是为了输入课程的详细信息包括课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息
其运行结果如下图
运行正常
3课程信息浏览功能为了让使用者能浏览所有课程详细信息
其运行结果如下图
运行正常
4排序:按开课学期排序为了让使用者按开课学期排序所有课程详细信息
其运行结果如下图
运行正常
5查询功能:按课程名称查询是为了使用者按课程名来查询课程详细信息
其运行结果如下图:
运行正常
6退出
是为了使用者退出程序所作的功能
其运行结果如下图:
运行正常
调试方法:
先将主函数完毕,在分别加入录入函数、输出函数、查找函数、保存等模块后再调试。无错之后编译运行。
遇到的主要问题及解决方法:
(1)忘记加分号。
(2)忽略了“+”与“++”的区别及\n与n的区别。
(3) scanf ( "%d%d", &a, &b);输入时,不能用逗号作两个数据间的分隔符,如下面输入不合法:6,9输入数据时,在两个数据之间以一个或多个空格间隔,也可用回车键
(4)switch 语句中漏写break 语句。
五、核心源程序清单和执行结果:
#include"" /*标准输入、输出头文件*/
#inc