《VB小型测试系统.pdf》由会员分享,可在线阅读,更多相关《VB小型测试系统.pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一.实验要求及说明:1自己独立完成,最终提交课程设计报告和实验成果。2.对各个系统实现功能进行分析并设计好系统界面,要求界面设计美观方便。3课程设计报告格式:封面、题目、时间地点、要求、内容、详细步骤和过程、总结。1)功能描述对系统要实现的功能进行确切的描述。2)概要设计根据功能分析,建立系统的体系结构,即将整个系统分解成若干子模块,用框图表示各功能模块之间的接口关系3)详细设计详细说明各功能模块的实现过程,所用到的算法、技巧等(附上代码)。4)效果及存在问题说明系统的运行效果(附上界面图形)、存在哪些不足以及预期的解决办法。5)心得:谈谈在课程设计过程中的心得体会。4指定时间必须在实验机房上
2、机。5最终成绩包括平时成绩(30)和最终考核成绩(70)。6实验设计内容必须以老师指定的题目为准,老师指定的题目为最终检查的依据。二.实验内容:小型测试系统的设计与实现要求能够随机生成20 道数学计算题(要求有加,减,乘,除运算,规定操作数的个数),对用户结果进行判断,并能最终计算总成绩,要求用户在规定的时间内做完试题,超时自动终止并给出成绩。二.实验步骤:1)功能描述1.点击“开始考试”,时钟及进度条开始工作,list1 中给出 20 道计算题。2.在 list1 中选择一题,用户将答案填入text2 中,点击“填写答案”,用户给出的答案将按顺序显示在list2 中。3.测试时间结束时,点击
3、“正确答案”,正确答案将显示在list3 中,点击“本次测试得分”,用户测试得分显示在text2 中。2)概要设计3)详细设计Form2代码:Dim i,green,blue,red As Integer Private Sub Command1_Click()Form1.Show Form2.Hide End Sub Private Sub Form_Load()FontBold=True FontName=楷体 _GB2312 FontSize=20 Randomize For i=1 To 50 red=Int(255*Rnd+1)green=Int(255*Rnd+1)blue=Int
4、(255*Rnd+1)CurrentX=100+i CurrentY=100+i ForeColor=RGB(red,green,blue)Print 祝你考试成功!Next i End Sub Form1代码:填写答案显示答案正确答案给出总分测试题程 序 开 始 是 由form2 显示的欢迎界面,在窗体左上方显示“祝你考试成功!”,每次点击窗体,这几个字的颜色都会随机改变,且设有文字重影。点击 command1,form1 显示,form2隐藏Dim question(19),answer(19)As String Dim i As Integer,j As Integer,k As Int
5、eger,X As Integer,Y As Integer,z As Integer,h As Integer Dim sum As Integer Private Sub Command1_Click()Text2.Text=Text2.Text answer(List1.ListIndex)=Text2.Text If(answer(List1.ListIndex)=question(List1.ListIndex)Then sum=sum+5 End If List2.AddItem(&List1.ListIndex+1&)&answer(List1.ListIndex)text2.T
6、ext=Command1.Enabled=False Text2.Enabled=False End Sub Private Sub Command2_Click()List3.Visible=True For i=0 To 19 List3.AddItem(&i+1&)&question(i)Next i End Sub Private Sub Command3_Click()Text1.Text=Val(sum)&分 End Sub Private Sub Command4_Click()点击 command4 后,进度条和时钟开始工作,界面中一部分控件可用,一部分控件可视Timer1.E
7、nabled=True ProgressBar1.Visible=True List1.Visible=True List2.Visible=True List3.Visible=True Command1.Visible=True 如 果 答 案的 序 号 与问 题 序 号一致,那么总 分 加 五分。由 于Index 属性是从0 开始,故List1.ListIndex 要加1 Command1.Enabled=False Command2.Visible=True Command2.Enabled=True Command3.Visible=True Command3.Visible=Tru
8、e Command3.Enabled=False Command5.Visible=True Text1.Visible=True Text1.Locked=True Text2.Visible=True Text2.Enabled=False Label1.Visible=True Label2.Visible=True End Sub Private Sub Form_Load()ProgressBar1.Visible=False List1.Visible=False List2.Visible=False List3.Visible=False Command1.Visible=Fa
9、lse Command2.Visible=False Command3.Visible=False Command5.Visible=False Text1.Visible=False Text2.Visible=False Label1.Visible=False Label2.Visible=False Dim a As String For i=0 To 19 Randomize X=Int(Rnd()*(100-1)+1)Y=Int(Rnd()*(100-1)+1)z=Int(Rnd()*(100-1)+1)k=Int(Rnd()*(100-1)+1)h=Int(Rnd()*(100-
10、1)+1)question(i)=h/X-Y+z*k a=(&i+1&)&h&/&X&-&Y&_+&z&*&k&=List1.AddItem a Print Next i 随机出题Timer1.Enabled=False ProgressBar1.Enabled=False End Sub Private Sub List1_Click()If List1.Selected(List1.ListIndex)=True Then Command1.Enabled=False Text2.Enabled=True End If End Sub Private Sub Text2_Change()I
11、f Text2.Text Then Command1.Enabled=True End If End Sub Private Sub Timer1_Timer()Timer1.Interval=1 ProgressBar1.Value=ProgressBar1.Value+2 If ProgressBar1.Value=5000 Then List1.Enabled=True Text2.Enabled=False Command1.Enabled=False Command2.Enabled=False Command3.Enabled=True Command4.Enabled=False Timer1.Enabled=False End If End Sub 时钟停止工作,一部分控件可用,一部分控件不可用4)效果及存在问题效果图程序存在问题:在随机产生20 道计算题中,只有数字是随机产生的,运算符号是固定的,没有实现完全意义上的“随机产生20 道题”。
限制150内