c++课程设计报告格式.docx
《c++课程设计报告格式.docx》由会员分享,可在线阅读,更多相关《c++课程设计报告格式.docx(14页珍藏版)》请在冰豆网上搜索。
c++课程设计报告格式
信息科学与技术学院
程序设计基础课程设计报告
题目名称:
校际运动会管理系统
学生姓名:
张晶
学号:
1102018
专业班级:
计科二学位
(1)班
指导教师:
郭理
2012年6月29日
目录
1课程设计题目与要求错误!
未定义书签。
1.1设计题目错误!
未定义书签。
1.2设计要求错误!
未定义书签。
2总体设计错误!
未定义书签。
(画出课题程序总体功能框架图并说明各个模块的功能)
3详细设计
3.1数据结构设计(或类设计)错误!
未定义书签。
(数据结构形式及说明或类结构形式及说明)
3.2主模块设计错误!
未定义书签。
画出各模块程序流程图;各个模块功能说明:
如函数功能、入口及出口参数说明,函数调用关系描述等或画出类中的各成员函数程序流程图;各个成员函数模块功能说明:
如函数功能、入口及出口参数说明,函数调用关系描述等。
4运行结果错误!
未定义书签。
(截图及说明)
5课程设计总结错误!
未定义书签。
参考文献
《c++程序设计》,谭浩强编著,清华大学出版社
1课程设计题目与要求
1.1设计题目
(1)信息初始化,输入:
N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数;
各项目名次取法有以下几种:
1.取前5名:
第1名得分7,第2名得分5,第3名得分3,第4名得分2,第5名得分1.
2.取前3名:
第1名得分5,第2名得分3,第3名得分2.
3.用户自定义:
各名次权值由用户指定。
(2)提醒用户填写比赛结果,输入各项目获奖运动员的信息。
(3)所有信息记录完毕后,用户可以查询各个学校的比赛成绩,生成团体总分报表,查看参赛学校信息和比赛项目信息等。
1.2设计要求:
(1)只能使用c/c++语言,源程序要有适当的注释,使程序容易阅读。
(2)至少采用文本菜单界面(如果能采用图形界面更好)
(3)学生可以自动增加新功能模块
2总体设计
主菜单流程图
N
↓
Y
4.记录个数
2.输入数据
5.退出
1.初始化
3.查询
主菜单
各模块功能如下:
1.初始化模块:
进行对学校数,男子项目,女子项目的值进行输入,以及各项目名次得分取值的选择;
2.数据输入模块:
输入学生姓名,学校,项目,性别,排名;
3.查询模块:
分为按学校,项目,学生查询,查询全部信息以及返回主菜单;
4.查询记录模块:
可以查询现共有记录条数以及个记录的字符长度;
5.退出程序。
3详细设计
3.1数据结构设计
structstudent
{
charname[10];//姓名10个字符
charschool[20];//学校名16个字符
charitem[10];//项目名10个字符
charsex[4];//性别4个字符
intposition;//排名2个字符
intmark;//得分2个字符
}stu[A];
整个程序只定义了一个结构体,即学生结构体,包含了姓名,学校,项目,性别,排名,得分。
3.2主模块设计
//设置的全局变量
inty=0,j,i,W,M,N,p[15],q[15],t;
//N-参赛学校总数
//M-男子竞赛项目数,
//W-女子竞赛项目数
//y是菜单的选项
//j是用户自定义项目权值的选项
//i是数据记录的个数
//p[15]是用于存放排名第几的数组
//q[15]是用于存放得分第几的数组
//t是循环计数器
//各个函数声明
voidface();//制作的界面函数
voidmenu();//菜单界面函数
voidestablish();//初始化函数
voidenter();//输入函数
voidsearch();//查询函数
voidsearch_by_item();//通过项目名查询的函数
voidsearch_by_school();//通过学校名查询的函数
voidsearch_by_student();//通过学生名查询的函数
voidsearch_by_all();//查询所有信息的函数
voidprinter_1();//报表格式1函数
voidprinter_2();//报表格式2函数
voidmark();//排名转换为分数
voiddefined_by_user();//用户自定义权值
voidset_stu();//输入信息的函数
voidbegin();//在一开始就运行的函数
intput_stu(intz);//输出第z个数据
voidreturn_record();//返回记录号
其中voidface();voidprinter_1();voidprinter_2();三个函数主要是输出界面,voidface()函数是主菜单界面,而voidprinter_1();voidprinter_2();分别是最后查询输出的报头和报表。
voidmenu();函数用do_while循环控制对变量n的输入是否正确。
如果正确进入switch循环,如果不正确则返回错误信息,并且重新输入。
其中n的值为1-5,分别通过五个函数voidestablish();voidenter();voidsearch();voidreturn_record();exit();执行以下五个模块:
1.初始化模块;2.数据输入模块;3.查询模块;4.查询记录模块;5.退出程序。
voidestablish();首先进行参赛学校总数,男子竞赛项目数,女子竞赛项目数的初始化,函数用do_while循环控制对变量j的输入是否正确。
如果正确进入switch循环,如果不正确则返回错误信息,并且重新输入。
其中j的值为1-3,因为j是全局变量,j是用户自定义项目权值的选项,如果j的值为1或2,在建立是通过j调用mark()函数对权值进行定义,如果j的值为3,则调用voiddefined_by_user();函数,用户可以自由定义权值。
voidenter();通过y变量控制输入前一定要初始化,输入时调用voidset_stu();函数,通过do_while判断是否继续输入信息。
voidsearch();函数用do_while循环控制对变量t的输入是否正确。
如果正确进入switch循环,如果不正确则返回错误信息,并且重新输入。
其中t的值为1-5,分别通过五个函数search_by_school();search_by_item();search_by_student();search_by_all();menu();执行以下五个功能:
1.按学校名查询;2.按项目查询;3.按学生查询;4.查询全部信息;5.返回主菜单。
voidsearch_by_item();voidsearch_by_school();voidsearch_by_student();三个函数
4运行结果
下图是1.主菜单的界面,2.用户自定义权值界面,3.初始化界面,
5课程设计总结