课 程 报 告
课 程 名 称: 程序设计实践
专 业 班 级 : 计算机类1304班
学 生 姓 名 : 唐林
学 号 : 201316920403
任 课 教 师 : 唐建国
学 期 :2013-2014学年第二学期
课程报告任务书
题 目标准化考试系统主要
内容1.建立一个InsertNode函数来实现插入试题的功能。2.建立一个AddNode函数来实现添加试题的功能。3.建立一个Change函数来实现对试题进行修改的功能。4.新建一个DeleteNode函数来实现对试题的删除。5.建立个printNode函数实现对试题的输出功能。6.建立一个Match函数来判断答案是否正确。7.建立answer函数实现随机选题并进行答题和统计得分功能。8.在主函数main中,使用switch函数让用户进行选择。任务
要求
一、对该考试系统进行需求分析,找出该系统需要哪些功能来实现,在每个功能中运用学过的算法来实现,每个功能用不同的函数来实现,确定函数之间调用的关系。
二、整个设计过程具体要求
(1)需求分析 对案例系统进行分析,设计出需要完成的功能,完善各个模块的调用关系;
(2)设计过程 进一步明确各模块调用关系,进一步完善模块函数细节(函数名、参数、返回值等)
(3)实现过程 养成良好的编码习惯、完成各个模块并进行测试,最终完成系统整体测试;
(4)总结阶段 按照要求完成系统设计和实现报告,并进行总结、答辩。成绩
评定报告撰写情况(30分)系统完成情况(30分)答辩情况(40分)总分内容20分规范程度5分程序测试5分基本功能20分扩展功能10分自述情况10分答辩情况30分成绩评定教师:
1 需求分析
该系统包括以下功能:
进行随机答题并判卷
显示试题所有内容
插入试题
添加试题
自主选题并判卷
修改试题
删除试题
退出系统
2 概要设计
2.1整体框架图
图2-1-12.2 函数功能图
2.2.1 随机答题并判卷功能图
N
Y
图2-2-1
2.2.2 修改试题功能图
N
N
Y
N
图2-2-2
2.2.3 删除试题功能图
Y
N
图2-2-3
2.3 自定义函数
返回值函数名参数表函数功能StatusSaveNodeint &N将试题存入文件中StatusReadNodeint &N 从文件中读取试题StatusInsertNodeint &N向试题库中插入试题StatusChangeint &N修改试题StatusDeleteNodeint &N删除试题voidprintNode(TestNode p,int n)输出试题StatusMatch(TestNode p,char m)检查答案voidanswer(int sum,int N)随机进行答题并判卷voidOtheranswer(int N,int s)自主选题作答并判卷StatusAddNodeint &N 向题库中添加试题
3 详细设计Status AddNode(int &N) //添加试题内容
{
printf("如果不添加了试题了,在题目输入“*”结束!\n");
while(1){
printf("请输入所要插入题题目、题干和选项:\n");
printf("请输入题目:");
gets(Testquestions[N].subject);
if(strcmp(Testquestions[N].subject,"*")==0)
break;
printf("请输入选项A:");
gets(Testquestions[N].option1);
printf("请输入选项B:");
gets(Testquestions[N].option2);
printf("请输入选项C:");
gets(Testquestions[N].option3);
printf("请输入选项D:");
gets(Te