书签 分享 收藏 举报 版权申诉 / 44
上传文档赚钱

类型在线答题模块课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4668712
  • 上传时间:2022-12-30
  • 格式:PPT
  • 页数:44
  • 大小:434.98KB
  • 【下载声明】
    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实现

    10、随机抽题功能第四阶段(80分钟)n设计答题窗体,实现答题功能第五阶段(60分钟)n设计答题卡窗体,实现答案显示和返回修改答案功能第六阶段(30分钟)n设计答题结果显示窗体,实现判题功能15第一阶段第一阶段(20分钟)设计学员主窗体,实现学员登录功能要求学员自己动手操作,教员巡视,解答学员提出的问题16阶段检查针对第一阶段抽查学员的操作结果教员给出点评或集中演示难点部分17第一阶段结果演示第一阶段设计的学员主窗体:18第二阶段第二阶段(30分钟)设计选题窗体,实现部分辅助功能要求学员自己动手设计选题窗体,实现科目组合框、退出答题的功能教员巡视,解答学员提出的问题19阶段检查针对第二阶段抽查学员的

    11、编码结果教员给出点评或集中演示难点部分20第二阶段结果演示选题窗体:21第二阶段标准代码演示添加科目名称到科目组合框中:string sql=SELECT SubjectName FROM Subject;try SqlCommand command=new SqlCommand(sql,DBHelper.connection);DBHelper.connection.Open();/执行查询执行查询 SqlDataReader dataReader=command.ExecuteReader();/循环添加到组合框中循环添加到组合框中 while(dataReader.Read()cboSu

    12、bjects.Items.Add(dataReaderSubjectName.ToString();dataReader.Close();/22第三阶段第三阶段(80分钟)实现随机抽题功能要求学员自己动手操作,教员巡视,解答学员提出的问题23阶段检查针对第三阶段抽查学员的编码结果抽查学员编写的完整代码,要求学员上台讲解,并演示运行结果教员给出点评24第三阶段标准代码演示随机抽题:自定义 SetSelectedQuestionIds()方法Random random=new Random();int questionIndex=0;/随机产生的问题的索引值随机产生的问题的索引值/抽取每一道题并保

    13、存抽出的题目的抽取每一道题并保存抽出的题目的Idint i=0;/记录抽取了几道题记录抽取了几道题while(i 0)QuizHelper.remainSeconds-;minute=QuizHelper.remainSeconds/60;second=QuizHelper.remainSeconds%60;/以以“分分:秒秒”的形式显示时间的形式显示时间 lblTimer.Text=string.Format(0:00:1:00,minute,second);else /提示时间到,转到结果显示界面提示时间到,转到结果显示界面 32第五阶段第五阶段(60分钟)1、设计答题卡窗体 2、实现答案

    14、显示和返回修改答案功能要求学员自己动手操作,教员巡视,解答学员提出的问题33阶段检查针对第五阶段抽查学员的编码结果抽查学员编写的完整代码,要求学员上台讲解,并演示运行结果教员给出点评34第五阶段窗体效果演示答题卡窗体:35第五阶段标准代码演示-1窗体加载时,显示答案:/窗体的窗体的 Load 事件事件private void AnswerCardForm_Load(object sender,EventArgs e)int index=0;foreach(Control item in this.Controls)if(item is Label)/如果是标签如果是标签 index=Conve

    15、rt.ToInt32(item.Tag);if(index!=-1)item.Text=QuizHelper.studentAnswersindex;tmrCostTime.Start();/启动倒计时的计时器启动倒计时的计时器36第五阶段标准代码演示-2点击题号,返回修改答案n20个题号按钮共用一个 Click 事件处理方法private void btnQuestion_Click(object sender,EventArgs e)/获得当前点击的按钮对应的题目索引获得当前点击的按钮对应的题目索引 int questionIndex=Convert.ToInt32(Button)send

    16、er).Tag);/打开答题窗体打开答题窗体 AnswerQuestionForm answerQuestionForm =new AnswerQuestionForm();/设置答题窗体显示的题目索引设置答题窗体显示的题目索引 answerQuestionForm.questionIndex=questionId;answerQuestionForm.MdiParent=this.MdiParent;answerQuestionForm.Show();this.Close();37第六阶段第六阶段(30分钟)设计答题结果显示窗体,实现判题功能要求学员自己动手操作,教员巡视,解答学员提出的问题

    17、38阶段检查针对第六阶段抽查学员的编码结果抽查学员编写的完整代码,要求学员上台讲解,并演示运行结果教员给出点评39第六阶段窗体效果演示结果显示窗体:40第六阶段标准代码演示-1显示分数:private void QuizResultForm_Load(object sender,EventArgs e)int correctNum=0;/答对的题目数量答对的题目数量 for(int i=0;i QuizHelper.questionNum;i+)if(QuizHelper.studentAnswersi=QuizHelper.correctAnswersi)correctNum+;/计算得分计

    18、算得分 int score=correctNum*100/QuizHelper.questionNum;lblMark.Text=score.ToString()+分分;/确定分数条和评语确定分数条和评语 /41第六阶段标准代码演示-2显示分数:private void QuizResultForm_Load(object sender,EventArgs e)/计算分数计算分数./确定显示分数的确定显示分数的label的宽度的宽度 lblStudentScoreStrip.Width=lblFullMarkStrip.Width*score/100;/根据不同的得分,显示不同的颜色根据不同的

    19、得分,显示不同的颜色 if(score=60&score 85)/42总结巩固的知识点:n条件判断语句:if、嵌套 if、switchn循环结构:while、for、foreachn一维数组:整型、布尔型、字符串型n自定义方法:抽取试题、获取标准答案等n常用的 WinForms 控件:Label、TextBox、ComboBox、RadioButton、Button、PictureBox、ImageList、Timern静态字段实现窗体间的数据传递:QuizHelper、DBHelper、UserHelpernADO.NET 操作数据库:Connection、Command、DataReader43Thank you44

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:在线答题模块课件.ppt
    链接地址:https://www.163wenku.com/p-4668712.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库