《计算机基础实验VB》期末考试.docx
- 文档编号:5126031
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:27
- 大小:207.81KB
《计算机基础实验VB》期末考试.docx
《《计算机基础实验VB》期末考试.docx》由会员分享,可在线阅读,更多相关《《计算机基础实验VB》期末考试.docx(27页珍藏版)》请在冰豆网上搜索。
《计算机基础实验VB》期末考试
2010级《计算机基础实验(VB)》期末考试
1、考试形式:
开卷机试
2、考试时间:
60分钟
3、考试题目:
在以下30道试题中抽取3道(易:
25分、中:
30分、难:
45分各一道)。
每人的题号由程序自动抽取,不得擅自更改。
4、试题上交时需注意事项:
(1)建立一个文件夹(以自己的班级学号姓名命名,如“编导2001005班**号***”),文件夹中包含3个子文件夹,子文件夹的名称为所抽取试题的题号(如某生抽取试题题号为4、15、28,则3个子文件夹的名称分别为“4”、“15”、“28”),将所抽取试题的程序依次对应放入相应的文件夹。
(2)程序设计完成后,除按要求保存外,还需生成相应的可执行文件。
(“文件”菜单——“生成工程.exe”)
(3)上交前确保每个题目的程序都保存无误,是否是程序的快捷方式。
重点检查是否每个子文件夹中都有相应的工程文件(*.vbp)和窗体文件(*.frm)。
最后提醒:
任何将外部存储设备连上电脑的行为都视同为作弊,期末考试成绩以0分计。
附:
考试题目
难度:
易(1--10)
1、在代码中自动加载一个标签的标题和文本框的文本,单击“修改”按钮后交换标签中的标题和文本框中的文本。
PrivateSubCommand1_Click()
s=Label1.Caption
Label1.Caption=Text1.Text
Text1.Text=s
EndSub
PrivateSubForm_Load()
Label1.Caption="标签"
Text1.Text="文本框"
EndSub
2、求一次方程的根
输入系数a、b的值,求一次方程ax+b=0的根,效果图如下
PrivateSubCommand1_Click()
DimaAsSingle
DimbAsSingle
DimxAsSingle
a=Text1.Text
b=Text2.Text
x=(-b)/a
Text3.Text=x
EndSub
PrivateSubCommand2_Click()
Text1.Text=""
Text2.Text=""
Text3.Text=""
EndSub
3、信息框设计
设计如下对话框,选择“是”则操作正确,选择“否”则提示重新操作。
PrivateSubCommand1_Click()
DimintTmpAsInteger
intTmp=MsgBox("此项操作正确吗?
",vbYesNo+vbQuestion,"提示")
IfintTmp=vbYesThen
MsgBox"操作正确!
",vbOKOnly+vbInformation,"恭喜"
Else
MsgBox"重新操作!
",vbOKOnly+vbCritical,"不好意思哦"
EndIf
4、设计窗体及控件如图所示,在文本框中输入内容,然后单击命令按钮,在文本框中输入的内容同时显示在标签和命令按钮上。
PrivateSubCommand1_Click()
Label1.Caption=Text1.Text
Command1.Caption=Text1.Text
EndSub
5、设计一个收款计算程序如图所示,用户输入商品的“单价”,“数量”和“折扣”后,单击“计算”按钮将显示“应付款”,单击“清除”按钮清除文本框中所有数据。
PrivateSubCommand1_Click()
DimaAsSingle,bAsSingle,cAsSingle,dAsSingle
a=Val(Text1.Text)
b=Val(Text2.Text)
c=Val(Text3.Text)
d=a*b*c
Text4.Text=Str(d)
EndSub
PrivateSubCommand2_Click()
Text1.Text=""
Text2.Text=""
Text3.Text=""
Text4.Text=""
EndSub
6、理解大小写转换函数。
在文本框中输入英文字母,按“转大写”按钮,文本变为大写,按“转小写”按钮,文本变为小写。
单击“退出”按钮,程序结束。
PrivateSubCommand1_Click()
Text1.Text=UCase(Text1.Text)
EndSub
PrivateSubCommand2_Click()
Text1.Text=LCase(Text1.Text)
EndSub
PrivateSubCommand3_Click()
End
EndSub
7、在窗体上输出100——200之间(包括100和200)不能被3整除的奇数及这些数的和。
PrivateSubCommand1_Click()
Fori=100To200
IfiMod3<>0AndiMod2<>0Then
Printi;
s=s+i
n=n+1
IfnMod5=0ThenPrint
EndIf
Next
Prints
EndSub
8、设S=1*2*3*…*n,求S不大于400000时最大的n。
PrivateSubCommand1_Click()
s=1
i=0
Whiles<=400000Ands*(i+1)<=400000
i=i+1
s=s*i
Wend
Printi
EndSub
9、建立两个窗体,名称分别为Form1和Form2,其中Form2是启动窗体,其标题为“启动窗体”,在Form2上画一个命令按钮,名称为Command1,标题为“结束”。
请编写适当的事件过程以满足一下要求:
1)单击Form2窗体,则显示Form1窗体;
2)单击Form1窗体,则Form1窗体消失;
3)单击“结束”按钮则结束程序运行。
注意:
要求程序中不能使用变量,每个事件过程中只能写一条语句。
PrivateSubForm_Click()
Form1.Hide
EndSub
10、打印九九乘法表。
PrivateSubForm_Load()
Show
FontSize=15
PrintTab(24);"九九乘法表"
FontSize=10
Fork=0To9
Nextk
Forj=1To9
Fork=1Toj
PrintTab(k*9);Val(k)&"×"&Val(j)&"="&j*k;
Next
Nextj
EndSub
难度:
中(11--20)
11、如图所示的窗体中建立两组单选钮,根据选择的字体和字号来改变输入内容的格式
PrivateSubCommand1_Click()
IfOption1.Value=TrueThenText1.FontName="宋体"
IfOption2.Value=TrueThenText1.FontName="黑体"
IfOption3.Value=TrueThenText1.FontSize="8"
IfOption4.Value=TrueThenText1.FontSize="12"
EndSub
PrivateSubCommand2_Click()
End
EndSub
12、建立列表框,在列表框中有8个学生的姓名,当选定某个学生的姓名后,单击“显示学生籍贯“按钮,在文本框上显示该学生的籍贯,如图所示,如果用户双击学生姓名,也能在文本框中显示学生籍贯信息。
PrivateSubCommand1_Click()
IfList1.Text="张三"ThenText1="湖南省"
IfList1.Text="李四"ThenText1="湖北省"
IfList1.Text="王春华"ThenText1="山东省"
IfList1.Text="关红梅"ThenText1="江西省"
IfList1.Text="华成"ThenText1="江苏省"
IfList1.Text="范杰"ThenText1="山西省"
IfList1.Text="樊平"ThenText1="陕西省"
IfList1.Text="陈蓉"ThenText1="海南省"
EndSub
PrivateSubForm_Load()
List1.AddItem"张三"
List1.AddItem"李四"
List1.AddItem"王春华"
List1.AddItem"关红梅"
List1.AddItem"华成"
List1.AddItem"范杰"
List1.AddItem"樊平"
List1.AddItem"陈蓉"
EndSub
PrivateSubList1_DblClick()
Command1.Value=True
EndSub
13、编一帐号和密码输入的检验程序。
对输入的帐号和密码规定如下:
(1)帐号为不超过6位数字,密码为4位字符,在本题中,密码假定为“Pass”。
(2)密码输入时在屏幕上不显示输入的字符,而以“*”代替。
(3)当输入不正确,如帐号为非数字字符或密码不正确时,显示有关信息。
PrivateSubcmdclear_Click()
txtno.Text=""
txtpas.Text=""
EndSub
PrivateSubcmdok_Click()
DimiAsInteger
Iftxtpas.Text="pass"Then
MsgBox"输入正确"
Else
i=MsgBox("密码错误",5+vbCritical,"输入密码")
Ifi<>4Then
End
Else
txtpas.Text=""
txtpas.SetFocus
EndIf
EndIf
EndSub
PrivateSubForm_Load()
txtno.Text=""
txtpas.Text=""
EndSub
PrivateSubtxtno_LostFocus()
IfNotIsNumeric(txtno)Then
MsgBox"账号有非数字字符",vbExclamation,"输入账号"
txtno.Text=""
txtno.SetFocus
EndIf
EndSub
14、调色板
设计一个如下的调色板程序,根据滑块的变化来更改色块的颜色
PrivateSubHScroll1_Change()
Text1.BackColor=RGB(HScroll1.Value,HScroll2.Value,HScroll3.Value)
EndSub
PrivateSubHScroll2_Change()
Text1.BackColor=RGB(HScroll1.Value,HScroll2.Value,HScroll3.Value)
EndSub
PrivateSubHScroll3_Change()
Text1.BackColor=RGB(HScroll1.Value,HScroll2.Value,HScroll3.Value)
EndSub
15、平均成绩计算
输入N个学生的成绩,求其平均分并找出低于平均成绩学生的学号、成绩。
Dimnum()AsString,score()AsSingle
DimaverAsSingle,sumAsSingle
DimnAsInteger
DimnxAsString,sx,n1AsString
PrivateSubcmdexit_Click()
End
EndSub
PrivateSubcmdin_Click()
n1=InputBox("请输入学生人数","数据输入框")
n=Val(n1)
ReDimnum(n),score(n)
Fori=1Ton
nx="请输入第"+Str(i)+"个学生的学号"
sx="请输入第"+Str(i)+"个学生的成绩"
num(i)=InputBox(nx,"数据输入框")
score(i)=Val(InputBox(sx,"数据输入框"))
Nexti
cmdout.Enabled=True
EndSub
PrivateSubcmdout_Click()
Fori=1Ton
sum=sum+score(i)
Nexti
aver=sum/n
PrintTab(60);"平均成绩:
";aver
PrintTab(60);"低于平均成绩的学生的学号与成绩"
PrintTab(60);"学号","成绩"
Fori=1Ton
Ifscore(i) Nexti EndSub PrivateSubCommand1_Click() End EndSub 16、求三角形面积 给出a,b,c的值,单击“确定”按钮,判断能否构成三角形的三边,如能构成三角形则计算出三角形的面积。 三角形的面积公式s= 其中P=(a+b+c)/2 PrivateSubbutton1_Click() Dima,b,cAsSingle a=Val(Text1.Text) b=Val(Text2.Text) c=Val(Text3.Text) If(a+b)>cAnd(b+c)>cAnd(c+a)>bThen t=(a+b+c)/2 s=Math.Sqr(t*(t-a)*(t-b)*(t-c)) Text4.Text=Str(s) Else Text4.Text=MsgBox("不能构成三角形") EndIf EndSub PrivateSubCommand1_Click() End EndSub 17、设计一个简单的四则运算器。 PrivateSubCommand1_Click() IfOption1.Value=TrueThen Label1.Caption=Option1.Caption Text3=Val(Text1)+Val(Text2) EndIf IfOption2.Value=TrueThen Label1.Caption=Option2.Caption Text3=Val(Text1)-Val(Text2) EndIf IfOption3.Value=TrueThen Label1.Caption=Option3.Caption Text3=Val(Text1)*Val(Text2) EndIf IfOption4.Value=TrueThen Label1.Caption=Option4.Caption Text3=Val(Text1)/Val(Text2) EndIf EndSub 18、电子钟设计 设计一个电子钟来显示系统当前时间,根据选择可出现不同的时间格式。 如下图所示 PrivateSubCmdOne_Click() Ifcmdone.Caption="改为12小时"Then Txt_time.Text=TimeValue(Txt_time) Timer1.Enabled=False Timer2.Enabled=True cmdone.Caption="改为24小时" Else Txt_time.Text=TimeValue(Txt_time) Timer1.Enabled=True Timer2.Enabled=False cmdone.Caption="改为12小时" EndIf EndSub PrivateSubTimer1_Timer() Txt_time.Text=Format(Time,"h: m: sAM/PM") EndSub PrivateSubTimer2_Timer() Txt_time.Text=Time EndSub 19、在窗体上有一个图片框,三个单选按钮,一个命令按钮。 程序的功能是在运行时,如果选中一个单选按钮后,单击“显示”按钮,则根据单选按钮的选中情况,在图片框中显示“选择了正方形”、“选择了椭圆形”或“选择了圆形”。 如图所示。 PrivateSubCommand1_Click() Fori=0To2 IfOption1(i)=TrueThen p1.Print"选择了";Option1(i).Caption EndIf Next EndSub 20、输出所有的水仙花数。 所谓水仙花数,是指一个三位数其各位数字立方和等于该数字本身。 例如,153是水仙花数,因为: 153=1^3+5^3+3^3 PrivateSubForm_Load() DimxAsInteger,yAsInteger,zAsInteger Forx=1To9 Fory=0To9 Forz=oTo9 a=x*100+y*10+z b=x^3+y^3+z^3 Ifa=bThenPrinta Nextz Nexty Nextx lblmsg.Visible=False'隐藏标签控件使之不影响运行结果的显示 EndSub 难度: 难(21--30) 21、文章整理 规范整理英语文章,即对输入的任意大小写文章进行整理,所有句子开头都应为大写字母,其他都是小写字母。 (句子以问号、句号、感叹号作为结束符)。 PrivateSubcommand2_Click() txtinput.Text="" txtarrange.Text="" EndSub PrivateSubcommand3_Click() End EndSub PrivateSubCommand1_Click() DimnAsInteger Dimt0AsString,t1AsString txtarrange="" n=1 t0="."'使文本框中的第1个字母能被整理成为大写字母 t1=Mid(txtinput,n,1) DoWhilen<=Len(txtinput) t1=LCase(t1) Ift0="."Ort0="? "Ort0="! "Thent1=UCase(t1) txtarrange=txtarrange+t1 n=n+1 t0=t1 t1=Mid(txtinput,n,1) Loop EndSub 22、输入一串字符,统计各字母出现的次数,大小写字母不区分,效果如图所示。 PrivateSubCommand1_Click() DimsAsString Dima(1To26)AsInteger s=Trim(Text1) n=Len(s) Fori=1Ton m=Asc(UCase(Mid(s,i,1))) Ifm>=65Andm<=92Then a(m-64)=a(m-64)+1 EndIf Next Fori=1To26 Text2=Text2&Chr(i+64)&"="&a(i)&"" Next EndSub 23、将一个包含10位同学成绩的数组按分数从大到小排序,然后显示排序结果。 1、PrivateSubPicture1_Click() Dimstu_no(10)AsInteger Dimstu_score(10)AsInteger Randomize Picture1.Print"学号成绩" Picture2.Print"学号成绩" Fori=1To10 stu_no(i)=i stu_score(i)=Int(Rnd*(100-30+1)+30) Picture1.Printstu_no(i);"";stu_score(i) Nexti Print Fori=1To10 Forj=1To10-i Ifstu_score(j) t1=stu_score(j) stu_score(j)=stu_score(j+1) stu_score(j+1)=t1 t2=stu_no(j) stu_no(j)=stu_no(j+1) stu_no(j+1)=t2 EndIf Nextj Nexti Fori=1To10 Picture2.Printstu_no(i);"";stu_score(i) Nexti EndSub 2、PrivateSubForm_Load() Dima(1To10)AsInteger Fori=1To10 a(i)=InputBox("请输入第"&i&"个同学的成绩") Printa(i) Next Print Fori=1To9 Forj=1To10-i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机基础实验VB 计算机 基础 实验 VB 期末考试