在线答题模块课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《在线答题模块课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 在线 答题 模块 课件
- 资源描述:
-
1、MySchool 在线答题模块在线答题模块1 问题描述MySchool 考试管理系统在线答题模块:考试管理系统在线答题模块:1、学员登录学员登录 2、选题选题 3、答题答题 4、查看答题卡查看答题卡 5、自动阅卷评分自动阅卷评分要求完成在线答题模块相关界面设计及功能实现要求完成在线答题模块相关界面设计及功能实现2MySchool 数据库结构介绍数据库由教员提供数据库由教员提供 在线答题模块使用到的数据表在线答题模块使用到的数据表3问题分析-1需要使用到的数据表:nStudent:学员信息表nSubject:科目信息表nQuestion:题目信息表4问题分析-2主要功能分析1、登录n学员身份登录
2、,用户验证n记录登录的用户名和登录类型2、在线答题n选题:选择试题的科目n抽题:随机抽取20道题n答题:答题时间为20分钟,在程序中保存答案n修改答案:通过答题卡返回修改n判题:计算得分n结果显示:分数、分数条、表情、评语5问题分析-3主要界面分析n登录界面:与上机课的相同n学员主界面n选题界面n答题界面n答题卡界面n答题结果界面6问题分析-4辅助类分析nDBHelper 类:数据库连接字符串、数据库连接对象nUserHelper 类:当前登录用户名、登录类型nQuizHelper 类:1、totalSeconds:整型,答题限制时间 2、remainSeconds:整型,剩余时间 3、all
3、QuestionIds:整型数组,所有题目 Id 4、selectedStates:布尔型数组,表示题目是否已被抽中 5、questionNum:整型,题目数量 6、selectedQuestionIds:整型数组,选出的题目 Id 7、correctAnswers:字符串型数组,标准答案 8、studentAnswers:字符串型数组,学员用户的答案7问题分析-4QuizHelper 类中几个数组的关系:selectedStates题目是否被抽中题目是否被抽中0123456allQuestionIds所有题目所有题目 Id1345911100123456selectedQuestionIds
4、选出的题目选出的题目 Id 012correctAnswers标准答案标准答案012studentAnswers学员用户的答案学员用户的答案012falsefalsefalse falsefalsefalsefalse3truetrue410true未回答未回答未回答未回答未回答未回答DBC将该科目所有题目的将该科目所有题目的 Id 取出取出 题目状态都是未选中题目状态都是未选中随机抽随机抽 3 道题,道题,索引索引1、2、5被抽中被抽中取出抽中试题的标准答案取出抽中试题的标准答案用户答案都置为用户答案都置为“未回答未回答”8难点分析-1随机抽取试题:Random random=new Ran
5、dom();int questionIndex=0;/随机产生的问题的索引值随机产生的问题的索引值int i=0;while(i QuizHelper.questionNum)questionIndex=random.Next(QuizHelper.allQuestionsIds.Length);/如果没有被选中过,可以选择如果没有被选中过,可以选择 if(QuizHelper.selectedStatesquestionIndex=false)/随机数对象随机数对象生成小于指定最大值的非负随机数生成小于指定最大值的非负随机数9难点分析-2每次显示一道题目:n答题窗体增加 questionIn
6、dex 字段,记录当前显示的题目的索引值n根据selectedQuestionIds,利用 DataReader 读取题目信息10难点分析-3倒计时的时钟显示:QuizHelper.remainSecond-;minute=QuizHelper.remainSecond/60;second=QuizHelper.remainSecond%60;/控制显示格式控制显示格式lblTimer.Text=string.Format(0:00:1:00,minute,second);控制显示两位数字控制显示两位数字11难点分析-4答题卡显示答案:n用20个标签显示答案n将题目的索引写在标签的 Tag 中
7、private void AnswerCardForm_Load(object sender,EventArgs e)int index=0;foreach(Control item in this.Controls)if(item is Label)/如果是标签如果是标签 index=Convert.ToInt32(item.Tag);item.Text=QuizHelper.studentAnswersindex;/循环每一个控件循环每一个控件判断控件是不是标签判断控件是不是标签12难点分析-5从答题卡返回修改答案:n用20个按钮显示题号n将题目的索引写在 Tag 中n20个按钮共用一个
8、Click 事件处理方法private void btnQuestion_Click(object sender,EventArgs e)/获得当前点击的按钮对应的题目索引获得当前点击的按钮对应的题目索引 int questionIndex=Convert.ToInt32(Button)sender).Tag);/自定义方法,打开答题窗体自定义方法,打开答题窗体 ShowAnswerQuestionForm(questionIndex);13难点分析-6颜色条表示分数:/计算得分计算得分int score=correctNum*100/QuizHelper.questionNum;lblMar
9、k.Text=score.ToString()+分分;/确定显示分数的确定显示分数的label的宽度的宽度lblStudentScoreStrip.Width=lblFullMarkStrip.Width*score/100;/根据不同的得分,显示不同的颜色根据不同的得分,显示不同的颜色if(score 60)lblStudentScoreStrip.BackColor=Color.Red;lblComment.Text=该好好复习啦该好好复习啦!;/14阶段划分第一阶段(20分钟)n设计学员主窗体,实现学员登录功能第二阶段(30分钟)n设计选题窗体,实现部分辅助功能第三阶段(80分钟)n实现
展开阅读全文