考试系统课程设计报告.doc_第1页
考试系统课程设计报告.doc_第2页
考试系统课程设计报告.doc_第3页
考试系统课程设计报告.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

visual basic课 程 设 计 报 告所属课程名称:visual basic程序设计课程设计题目:考试系统 课程设计难度:四星课程设计时间:2012.2.27 3.23学 号:姓 名: 0 南京理工大学机械工程学院二一二年三月一、 程序功能 (1)、运行程序时,首先显示主界面。单击“单选题”、“多选题”、“判断题”、“填空题”四个按钮之一,会出现不同题型的窗口。 (2)、单选题、多选题、判断题和填空题窗体上有前一题、下一题、查看成绩、退出四个按钮。用户看完题后作答,可在任意时刻点击查看成绩按钮,会出现对话框,显示此时答对题数。按退出按钮,返回主菜单。窗体上会显示已答题数和总题数。 (3)、单击前一题、后一题会切换题目,若已位于第一题和最后一题,会弹出对话框,给出提示信息。二、 课程设计的详细设计 功能描述及设计思路 本程序实现以下五部分功能:1、读取文件,获得题目;2、记录正确答案;3、记录用户答案;4、比对答案;5、得出成绩。分别实现各部分功能即可完成整个程序。在窗体load事件中获得题目和答案,在后续操作中记录用户答案,单击查询按钮后,比对答案,获得成绩。不同按钮执行不同过程,实现不同功能。三、 程序调试过程 【困难1】读取数据库文件及逐条显示在窗体上。 【解决办法】通过查阅课本,编写课本给的样例程序,学习用opendatabase语句打开数据库,并用movenext和moveprevious方法移动记录,逐条显示题目和答案。 【困难2】保存用户答案。 【解决办法】 通过向老师请教,用数组保存用户答案。通过多次调试,确定数组记录的位置,使之正确保存用户答案。 【困难3】比对答案和显示成绩。 【解决办法】 查阅上学期课本,复习数组的用法。在各窗体的load事件中,用数组保存正确答案,单击查看成绩按钮,会比较用户答案和正确答案,若正确则成绩加1,得出成绩。四、 更上一层楼样例程序在运行时,若退出该题型,答案会被清空。本程序中,用户可在做当前题未做完时退出去做其他题型,其答案会被保留,用户可在任意时刻后回到该题型继续做。五、 课程设计总结 (1)、程序不够简洁。由于事先没有进行细致规划,导致在编写时没有全局概念,可以重复使用的变量却多次定义,致使程序变量有点乱。 (2)、没有使用过程。单纯在事件中编写事件,不简洁。 (3)、功能上,不能在主菜单中反馈本次测验总成绩。六、 源程序代码(以单选题为例)(1)打开文件,获得题目set tiku = opendatabase(app.path & tiku.mdb, false, true, ;pwd=tiku) 打开文件,加载到内存 set recset = tiku.openrecordset(xz3)dim a(0 to 2) as string n = n + 1 x = recset!question a(0) = recset!ans1 a(1) = recset!ans2 a(2) = recset!ans3 label1.caption = x option1(0).caption = (a) & a(0) option1(1).caption = (b) & a(1) option1(2).caption = (c) & a(2) label3.caption = 第 & n & 题 label4.caption = (已做 & m & 题,共11题)(2)、记录用户答案 if option1(0).value then ans1(n) = 100 if option1(1).value then ans1(n) = 010 if option1(2).value then ans1(n) = 001(3)、比对答案获得成绩dim p as integer do while p = 10 比对答案 if tans1(p + 1) = ans1(p + 1) then socer = socer + 1 p = p + 1 loop msgbox 共11题答对 & socer & 题, 64, 成绩查询 socer = 0 重置成绩(4)、显示已做题答案if ans1(n) = then option1(0).value = false 此题未做 option1(1).value = false option1(2).value = false else if ans1(n) = 100 then option1(0).value = true 显示前一题答案 if ans1(n) = 010 then option1(1).value = true if ans1(n) = 001 then option1(2).value = true end if二、心得体会 (1)、纸上得来终觉浅。真正掌握知识要在实际中多运用,多操练。只有会运用学会的理论知识解决实际问题才算真正掌握。 (2)、困难会有的,但只要不灰心丧气,敢于面对,敢于解决,遇到问题不能急躁,要分析问题解决问题。多想办法就能克服困难,取得进步。 (3)、一个大的任务要会分割成小

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论