VB编程题
- 格式:doc
- 大小:399.00 KB
- 文档页数:16
vb期末考试和答案一、选择题(每题2分,共20分)1. 在VB中,以下哪个是正确的变量声明方式?A. Dim a$B. Dim a IntegerC. Dim a As StringD. Dim a 123答案:C2. VB中,以下哪个是正确的条件语句?A. If x > 0 Then Print "Positive"B. If x > 0 ThenPrint "Positive"End IfC. If x > 0 ThenPrint "Positive"End IfD. If x > 0 ThenPrint "Positive"ElsePrint "Negative"End If答案:D3. 在VB中,以下哪个是正确的循环结构?A. For i = 1 To 10Print iNext iB. For i = 1 To 10Print iEnd ForC. For i = 1 To 10Print iLoopD. For i = 1 To 10Print iEnd Loop答案:A4. VB中,以下哪个是正确的数组声明方式?A. Dim arr(10)B. Dim arr(10) As IntegerC. Dim arr As Integer(10)D. Dim arr(10) Integer答案:B5. 在VB中,以下哪个是正确的函数声明方式?A. Function Add(x As Integer, y As Integer) As IntegerB. Function Add(x, y) As IntegerC. Function Add(x As Integer, y As Integer)D. Function Add(x, y)答案:A6. VB中,以下哪个是正确的事件处理程序?A. Private Sub Form_Click()B. Private Sub Form_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Me.ClickC. Private Sub Form_Click(ByVal sender As Object, ByVal e As MouseEventArgs) Handles Me.ClickD. Private Sub Form_Click(ByVal sender As Object, ByVal e As MouseEventArgs)答案:B7. 在VB中,以下哪个是正确的窗体属性?A. Me.Width = 800B. Me.Height = 600C. Me.Caption = "My Form"D. All of the above答案:D8. VB中,以下哪个是正确的控件属性?A. Label1.Text = "Hello"B. Label1.Caption = "Hello"C. Label1.Value = "Hello"D. = "Hello"答案:A9. 在VB中,以下哪个是正确的文件操作语句?A. Open "C:\test.txt" For Input As #1B. Open "C:\test.txt" For Output As #1C. Open "C:\test.txt" For Append As #1D. All of the above答案:D10. VB中,以下哪个是正确的错误处理语句?A. On Error Resume NextB. On Error GoTo 0C. On Error GoTo -1D. All of the above答案:A二、填空题(每题2分,共20分)1. 在VB中,声明一个整型变量的关键字是______。
Vb编程题1.求自然数1~100之间奇数之和。
Private Sub Form_Click()Dim s As Long, i As Integers = 0For i = 1 To 100 Step 2s = s + iNextPrint sEnd Sub2.求自然数1~100之间偶数之和。
Private Sub Form_Click()Dim s As Long, i As Integers = 0For i = 2 To 100 Step 2s = s + iNextPrint sEnd Sub3.编写程序,在窗体上随机输出一个10--99之间的两位整数。
Private Sub Form_Click()clRandomizePrint Int(Rnd() * 90) + 10End Sub4.编程计算从200到1000之间的所有4的倍数之和。
Private Sub Form_Click()clsSum = 0For i = 200 To 1000 Step 4Sum = Sum + iNextPrint "200-1000中4的倍数和是:"; SumEnd Sub5. 编程计算从300到1000之间的所有7的倍数之和。
Private Sub Form_Click()Dim i As Integer, sum As Longsum = 0For i = 300 To 1000If i Mod 7 = 0 Thensum = sum + iEnd IfNextPrint "300-1000中7的倍数和是:"; sumEnd Sub6.编写程序在窗体上计算:5/6+4/5+3/4+2/3+1/2Private Sub Form_Click()Dim s As Single, i As Integer, t As Singles = 0For i = 5 To 1 Step -1t = i / (i + 1)s = s + tNextPrint sEnd Sub7.在窗体的单击事件中编写程序,从键盘上任意输入3个数,输出最大数。
vb练习题及答案VB练习题及答案一、选择题1. 在VB中,以下哪个是正确的数据类型?A. IntegerB. IntC. Both A and BD. None of the above答案:C2. VB中,哪个关键字用于声明变量?A. DimB. DeclareC. DefineD. Set答案:A3. 在VB中,以下哪个是正确的循环结构?A. ForB. WhileC. RepeatD. All of the above答案:D4. VB中,以下哪个是正确的条件语句?A. IfB. SwitchC. CaseD. A and B only答案:A5. 在VB中,以下哪个是正确的数组声明方式?A. Dim myArray(5) As IntegerB. Dim myArray As Integer(5)C. Both A and BD. None of the above答案:A二、填空题1. 在VB中,使用________关键字可以定义一个类。
答案:Class2. VB中,使用________方法可以为控件添加事件处理程序。
答案:AddHandler3. 在VB中,________方法用于结束程序的执行。
答案:End4. VB中,________属性用于获取或设置一个控件的文本。
答案:Text5. 在VB中,________方法用于打开一个文件。
答案:Open三、简答题1. 请简述VB中的事件和事件处理程序的概念。
答案:在VB中,事件是用户或程序触发的特定动作,如按钮点击或键盘敲击。
事件处理程序是一个过程,当特定的事件发生时,会被自动调用以响应该事件。
2. 描述VB中如何使用For循环。
答案:在VB中,For循环用于重复执行一段代码直到满足特定条件。
基本语法是:```For counter = start To end [Step increment]' 循环体Next [counter]```3. 解释VB中什么是继承,并给出一个简单的示例。
VB经典案例1输入3个数,输出最大的数X=valtext1y=valtext2z=valtext3if x>=y thenif x>=z then print xelse print zend ifelse if y>=z then print yend if2有一元二次方程:aX2+bX+c=0,依次输入a,b,c,判断此方程是否有实根a=valtext1b=valtext2c=valtext3If bb-4ac>=0 then print “有实根”else print “无实根”end if3输入一个成绩,若大于等于60,则用消息框显示“恭喜成绩通过”,若小于60,则弹出消息框显示“抱歉成绩没有通过”N=val text1if n>=60 then msgbox”恭喜成绩通过”else msgbox “抱歉成绩没有通过”end if4输入一年份,判断它是否为闰年,并显示有关信息判断闰年的条件是:年份能被4整除但不能被100整除,或者能被400整除y=valtext 1if y mod 4 =0 and y mod 100 = 0 then print “y是闰年”else print y “不是闰年’”end if5输入学生的百分制成绩,转换输出为五级制成绩,90~100分转换为优秀,80~89转换为良好,70~79转换为中等,60~69转换为及格,0~60转换为不及格;If mark >=90 then grade= ‘优’else If mark >=80 then grade =‘良’else If mark >=70 then grade =‘中’else If mark >=60 then grade =‘及格’else grade=”不及格”6随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示;例如,产生246,输出是642;n=intr n d 900+100dim x%,a%,b%,c%a=x mod 10b=intx mod 100/10c=intx/100print x;a100+b10+c7 输入两个整数,求它们的最大公约数;Function gcd %by val m%,by val n%if m<n then t=m : m=n:n=tR= m mod ndo while r< > 0m=n : n=r :r= mod nloop gcd =nend function8 编程求200--400范围内5的倍数或7的倍数之和;dim s%,i%s=0For i =200 to 400if i mod 5 =0 or i mod 7 =0 then s=s+iend ifnext iprint s9 计算100~300之间所有能被3和7整除的数之和dim s%,i%s=0for i=100 to 300If i mod 3 =0 and i mod 7 =0 then s=s+iend ifnext iprint “s=” &s10 分别统计1-100中,满足3的倍数、7的倍数的数各有多少;Dim n1%,n2% ,i%n1=0:n2=0For i=1to 100if i mod 3=0 then n1=n1+1if i mod 7=0 then n2=n2+1next iprint n1,n211 某次歌曲大奖赛,有7个评委;如果分别输入7个评委对某个参赛者的打分数,按照去掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分;Dim a6 as integer i%,max%,min%,sum%a0=val 省略a6=valsum=a0+a1+a2+a3+a4+a5+a6max=a0min=a0for i =1 to 6 if min>ai then min=aiIf max<ai then max=aisum=sum+ainext iprint “平均分”;sum-min -max/512 输入一串字符,统计其中字母A出现的次数;dim s$,i%,n%s=text1n=0for i=1 to lensc=mids,i,1If c=”A” OR c=”a” then n=n+1next iprint n13 我国目前有13亿人口,按人口年增长率%计算,多少年后我国人口将超过26亿;x=13n=0do while x<26x=x n=n+1loopprint “年数为:”;n;”人数为:”;xm=log2/logif intm<>m then m= intm+1print m14 小猴有桃若干,第一天吃掉一半多一个;第二天吃剩下桃子的一半多一个;以后每天都吃尚存桃子的一半多一个,到第7天只剩一个,问小猴原有桃多少Dim n%,i%x=1for i=6 to 1 step -1x =2x+1print xnext i15 求100以内的素数Dim m%,i%,tag as booleanfor m=3 to 100 step 2tag=truefor i=2 to m-1if m mod i=0 Then tag=falsenext iIf tag=true then print m&”是素数”else print m&”不是素数”End ifnext m16 百元买百鸡问题;假定小鸡每只5角,公鸡每只2元,母鸡每只3元,编程求解购鸡案; Dim x%,y%,z%,n%n=0print “母鸡”,”公鸡”,”小鸡’for x = 0 to 33for y=0 to 50Z=100-x-yn=n+1if 3x+2y+z=100 then print x,y,znext ynext x17 编程求斐波那契数列前11项;斐波那契数列:F0=f1=1, Fn=Fn-1+Fn-2 n>=2Dim x as integer dim i%n=16redim xn-1x0=1x1=1for i=2 to n-1Xi=xi-1+xi-2next ifor i=0 to n-1print xi,if i+1mod 5=0 then printnext18 将输入的字符串以反序显示;例如:输入“ASDFGT”,显示“TGFDSA”Dim i,a,b, n as stringn=inputbox“输入字符”i=lennfor a=1 to i/2b=midn,a,1Midn,a,1=midn,i+1-a,1midn,i+1-a,1=bnext aprint n19 随机产生10个30,100内的整数,求最大值及所对应的下标Dim a0 to 9 as integer i% ,max%, imax%for i=0 to 9ai=int r n d 71 +30print ai;next imax=a0imax=0for i = 1 to 9If ai> max then max =ai:imax =inext iprint “max=”; max,”imax=”;imax20 随机产生10个30,100内的整数,求最大值、最小值和平均值;Dim a0 to 9 as integer i% ,max%, min% ,averfor i=0 to 9ai=int r n d 71 +30Next imin=a0max=a0aver=a0for i=1 to 9if ai>max then max=aiIf ai<min then main=aiaver=aver+ainext ifor i=0 to 9print ai;next iprintPrint “max=”;max,”min=”;min, “aver=”;aver/1021 随机产生10个30,100内的整数,求最小值及所对应的下标;Dim a0 to 9 as integer i% ,min%, imin%for i=0 to 9ai=int r n d 71 +30print ai;next imin=a0imin=0for i = 1 to 9If ai< min then min=ai : imin =inext iprint “min=”; min,”imin=”;imin22 随机生成一个整型的二维数组,范围在10,20之间,以下三角形式输出该数组;Dim a4,4 as integerfor i=0 to 4for j=0 to 4ai,j=intr nd11+10next jnext iFor i=0 to 4for i=0 to 4print ai,j;next jprintnext i23 随机产生10个1~100的正整数放入数组,显示产生的数,求最大值、最小值、平均值; Dim a1 to 10 as integer,i%,max%,min%,aver%for i=1 to 10ai=intr n d100+1next iMin=a1max=a1aver=a1for i=2 to 10if ai>max then max=aiIf ai<minthen Min=aiaver=aver+ainext iprintprint “max=”;max,”min=”;min,”aver=”;aver/1024 利用随机函数生成一个4×4的矩阵的二维矩阵,范围是20,50内的整数,输出该矩阵所有数据之和Dim a2,3,sum%for i=0 to 3for j=0 to 3ai,j=intr n d31+20next inext jFor i =0 to 3for j=0 to 3print ai,j;next jprintnext ifor i=0 to 3for j=0 to 3Sum=sum+ai,jnext jnext iprint ”sum=”;sum25已知有序数组a,编程插入xx的值为14;数组a中的元素分别为{12,6,4,89,75,63,100,20,31}; Dim a,i%,k%,x%,n%a=array12,6,4,89,75,63,100,20,31n=uboundax=valtext1for k=0 to nif x<ak then exit fornext kredim preserve an+1for i=n to k step -1ai+1=ainext iak=xfor i=0 to n+1print ai;next i26 编写一函数,计算Double类型一维数组所有元素的平均值;Function avg a as doubledim i%,s m%,n%s=0m=Lbounda;n=uboundafor i=m to ns=s+ainext iAvg=s/n-m+1end function27用函数过程求表达式1+1/2+1/3+1/4+…+1/n的和;Function sum n% as singledim i%sS=0for i=1 to nS=s+1/inext isum=send function28 编一子过程ProcMin,求一维数组a中的最小值,子过程的形参自己确定;Dim a1 to 10,amin,i%for i=1 to 10ai=-intr n d101+300print ai;next iCall sa,aminprintprint”最小值”;aminend subsub sb,mindim i%min=b1For i=2 to 9if bi<min then min=binext i29 编一个函数,求一维数组a中的最大值,函数的形参自己确定;Function amaxa as integerdim i%,max %max=aLboundafor i =Lbounda+ uboundaif ai>max then max=ainext iamax= maxend function30 编写一个程序,计算并输出区间100,1000内所有素数的和;要求:判断素数使用过程函数或子过程来实现;然后调用该过程求范围内各素数的和;Function s%dim m% ,tag as blooean,i%M=valxtag=tureFor i =2 to n-1if n mod i=0 then tag=falsenext iIf tag then s=xend functionPrivateDim i%,k%for i =101 to1000If si then iNext iSum=0For k=0 tosum =sum+valknext kLabel1=”100,1000内所有素数和为:”&sum。
『单项选择』以下关于vb 语言的说法中,正确的是(B).A:vb 是一种面向过程的语言B:vb 是一种面向对象语言C:vb是一种低级语言D:vb 是一种机器语言变量未赋值时,数值型变量的值为(A).A:0B:空C:1D:无任何值窗体的Caption属性的作用是(B).A:确定窗体的名称B:确定窗体的标题C:确定窗体的边界类型D:确定窗体的字体(D)对象具有Clear方法.A:图片框B:窗体C:复选框D:列表框vb 程序设计中的窗体在OOP 中称为(C).A:屏幕B:事件C:对象D:控件VisualBasic集成环境的大部分窗口都可以从主菜单项(B)的下拉菜单中找到相应的打开命令.A:编辑B:视图C:格式D:调试当一个对象(如窗体或图片框)被移动或改变大小之后,或当一个覆盖该窗体被移开之后,如果要保持该所画图形的完整性,可以选择触发(A)事件来完成图形的重画工作.A:PaintB:LoadC:ClickD:ActiveVisualBasic的编程机制是(D).A:可视化B:面向对象C:面向图形D:事件驱动答案:D〖第9题〗『单项选择』(2分)(题号:231)vb 中的坐标系最小刻度为(A).A:缇B:象素C:厘米D:一个标准字符宽度窗体设计器是用来设计(B).A:应用程序的代码段B:应用程序的界面C:对象的属性D:对象的事件Rnd函数不可能产生的(B)值.A:0B:1C:0.1234D:.00005RGB 函数通过红.绿.蓝三基色混合产生某种颜色,某语法为RGB (红.绿.蓝),括号中红、绿、蓝三基色的成分使用0~255之间的整数.若使用三个滚动条分别输入三种基色,为保证输入数值有效,则应设置(A)属性.A:Max和MinB:Smallchange和LargeChangeC:Scroll和ChangeD:Value不管一个对象的属性如何设置,程序运行时始终都能接收焦点的方法是(D).A:用Tab键B:用鼠标C:用方向键D:不能实现vb 中的坐标圆点位于(B).A:容器右上角B:容器左上角C:容器正中央D:容器右下角VisualBasic是一种(B)程序设计语言.A:过程式B:非过程式C:机器D:低级VB认为下面(A)组变量是同一个变量.A:A1和a1B:SUM和SUMMARYC:A VER和A VERAGED:A1和A_1vb 应用程序是分层管理的,其最高的层次为(A). A:工程B:模块C:窗体D:过程(C)对象不能作为控件的容器.A:FormB:PictureBoxC:ShapeD:FrameVB应用程序的运行模式是(C).A:解释运行模式B:编译运行模式C:两者都有D:汇编模式窗体的Enable属性的属性值是(C)类型的数据.A:整型B:字符型C:逻辑型D:实型INT(100*RND(1))产生的随机整数的闭区间是(A). A:[0,99]B:[1,100]C:[0,100]D:[1,99](D)对象不具有Caption属性.A:LabelB:OptionC:FormD:Timer"对象"是计算机系统运行的(D).A:程序单位B:逻辑单位C:物理实体D:基本实体函数InStr("VB程序设计教程","程序")的值为(C). A:1B:2C:3D:4语句PRINT"INT(-13.2)";INT(-13.2)的输出结果为(D).A:INT(-13.2)=-13.2B:INT(-13.2)=13.2C:INT(-13.2)=-13D:INT(-13.2)=-14产生[10,37]之间的随机整数的VisualBasic表达式是(B). A:In t(Rnd(1)*27)+10B:Int(Rnd(1)*28)+10C:Int(Rnd(1)*27)+11D:Int(Rnd(1)*28)+11表达式4+5\6*7/8Mod9的值是(B).A:4B:5C:6D:7表达式2+3*4^5-SIN(X+1)/2中最先进行的运算是(C).A:4^5B:3*4C:x+1D:SIN代数式exSin(300)2x/(x+y)lnx对应的VB表达式是(C).A:E^X*Sin(30*3.14/180)*2*x/x+y*log(x)B:Exp(x)*Sin(30)*2*x/(x+y)*ln(x)C:Exp(X)*Sin(30*3.14/180)*2*x/(x+y)*log(x)D:Exp(X)*Sin(30*3.14/180)*2*x/(x+y)*ln(x)设a=6,则执行x=IIf(a>5,-1,0)后,x的值为(D).A:5B:6C:0D:-1Line(100,100)-Step(400,400)将在窗体(C)画一直线.A:(200,200)到(400,400)B:(100,100)到(300,300)C:(100,100)到(500,500)D:(100,100)到(400,400)代数式x1-|a|+ln10+sin(x2+2л)/cos(57o)对应的VisualBasic 表达式是(A).A:X1-Abs(A)+Log(10)+Sin(X2+2*3.14)/Cos(57*3.14/180)B:X1-Abs(A)+Log(10)+Sin(X2+2*л)/Cos(57*3.14/180)C:X1-Abs(A)+Log(10)+Sin(X2+2*3.14)/Cos(57)D:X1-Abs(A)+Log(10)+Sin(X2+2*л)/Cos(57)表达式25.28Mod6.99的值是(C).A:1B:5C:4D:出错常量-0.00013579的科学计数法是(C).A:-1,3579E+0.4B:.00013579C:-13.579E-5D:-1.3579E-0.4以下各表达式中, 计算结果为0的是(D).A:INT(12.4)+INT(-12.6)B:CINT(12.4)+CINT(-12.6)C:FIX(13.6)+FIX(-12.6)D:FIX(12.4)+FIX(-12.6)系统符号常量的定义通过(A)获得.A:对象浏览器B:代码窗口C:属性窗口D:工具箱表达式Mid("SHANGHAI",6,3)的值是(D).A:SHANGHB:SHAC:ANGHD:HAI表达式X+1>X是(D).A:算术表达式B:非法表达式C:字符表达式D:关系表达式\、/、Mod、*等4个算术运算符中,优先级最低的是(C). A:B:/C:ModD:*函数Int(10*Rnd)是在(D)范围内的整数.A:[0,1]B:[1,10]C:[1,9]D:[0,9]函数Ucase(Mid("visualbasic",8,8))的值为(D).A:visualB:basicC:VISUALD:BASIC如果X是一个正的实数,将千分位四舍五入,保留两位小数的表达式是(B). A:0.01*int(x+0.05)B:0.01*int(100*(x+0.005))C:0.01*int(100*(x+0.05))D:0.01*int(x+0.005)不能正确表示条件"两个整型变量A和B之一为0,但不能同时为0"的布尔表达式(D).A:A*B=0ANDA<>BB:(A=0ORB=0)ANDA<>BC:A=0ANDB<>0ORA<>0AND B=0D:A*B=0AND(A=0ORB=0)标准工具箱中的控件(B).A:数目是固定不变的B:数目可以增加或减少C:包含了VisualBasic所有控件D:在窗体建立对象时不一定被使用表达式(7\3+1)*(18\5-1)的值是(C).A:8.76B:7.8C:6D:6.67表达式INT(8*SQR(36)*10^(-2)*10+0.5)/10的值是(C).A:0.48B:0.048C:.5D:.05函数Len(Str(Val("123.4")))的值为(C).A:11B:5C:6D:8求以10 为底X 的常用对数的表达式为(A).A:LOG(X)/LOG(10)B:LN(X)C:LOG(X)/LOG(E)D:LOG(X)语句listl.removeitem 1 将删除list.listindext等于(D)的项目..A:0B:2C:3D:1以下可以作为VB变量名的是(B).A:SIN B:CO1 C:COS(X) D:X(-1)MSGBOX函数中有4个参数,其中必须写明的参数是(C).A:指定对话框中显示按钮的数目B:设置对话框标题C:提示信息D:所有参数都是可选的要在图片框P1中打印字符串"HowAreYou",应使用语句(C).A:Picture1.Print="HowAreYou"B:P1.Picture=LoadPicture("HowAreYou")C:P1.Print"HowAreYou"D:Print"HowAreYou"InputBox函数返回的函数值的类型是(C).A:数值B:字符串C:数值或字符串D:根据需要可以是任何类型数据要使得标签能自动扩充以满足字体大小则可对其(C)属性进行设置. A:alignmentB:usemnemonicC:autosizeD:tag如果要在命令按钮上显示图形文件,应设置命令按钮的(B).A:Style属性和Graphics属性B:Style属性和Picture属性C:Picture属性D:Graphics属性要在命令按钮控件上显示图像应(C).A:设置Picture属性B:实现不了C:先将Type设置为1,然后再设置Picture属性D:以上都不对工具栏中的"启动"按钮的作用是(A).A:运行一个应用程序B:运行一个窗体C:工程管理窗口D:打开被选中对象的代码窗口下列字符串常量中,最大的是(C).A:"北京"B:"上海"C:"天津"D:"广州"货币型数据需(D)字节.A:2B:4C:6D:8设a=10,b=5,c=1,执行语句Printa>b>c后,窗体上显示的是(B).A:TrueB:FalseC:1D:出错信息列表框控件中的列表内容是通过(C)属性设置的.A:NameB:CaptionC:ListD:Text下列哪一种文件打开方式是以顺序文件方式打开文件并作写操作(A). A:Open "c:\file1.dat"For Output as #1B:Open "c:\file1.dat" For Input as #1C:Open "c:\file1.dat" For Append as #1D:Open "c:\file1.dat" For Write as #1清除列表框的所有选项应选择下列哪种方法(A).A:ClearB:ClsC:ClearItemD:RemoveItem要使标签所在处透明显示背景,应把其Backstyle属性设置为(A).A:0B:1C:2D:3骰子是一个正六面体,分别用1~6 代表这六个面,掷一次骰子出现的数可表示为(A).A:int(rnd*6+1)B:int(rnd*6)C:int(rnd*7)D:int(rnd(6)+1)下列数据类型中,占用内存最小的是(B).A:BooleanB:ByteC:IntegerD:Single要使得窗体一开始运行就充满整个屏幕则须设置()属性.A:borderstyleB:appearanceC:windowstateD:drawmode下面(C)是日期型常量.A:"12/19/99"B:12/19/99C:#12/19/99#D:{12/19/99}以下叙述中错误的是(C).A:打开一个工程文件时,系统自动装入与该工程有关的窗体、标准模块等文件B:保存VisualBasic程序时,应分别保存窗体文件及工程文件C:VisualBasic应用程序只能以解释方式执行D:事件可以由用户引发,也可以由系统引发将焦点主动设置到指定的控件或窗体上,应采用(B)方法.A:SetDataB:SetFocusC:SetTextD:GetGata下列(A)是窗体的扩展名.A:frmB:basC:clsD:dll下列语句中正确的是(D).A:txt1.text+txt2.text=txt3.textB:=cmdokC:12label.caption=1234D:a=inputbox(hello)形状控件所显示的图形不可能是(D).A:圆B:椭圆C:圆角正方形D:等边三角形以下控件中不属于容器的是(C).A:Form控件B:PictureBoxC:ImageD:Frame如果TAB函数的参数小于1,则打印位置在第(B)列.A:0B:1C:2D:3将CommonDialog通用对话框的类型设置为字体对话框,可设置该控件的(D)属性.A:FontB:FilterC:flagsD:Action要使一个文本框具有水平和垂直滚动条,则应先将其MultiLine属性设置为True,然后再将ScrollBar属性设置为(D).A:0B:1C:2D:3已知A?B?C中C最小,则判断A?B?C可否构成三角形三条边长的逻辑表达式是(B).A:A>=B And B>=C And C>0B:A+C>B And B+C>A And C>0C:(A+C)>=C And A-C <=C) And C>0D:A+B>C And A-B>C And C>0退出VisualBasic的快捷键是(C).A:Ctrl+QB:Shift+QC:Alt+QD:Ctrl+Alt+Q下列方法中可用于列表框动态添加数据的是(B).A:addB:additemC:addlistD:removeitem运行下面的程序:CLSLINE (100,100)-(200,50)LINE - (150,150)LINE -(100,100)屏幕上显示的是(D).A:三条放射形直线B:四条放射形直线C:矩形D:三角形不具有输入数据功能的控件是(D)控件.A:文本框B:选项按钮C:列表框D:窗体以下这段在FORM的CLICK事件中的程序运行后的结果是(D). CurrentX=1500CurrentY=500Line-(3000,2000)Line-(1500,2000)Line-(1500,500)A:三条直线B:矩形C:三角形D:等腰直角三角形为使文本框显示滚动条,必须首先设置的属性是(A).A:MulitilineB:AutosizeC:AlignmentD:Scrollbars设在窗体上有两个命令按钮,其中一个命令按钮的名称为cmda,则另一个命令按钮的名称不能是(C).A:cmdcB:cmdbC:cmdAD:Command1设组合框Combo1中有3个项目,则以下能删除最后一项的语句是(B). A:Combo1.RemoveItemTextB:Combo1.RemoveItem2C:Combo1.RemoveItem3D:Combo1.RemoveItemCombo1.Listcount如果在图片框上使用绘图方法绘制一个圆,则图片框的(B)属性不会对该圆的外观产生影响.A:BackColorB:ForeColorC:DrawWidthD:DrawStyle为使计时器控件每隔5秒钟产生一个计时器事件(Timer事件),则应将其Interval属性值设置为(D).A:5B:500C:300D:5000激活属性窗口使用的键是(C).A:F2B:F3C:F4D:F5如果没有在列表框中选择项目,且列表框的MultiSelect属性值为默认值(0~None),则执行语名List1.RemoveItemList1.ListIndex的结果是(C).A:删除列表框的最后一项B:删除列表框的第一项C:出错D:删除列表框中的最后添加的一项为了在按下回车键时执行某个按钮的事件过程,需要把该命令按钮的一个属性设置为True,这个属性是(D).A:ValueB:CancleC:EnableD:Default要想返回文本框中输入的内容则可利用其(B)属性进行编程.A:captionB:textC:nameD:righttoleft每个窗体对应一个窗体文件,窗体文件的扩展名是(C).A:.basB:.clsC:.frmD:.vbp控件是(A).A:建立对象的工具B:设置对象属性的工具C:编写程序的编辑器D:建立图形界面的编辑窗口下列可缩放图片的属性是(C).A:autosizeB:pictureC:stretchD:OleDrawMode设置列表框选中的文本用(D)属性.A:selectedB:captionC:textD:list为了能在列表框中利用Ctrl和Shift键进行多个列表项的选择,则应将列表框的Multiselect属性设置为(C).A:0B:1C:2D:3列关于窗体上控件的基本操作错误的是(A).A:按一次DEL键只能删除一个控件B:按下一次DEL键可以同时删除多个控件C:按住SHIFT键,然后单击每个要选择的控件,可以同时选中多个控件D:按住ALT键,然后单击每个要选择的控件,可以同时选中多个控件要在窗体上显示图片,需设置窗体的(C)属性.A:CaptionB:IconC:Picture D:ControlBox如果要改变窗体的标题,则需要设置的属性是(A).A:CaptionB:NameC:BackColorD:BorderStyle1、在窗体(名称为Form1)上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写一个事件过程。
vb考试题及答案VB考试题及答案一、单选题(每题2分,共20分)1. 在VB中,以下哪个是正确的整型变量声明?A. Dim a% As IntegerB. Dim a As Integer%C. Dim a As IntegerD. Dim a Integer答案:C2. VB中的Print方法用于在窗体上显示输出,以下哪个是正确的输出语句?A. Print "Hello, World!"B. Print "Hello, World!", 1C. Print 1, "Hello, World!"D. Print "Hello, World!"; 1答案:A3. 在VB中,以下哪个是正确的布尔型变量声明?A. Dim b BooleanB. Dim b As BooleanC. Dim b Boolean AsD. Dim b As Boolean As答案:B4. VB中,以下哪个函数用于获取当前日期?A. Now()B. Date()C. Time()D. Today()答案:B5. 在VB中,以下哪个是正确的数组声明?A. Dim arr(5) As IntegerB. Dim arr(5 To 10) As IntegerC. Dim arr As Integer(5)D. Dim arr As Integer(5 To 10)答案:A6. VB中,以下哪个是正确的字符串连接操作?A. str1 & str2B. str1 + str2C. str1 || str2D. str1.Concat(str2)答案:A7. 在VB中,以下哪个是正确的条件语句?A. If x > 0 ThenB. If x > 0C. If x > 0 ElseD. If x > 0 End If答案:A8. VB中,以下哪个是正确的循环结构?A. For i = 1 To 10B. For i = 1 To 10 DoC. For i = 1 To 10 LoopD. For i = 1 To 10 Next答案:A9. 在VB中,以下哪个是正确的函数声明?A. Function MyFunction() As IntegerB. Function MyFunction As IntegerC. Function MyFunction() IntegerD. Function MyFunction Integer答案:A10. VB中,以下哪个是正确的事件处理程序声明?A. Private Sub Form_Click()B. Private Sub Form_Click As IntegerC. Private Sub Form_Click() IntegerD. Private Sub Form_Click() As Integer答案:A二、填空题(每题2分,共20分)1. VB中,用于声明变量的关键字是______。
VB练习题判断题:1、VB中,每⼀种对象有着不同的属性设置,每⼀种对象能识别的事件也不同。
(对)2、Val(“123hello”) 和Val(“hello123”)返回值⼀样。
(错)3、赋值语句X=123+”123”和X=”123”+123中,X的值⼀样。
(对)4、赋值语句X=”123”+”123”和X=”123”+123中,X的值⼀样。
(错)5、执⾏Print 5*8 和Print “5*8 ”语句运⾏结果⼀样。
(错)6、标签框和⽂本框内容的最⼤区别就是在程序运⾏过程中标签框的内容不可编辑,⽽⽂本框的内容可编辑。
(对)7、⽤vb编写程序时,标签控件能代替⽂本框控件使⽤. (错)8、VB程序代码中,Label1.Caption=””的作⽤是该标签框中得内容清除。
(对)9、变量名的长度最长可达1024个字符。
(错)225个10、sum和int.sum都可以作为VB的变量名。
(错)11、下列程序的运⾏结果是15 (对)Dim s as DoubleDim i as IntegerS=0I=1Do While i<=5I=i+2S=s+iLoopLabel1.Caption=s12、对于熟练的程序员,可以省略程序的调试过程。
(错)13、在VB中,使⽤if语句就可以根据条件改变程序的执⾏路径。
(对)14、VB编程的⼀般步骤应该是:分析问题——设计界⾯——编写代码——调试与运⾏程序。
(对)单项选择题1、⼩明想⽤VB设计⼀个加法器程序,做了如下规划,下列说法错误的是。
(D)A、程序运⾏时标题栏显⽰加法器B、前两个标签框显⽰的内容分别为“+”和“=”C、Command1⽤来计算出结果D、使⽤了三个命令按钮、两个标签框和三个⽂本框2、从下⾯的对象属性可以看出,该对象的标题为(A)A、计算B、captionC、名称D、command13、如图A,在窗体FORM1上创建⼀个命令按钮command1,要将此按钮上的⽂字修改成“中国加油!”如图B,则下列操作正确的是(A)A、在属性窗⼝中将command1的caption属性设置成“中国加油!”B、直接在窗体中将form1的caption修改成“中国加油!”C、在属性窗⼝中将command1的“名称”属性设置成“中国加油!”D、在⼯程资源管理器中将“command1”修改成“中国加油!”5、⼩明在设计程序的登录界⾯时,采取了密码检验的⽅式,他设计的界⾯和部分程序如下图,从程序中可以分析出他设置的密码是(C)A、pass1B、Text2C、bf793D、zhangli6、如图为⼩明同学设计的“折扣商品计算器界⾯”,其中⾄少有(D)个⽂本框。
3-1 一、VB环境的基本使用(本题两道小题 共10分) 所有文件存储在考生文件夹 C:\Sower\CbtesExam\VB\下。 (1)新建立一个工程文件,并按照下列要求进行操作: 在名称为Form1的窗体上画一个文本框,名称为Text1,内容为“VB程序设计”;再画两个命令按钮,其名称分别为Command1和Command2,标题分别为“扩大”和“缩小”,如图所示,编写适当的事件过程。程序运行后,每单击Command1命令按钮一次,文本框中文本的字体扩大1.2倍;每单击Command2命令按钮一次,文本框中文字的字体缩小1.2倍。 注意: 存盘时工程文件名为sjt1.vbp,窗体文件名为sjt1.frm。
Private Sub Command1_Click() Text1.FontSize = Text1.FontSize * 1.2 End Sub
Private Sub Command2_Click() Text1.FontSize = Text1.FontSize / 1.2 End Sub (2)新建立一个工程文件,并按照下列要求进行操作: 在名称为Form1的窗体上画一个列表框,其名称为List1,通过属性窗口向列表框中输入9个项目,分别为:10、20、30、40、50、60、70、80、90;画一个文本框,其名称为Text1,初始内容为空白;再画一个水平滚动条,其名称为Hscroll1,Min属性和Max属性分别为0和100,如图所示,编写适当的事件过程。程序运行后,如果单击列表框中的某个项目,则在文本框中显示该项目内容,并把滚动条的滚动框移动到相应的位置,如图所示。 要求: 不得使用任何变量 注意: 存盘时工程文件名为sjt2.vbp,窗体文件名为sjt2.frm。 程序代码如下所示: Private Sub List1_Click() Text1.Text = List1.Text HScroll1.Value = List1.Text End Sub 二、VB简单程序设计(本题两道小题 共14分) 所有文件存储在考生文件夹 C:\sower\CbtesExam\VB\下 (1)在考生文件夹下有一个工程文件sjt3.vbp,相应的窗体文件为sjt3.frm。在窗体上有一个命令按钮(名称为Command1,标题为“计算并输出”)和两个文本框(名称分别为Text1和Text2),如图所示。程序运行后,单击命令按钮,即可计算出数组Arr中正数之和pos和负数之和neg,并分别在两个文本框中显示出来。 该程序不完整,请把它补充完整。 要求: 去掉程序中的注释符,把程序中的?改为正确的内容,使其能正确运行,但不能修改程序中其他部分,也不能修改控件的属性。最后用原来的文件名保存工程文件和窗体文件。
Option Base 1 Private Sub Command1_Click() Dim Arr Arr = Array(43, 68, -25, 65, -78, 12, -79, 43, -94, 72) pos = 0 neg = 0 For k = 1 To 10 If Arr(k) > 0 Then pos = pos + Arr(k) Else neg = neg + Arr(k) End If Next k Text1.Text = "正数之和为:" & Str(pos) Text2.Text = "负数之和为:" & Str(neg) End Sub (2)在考生文件夹下有一个工程文件sjt4.vbp,相应的窗体文件为sjt4.frm。在窗体上有两个命令按钮,其名称分别为Command1、Command2;一个标签,其名称为Label1;一个计时器,其名称为Timer1,如图所示。程序运行后,如果单击“开始”命令按钮,则该按钮变为禁用,而标题变为“继续”,同时标签中的字体每隔100毫秒增大0.1倍(即为原来的1.1倍),如图所示,字体大小超过100后,自动缩小为8;如果单击“停止”命令按钮,则该按钮变为禁用,“继续”命令按钮变为有效,同时标签中的字体停止变化;再次单击“继续”命令按钮后,标签中的字体继续变化。 这个程序不完整,请仔细阅读已有内容,并把它补充完整,使之能正确运行。 要求: 去掉程序中的注释符,把程序中的?改正为正确的内容,使其实现上述功能,但不能修改程序中的其他部分,最后把修改后的文件按原文件名存盘。
Private Sub Form_Load() Command1.Caption = "开始" Command2.Caption = "停止" Timer1.Interval = 100 Timer1.Enabled = False Label1.Caption = "国" Label1.AutoSize = True Label1.FontBold = True End Sub
Private Sub Command1_Click() Command1.Caption = "继续" Timer1.Enabled = True Command1.Enabled = False Command2.Enabled = True End Sub
Private Sub Command2_Click() Timer1.Enabled = False Command2.Enabled = False Command1.Enabled = True End Sub
Private Sub Timer1_Timer() If Label1.FontSize <= 100 Then Label1.FontSize = Label1.FontSize * 1.1 Else Label1.FontSize = 8 End If End Sub 5-1 一、VB环境的基本使用(本题两道小题 共10分) 所有文件存储在考生文件夹 C:\Sower\CbtesExam\VB\下。 (1)新建立一个工程文件,并按照下列要求进行操作: 在名称为Form1的窗体上画两个标签,(名称分别为Label1和label2,标题分别为“书名”和“作者”)、两个文本框(名称分别为Text1和Text2,Text属性均为空白)和一个命令按钮(名称为Command1,标题为“显示”)。然后编写命令按钮的Click事件过程。程序运行后,在两个文本框中分别输入书名和作者,然后单击命令按钮,则在窗体的标题栏上显示两个文本框的内容,如图2所示。要求程序中不得使用任何变量。 注意: 存盘时工程文件名为sjt1.vbp,窗体文件名为sjt1.frm。
代码如下所示: Private Sub Command1_Click() Form1.Caption = Text1.Text & "," & Label2.Caption & " " & Text2.Text End Sub (2)新建立一个工程文件,并按照下列要求进行操作: 在名称为Form1的窗体上画一个垂直滚动条(名称为Vscroll1)和一个水平滚动条(名称为Hscroll1),如图1所示。在属性窗口中对两个滚动条设置如下属性: Min 1500 Max 6000 LargeChange 200 SmallChange 50 编写适当的事件过程。程序运行后,如果移动滚动条上的滚动框,则可扩大或缩小窗体。运行后的窗体如图2所示。要求程序中不得使用任何变量。 注意: 存盘时工程文件名为sjt2.vbp,窗体文件名为sjt2.frm。
图1 图2 代码如下所示: Private Sub HScroll1_Change() Form1.Width = HScroll1.Value End Sub
Private Sub VScroll1_Change() Form1.Height = VScroll1.Value End Sub 二、VB简单程序设计(本题两道小题 共14分) 所有文件存储在考生文件夹 C:\sower\CbtesExam\VB\下 (1)打开考生文件夹下工程文件sjt3.vbp,在窗体(名称为Form1,KeyPreview属性为True)上画一个列表框(名称为List1)和一个文本框(名称为Text1),如图1所示。编写窗体的KeyDown事件过程。程序运行后,如果用“A”键,则从键盘上输入要添加到列表框框中的项目(内容任意,不少于三个);如果按“D”键,则从键盘上输入要删除的项目,将其从列表框中删除。程序的运行情况如图2所示。在考生文件夹下有一个工程文件sjt2.vbp(相应的窗体文件名为sjt2.frm),可以实现上述功能。但这个程序不完整,请把它补充完整。 要求: 去掉程序中的注释,把程序中的?改为适当的内容,使其正确运行,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。
程序代码如下所示: 图1 图2 Private Sub Form_KeyDown(KeyCode As Integer,Shift As Integer) If Chr(KeyCode) = "A" Then Text1.Text = InputBox("请输入要添加的项目") List1.AddItem Text1.Text End If
If Chr(KeyCode) = "D" Then Text1.Text = InputBox("请输入要删除的项目") For i = 0 To List1.ListIndex - 1 If List1.List(i) = Text1.Text Then List1.RemoveItem i End If Next i End If End Sub (2)在考生文件夹下有一个工程文件sjt4.vbp(相应的窗体文件名为sjt4.frm),其功能是通过通用过程Average求数组的平均值。请装入该文件。程序运行后,在四个文本框中各输入一个整数,然后单击命令按钮,即可求出数组的平均值,并在窗体上显示出来(如图所示)。这个程序不完整,请把它补充完整,并能正确运行。 注意: 去掉程序中的注释符,把程序中的?改为适当的内容,使其实现上述功能,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。
程序代码如下所示: Option Base 1 Private Function Average(a() As Integer) As Single Dim Start As Integer, Finish As Integer Dim i As Integer Dim Sum As Integer Start = LBound(a) Finish = UBound(a) Sum = 0 For i = Start To Finish Sum = Sum + a(i) Next i Average = Sum / Finish End Function