西华大学VB课程设计说明书.docx
- 文档编号:17337431
- 上传时间:2023-07-24
- 格式:DOCX
- 页数:20
- 大小:220.55KB
西华大学VB课程设计说明书.docx
《西华大学VB课程设计说明书.docx》由会员分享,可在线阅读,更多相关《西华大学VB课程设计说明书.docx(20页珍藏版)》请在冰点文库上搜索。
西华大学VB课程设计说明书
交通与汽车工程学院
课程设计说明书
课程名称:
计算机应用基础课程设计
课程代码:
6011339
题目:
打字测试软件
年级/专业/班:
2011级交通工程1班
学生姓名:
许明
学 号:
312011081202112
开始时间:
2012年4月1日
完成时间:
2012年4月12日
课程设计成绩:
学习态度及平时成绩(30)
技术水平与实际能力(20)
创新(5)
说明书(计算书、图纸、分析报告)撰写质量(45)
总分(100)
指导教师签名:
年月日
目录
摘要……………………………………………………………………………………………2
1引言…………………………………………………………………………………………3
1.1问题的提出………………………………………………………………………………3
1.2任务与分析………………………………………………………………………………3
2设计方案……………………………………………………………………………………4
2.1程序功能设计……………………………………………………………………………4
2.1.1程序功能描述…………………………………………………………………………4
2.1.2程序功能结构分析……………………………………………………………………4
2.2程序界面和代码设计……………………………………………………………………5
2.2.1工程设计框架…………………………………………………………………………5
2.2.2各界面及代码设计……………………………………………………………………5
3结果分析…………………………………………………………………………………13
结论…………………………………………………………………………………………13
致谢…………………………………………………………………………………………14
参考文献……………………………………………………………………………………15
摘要
随着计算机的普及,计算机高级语言已经运用到生活中的各个方面,本次课程设计使用VB语言作为开发工具,进行了打字测试软件的设计,该程序能提供打字练习环境,计算打字所花时间和正确率操作,计算结果简便明了、清晰可查阅,运行界面清晰实用,操作方便,易于实际处理运用。
关键词:
网络化计算机对策
1、引言
1.1问题的提出
随着计算机的普及,网络已经进入大众的家庭。
传统的打字测试软件存在着许多缺点,如界面单调,调动性差,操作性不强。
使用新型打字测试软件来测试我们的打字速度、正确性,具有相当多的优点,例如,界面清晰,有新意,操作简单,显示方式丰富,调动性强等。
这些优点能够极大的提高测试效率。
所以,有必要设计打字测试软件程序,实现对上述功能和优点的验证。
1.2任务与分析
本次课程设计的题目是“打字测试软件”,主要内容是合理使用VB中的随机文件操作,设计一简易的测试界面,计算显示用户打字所花的时间、正确率和成绩总体情况。
具体要求:
1、功能设计要求:
(1)、根据用户的需求提供不同难度级别的打字练习字符。
(2)、识别用户输入过程中的错误字符并标示出来。
(3)、统计用户的成绩比如打字速度、正确率等。
(4)、保存用户的打字成绩并且可以随时查看。
2、总体设计要求:
(1)、界面美观大方、可识别性强。
(2)、提供用户操作指南。
(3)、尽量避免因用户操作不当而出现的错误。
(4)、保证统计工作的正确性。
2、设计方案
首先根据题目要求设计合理界面,确定哪些控件会用到,要考虑到操作的方便性和美观性。
再按题目的功能要求编写对象的事件代码,并其逐一进行调试和修改。
2.1程序功能设计
2.1.1程序功能描述
(1)、难度级别选择
难度级别包括:
低级:
只产生大、小写字母字符串
中级:
产生大、小写字母和数字的字符串
高级:
产生大、小写字母、数字和特殊字符混合的字符串
(2)、判断输入的字符是否正确
正确:
不作提示
错误:
在对应位置标注一个特殊字符提示出来
(3)、统计正确率和所用时间
正确率:
正确输入的字符串/总输入的字符串
所用时间:
打字开始到结束经历时间
(4)、显示最近打字情况
(5)、显示使用说明
(6)、正确推出程序
2.1.2程序功能结构分析图
2.2程序界面和代码设计
2.2.1工程设计框架
在设计程序之前,应先布局整个工程。
2.2.2各界面及代码设计
(1)、Form1登陆主界面:
(2)、form1代码解释:
定义全局性变量
Dimtextnum%
Dimjsq%
Dimrightnum%,wrongnum%
单击开始,出现与打字难度相对应字符,并且开始计时
PrivateSubCommand1_Click()
Dimstrrnd$
Dimsgltemp!
Dimn%,c$
jsq=0
Text1.Text=""
Text2.Text=""
Text3.Text=""
Label4.Caption=0
Label6.Caption=""
lrgs=0
Randomize
IfOption1.Value=TrueThen
strrnd=""
sgltemp=Rnd
Ifsgltemp>0.5Then
Fori=1To65
n=Int((Rnd*26)+65)
c=Chr(n)
strrnd=strrnd&c
Nexti
Else
Fori=1To65
c=Chr(Int((Rnd*26)+97))
strrnd=strrnd&c
Nexti
EndIf
ElseIfOption2.Value=TrueThen
strrnd=""
Fori=1To65
Do
n=Int(Rnd*58)+65
LoopUntil(n>=65Andn<=90)Or(n>=97Andn<=122)
c=Chr(n)
strrnd=strrnd&c
Nexti
ElseIfOption3.Value=TrueThen
strrnd=""
Fori=1To65
Do
n=Int(Rnd*75)+48
LoopUntil(n>=65Andn<=90)Or(n>=97Andn<=122)Or(n>=48Andn<=57)
c=Chr(n)
strrnd=strrnd&c
Nexti
EndIf
Timer2.Enabled=True
Text1.Text=strrnd
Text2.SetFocus
textnum=textnum+1
Command1.Enabled=False
Command2.Enabled=True
Command3.Enabled=True
EndSub
统计输入字符的正确个数和错误个数,并读入成绩
PrivateSubCommand2_Click()
rightnum=0
wrongnum=0
IfLen(Text2.Text)<>0Then
Timer2.Enabled=False
Fori=1ToLen(Text2.Text)
IfMid(Text1.Text,i,1)=Mid(Text2.Text,i,1)Then
rightnum=rightnum+1
Else
wrongnum=wrongnum+1
EndIf
Nexti
Label4.Caption=jsq
Label6.Caption=(Int((rightnum/(wrongnum+rightnum))*10000))/100
Command1.Enabled=True
Command2.Enabled=False
Open"score.txt"ForAppendAs#1
Print#1,"第";textnum;"次的成绩";(Int((rightnum/(wrongnum+rightnum))*10000))/100;"%","第";textnum;"次所用时间";jsq;"秒"
Close#1
Else
MsgBox"请在相应位置输入相应字符,进行测试"
EndIf
EndSub
显示测试者的总成绩
PrivateSubCommand3_Click()
Form3.Show
EndSub
显示打字测试软件使用说明
PrivateSubCommand4_Click()
Form2.Show
EndSub
结束测试,退出程序
PrivateSubCommand5_Click()
End
EndSub
预先在程序所在文件夹中兴建一个记事本,用于读入、读出成绩
PrivateSubForm_Load()
Open"score.txt"ForOutputAs#1
Close#1
EndSub
当单击打字难度后,能够单击开始,进行测试
PrivateSubOption1_Click()
Command1.Enabled=True
EndSub
PrivateSubOption2_Click()
Command1.Enabled=True
EndSub
PrivateSubOption3_Click()
Command1.Enabled=True
EndSub
判断输入字符是否正确,若正确,不作标注;若错误,在错误字符下标注*
PrivateSubText2_KeyPress(KeyAsciiAsInteger)
Staticsrgs%
IfKeyAscii<>8Then
srgs=srgs+1
IfMid(Text1.Text,srgs,1)=Chr(KeyAscii)Then
Text3.Text=Text3.Text&""
Else
Text3.Text=Text3.Text&"*"
EndIf
Else
srgs=srgs-1
Ifsrgs<>0Then
Text3.Text=Left(Text3.Text,srgs)
EndIf
EndIf
EndSub
显示打字时间
PrivateSubTimer2_Timer()
jsq=jsq+1
Label4.Caption=jsq
EndSub
(3)、Form3界面:
(用于查看测试者成绩)
(4)、Form3代码解释:
将测试时在程序所在文件夹中读入的成绩情况显示在Form3的方框中
PrivateSubCommand1_Click()
DimwAsString
Open"score.txt"ForInputAs1
DoWhileNotEOF
(1)
LineInput#1,w
Text1.Text=Text1.Text+Chr(13)+Chr(10)+w
Loop
Close#1
EndSub
显示测试时的窗体
PrivateSubCommand2_Click()
Form1.Show
Form3.Hide
EndSub
PrivateSubForm_Load()
Text1.Text=""
EndSub
(5)、Form2界面:
(用于显示打字测试软件使用说明)
(6)、当打字难度选择低级时界面如下图:
(7)、当打字难度选择中级时界面如下图:
(8)、当打字难度选择高级时界面如下图:
(9)、当点击使用说明后界面如下图:
3、结果分析
通过体验打字测试软件,可以及时测试了解自己的打字水平,对自己的打字速度和正确率有一个大概的认识,从而及时采取相应的措施,提高自己的打字能力。
通过运行程序,本次课程设计基本达到了预期要求,但也存在着一些不足,比如打字时参考字符串容易看混淆,未能加载更多字符串用于测试,测试过程中,大多依赖于鼠标完成。
结论
在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。
在整个设计中我懂得了许多东西,大大提高了自己的动手能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。
虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次程序设计的最大收获和财富,使我终身受益。
当然,我也深刻地体会到从理论到实践是很难的过程,特别是在设计成绩储存和读取的代码时,遇到很大的困难,但最后还是通过上网、与同学深入讨论后,得以解决。
而在怎么样写出查看成绩时,则想出了一个看视比较笨的办法(借助Form3,在Form3上显示),但是确比较方便、实用。
设计时由于自己的粗心大意带来的错误也不少,所以以后再编程时一定会多加注意这方面的问题。
在编程的过程中学到了很多新的东西,例如:
怎样将书本上的知识运用于实践,怎样才能用最简单的代码表达出自己的想法。
这样也以巩固了以前所学的很多知识,例如对timer事件的使用等。
通过本次的程序设计设计,要吸取一定的经验,在以后的学习和工作当中就要更加的认真仔细,尽量不让不该发生的错误发生,也更应该增加实践经验和灵活的思维方法,当然,努力学习还是首要的任务,因为只有有了很牢固的知识后才能让我们做什么事都游刃有余,胸有成竹。
虽然,在设计的过程中遇到了很多的问题,最后每个问题都得到解决的时候,有种如释重负的感觉,心里充满了成就感。
此外,我还得出一个结论:
知识必须通过应用才能实现其价值!
有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。
致谢
这次能够顺利的完成这次课程设计,首先我要感谢教会我用VB语言和在课程设计指导我的滕艳琼老师,是她在我每次感到困难的时候给予我最大的帮助,还要感谢那些在设计的时候向我提供意见的同学们,当然还要感谢学校提供这么好的学习环境,让我们能够顺利的完成这次课程设计,感谢我的父母和朋友们给予我的物质和精神上的鼓励和支持。
参考文献
[1]杨明广.王秀华Visualbasic程序设计教程.中国科学技术出版社,2006.11,21世纪教材
[2]王秀华.余见坤.Visualbasic程序设计上机和级考实训教程。
中国科学技术出版社,2006.1,21世纪教材
[3]龚沛曾.Visualbasic程序设计简明教程(第二版).高等教育出版社,2003
[4]曾强聪.编Visualbasic程序设计教程。
清华大学出版社,2004
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西华 大学 VB 课程设计 说明书
![提示](https://static.bingdoc.com/images/bang_tan.gif)