原题
高二年级VB期末试卷
一、单选题
1、可以在窗体上输出数据的方法的是 ( )
A、Print B、Cls C、Show D、Hide
2、下列说法中错误的是( )
A、对象是具有某些特性的具体事物的抽象 B、在VB程序中,窗体(Form)不是对象
C、属性是对象所具有的特征 D、事件是发生在对象上且能被对象识别的动作
3、数据:“abcde”是( )数据
A、整型 B、长整型 C、字符型 D、日期型
4、以下各项中,可以作为VB变量名的是( )
A、13 B、 Stu23 C、22ab D、cj98.3
5、以下各项中,不能作为VB变量名的是( )
A、A52B B、if C、Y_5 D、Pi
6、InputBox函数返回值的类型为( )
A、数值 B、字符串 C、变体 D、数值或字符串(视输入的数据而定)
7、表达式5 <> 2 Or 6<7的值是( )
A、Ture B、False C、-1 D、1
8、数学式sin30°写成VB表达式是( )
A、Sin30 B、Sin(30) C、Sin(30°) D、Sin(30*3.14/180)
9、决定控件上文字的字体、字形、大小、效果的属性是( )
A、Text B、Caption C、Name D、Font
10、设a、b、c为整型变量,其值分别为1、2、3,以下语句的输出结果是( )
Print a;b;c
A.1 2 3 B.2 3 1 C.3 2 1 D.2 3 2
11、Visual Basic程序中的注释所使用的字符是( )
A、' B、: C、\ D、_
12、若要求从文本框中输入密码时在文本框中只显示 * 号,则应在此文本框的属性窗口中设置( )。
A、Text 属性值为 * B、Caption 属性值为 *
C、Password 属性值为空 D、Passwordchar 属性值为 *
13、表达式“XYZ” + “487”的值是( )
A、“XYZ487” B、“XYZ” C、“487” D、“487XYZ”
14、下面语句中,正确的是( )
A、If x<3*y And x>y Then y=x^3 B、If x<3*y And x>y Then y=3x
C、If x<3*y : x>3 Then y=x^3 C、If x<3*y : x>y Then y=x**3
15、下列程序段的执行结果为( )
X=2
Y=5
If X*Y<1 Then Y=Y-1 Else Y=-1
Print Y-X>0
A、Ture B、False C、-1 D、1
16、下列关于visual basic特点的描述,哪个是正确的( )
A、面向对象 B、可视化 C、事件驱动 D、以上都是
17、为了使标签中的内容靠右显示,应将alignment属性设置为( )
A、0 B、1 C、2 D、3
二、填空题(2分×9,共18分)
1、布尔型数据只有________和________两个值。
2、关系运算符有>、<、=、<>、________、________ 6种。
3、Visual Basic 的print方法具有 和 双重功能。
4、________________函数显示一个能接收用户输入数据的对话框,并返回用户在对话框中输入的消息。
5、_________方法可以清除Form或PictureBox中由Print方法在运行时所生成的文本或图形。
6、设a=6,b=3,c=5,则表达式Not a>c An c=b OR b<a+c的值为 。
7、假定一个文本框的Name属性为Text1,为了使该文本框获得焦点,应执行的语句是 。
8、执行print 9.4\3.7,9.4 MOD3.7 后,输出结果为 。
9、表达式Ucase(Mid(“abcdefgh”,3,4))的值是 。
三、把下列数学表达式改为VB表达式。(4分×3,共12分)
1、3(a-b)
2、1≤X≤5
3、
四、写出下列表达式的值(4分×3,共12分)
1、Abs(-100)+Sqr(100)
2、Not 3<=4 And 4 < > 5
3、3 ^ 2 - 8 > Abs (99-100)
五、阅读程序并填空(共24分)
1、阅读以下程序段,写出运行结果: (4分)
x = 1 :y=0
x = x + 1
y = y + 1
print “x=” & Str(x); “y=” & Str(y)
运行结果:________________
2、阅读以下程序段,写出运行结果: (4分)
x=5
y=-6
If x>0 Then x = y-3 Else y = x+3
Print x - y ; y – x
运行结果:________________
3、下列程序可以实现在窗体上由用户任意输入一个整数,程序可以判断该数的奇偶。程序由一个文本框(Textbox)、两个标签(Label)、一个按钮(Command)组成。要求:奇或偶的结果在Label2内显示,请在空格处填入相应的语句,使之完成上述功能。 (6分)
Private Sub Form_Load ( )
Text1.Text = “”
Label1.Caption = “请输入一个整数”
Label2.Caption = “”
Command1.Caption = “判定”
End Sub
Private Sub Command1_Click( )
Dim x As Integer
x = Val(Text1.text)
If Then
label2.caption="该数是偶数"
Else
_________ _______
End If
End Sub
4、阅读下面程序,并写出执行结果。(3分)
x=int(rnd+1) +2
if x^2>8 then y=x^2+1
if x^2=9 then y=x^2-2
if x^2<8 then y=x^3
print y
5、读程序,写结果。(4分)
private sub form_click( )
x=2
y=3
x=y
print”X=”;X,
print”y=”;y
x=x+1
print”X=”;X,
print”y=”;y
end sub
6、读程序,写结果。(3分)
private sub form_click( )
const pi as single=3.14
a%=7
if a mod 4 > pi then
print”努力”
else
print”学习”
end if
end sub
老师给的答案(加上我的菜鸡解析)
一、单选题
1、可以在窗体上输出数据的方法的是 ( A )(这个没有什么要讲的,就是print{打印})
A、Print B、Cls C、Show D、Hide
2、下列说法中错误的是( B )
A、对象是具有某些特性的具体事物的抽象
B、在VB程序中,窗体(Form)不是对象(窗体是对象,只不过是属于容器类的对象)
C、属性是对象所具有的特征
D、事件是发生在对象上且能被对象识别的动作
3、数据:“abcde”是( C )数据。(我们规定,一切字符带双引号的,统称为"字符型数据")
A、整型 B、长整型 C、字符型 D、日期型
4、以下各项中,可以作为VB变量名的是( B )(这里需要用到变量名的规则:1.必须以字母开头,变量名中不能有空格。2.不可以包含嵌入的句号或者类型声明字符。3.不能和受到限制的关键字同名(例如End、Len、Sub等)
A、13 B、 Stu23 C、22ab D、cj98.3
5、以下各项中,不能作为VB变量名的是( B )(这里也需要用到变量名的规则:1.必须以字母开头,变量名中不能有空格。2.不可以包含嵌入的句号或者类型声明字符。3.不能和受到限制的关键字同名(例如End、Len、Sub,if等)
A、A52B B、if (这个if用通俗的话讲,VB已经用做了判断,所以不可以作为变量名,也就是“变量名不可与关键字同名!”) C、Y_5 D、Pi
6、InputBox函数返回值的类型为( B )(inputbox函数返回值类型为:字符串类型,没有什么要讲的,就死记就行!书上的内容)
A、数值 B、字符串 C、变体 D、数值或字符串(视输入的数据而定)
7、表达式5 <> 2 Or 6<7的值是( A )(这里我们来讲一下整体的意思《5不等于2或者6小于7》,这里考的知识点为:or(或者)的用法,or的意思为,如果有一个为真,那么也就代表这个表达式是真的!也就是说,5就算小于3(假),但6小于7(真),它的结果也是真的)
A、Ture B、False C、-1 D、1
8、数学式sin30°写成VB表达式是( D )(这里需要用到数学中的三角函数:Sin(30 * 3.14 / 180)先把角度转成弧度,弧度=角度*π/180,然后直接用sin函数就行了)
A、Sin30 B、Sin(30) C、Sin(30°) D、Sin(30*3.14/180)
9、决定控件上文字的字体、字形、大小、效果的属性是( D )(首先我们用排除法,text属性是文本,caption属性是标题,name属性为名字(这里要注意,name属性是用来定义一个窗体或者控件的名字,例如{from1.name=我是名字},下面再次利用from的时候,就为{我是名字.属性值}),font属性为字体属性,例如size(大小)等)
A、Text B、Caption C、Name D、Font
10、设a、b、c为整型变量,其值分别为1、2、3,以下语句的输出结果是( A )(这里没什么要讲的,分号为紧接着输出,逗号为分区输入,也就是隔了一个TAB键的距离)
Print a;b;c
A.1 2 3 B.2 3 1 C.3 2 1 D.2 3 2
11、Visual Basic程序中的注释所使用的字符是( A )(这里也没有什么要讲的,就给大家讲一下另一种注释吧《rem后面跟注释内容。以Rem关键字开头并且Rem关键字与注释内容之间要加一个空格。注释可以是单独的一行也可以写在其他语句行的后面。如果在其他语句行后使用Rem关键字则必须使用冒号(:)与语句隔开》)
A、' B、: C、\ D、_
12、若要求从文本框中输入密码时在文本框中只显示 * 号,则应在此文本框的属性窗口中设置( D )。(这里的话,看上面的解析,text和caption就可以排除了,Password是密码,passwordchar是设置用于掩盖的字符,例如*等)
A、Text 属性值为 * B、Caption 属性值为 *
C、Password 属性值为空 D、Passwordchar 属性值为 *
13、表达式“XYZ” + "487" 的值是( A )(这里的话,XYZ是一个字符串,而487也是字符(我们说过的,有双引号的我们统称为字符型数据),所以相加后为XYZ487,但是,不是数字的字符型数据是不可以和数值型运算的!例如"ABC"+123,但是如果双引号里为123或是另一些数字,那么会将它们两个的结果相加!)
A、“XYZ487” B、“XYZ” C、“487” D、“487XYZ”
14、下面语句中,正确的是( A )(这里我们可以看到,很明显的语法错误,BCD,B的错误为:3x应该是3*x 而CD为:条件语句中不可以加冒号!)
A、If x<3*y And x>y Then y=x^3 B、If x<3*y And x>y Then y=3x
C、If x<3*y : x>3 Then y=x^3 C、If x<3*y : x>y Then y=x**3
15、下列程序段的执行结果为( B )(看下面吧~)
X=2 将2赋值给Y
Y=5 将5赋值给Y
If X*Y<1 Then Y=Y-1 Else Y=-1 如果X乘Y小于1,则将Y-1赋值给Y(但我们算出来后,2x5=10 它不小于1,所以就是else了)那么将-1赋值给Y
Print Y-X>0 那么由上面可以得到X=2 Y=-1 那么Y-X=-3,它不大于0,所以最后结果为false(假的)
A、Ture B、False C、-1 D、1
16、下列关于visual basic特点的描述,哪个是正确的( D )(书上的内容)
A、面向对象 B、可视化 C、事件驱动 D、以上都是
17、为了使标签中的内容靠右显示,应将alignment属性设置为( B )(alignment默认为0(靠左)其次靠右为1 然后为2(居中)这里主要,alignment属性没有3!!!)
A、0 B、1 C、2 D、3
二、填空题(2分×9,共18分)
1、布尔型数据只有(true)和(false)两个值。
2、关系运算符有>、<、=、<>、(>=)、(<=)6种。
3、Visual Basic 的print方法具有 (输出)和(计算)双重功能。
4、(inputbox())函数显示一个能接收用户输入数据的对话框,并返回用户在对话框中输入的消息。
5、(cls)方法可以清除Form或PictureBox中由Print方法在运行时所生成的文本或图形。
6、设a=6,b=3,c=5,则表达式Not a>c And c=b OR b<a+c的值为(true)。这里有个小技巧,我们看到or时就要想到(如果一方为真,那么结果也就为真)算or左右好算的,很明显,b是小于a+c的,所以答案为true(真)
7、假定一个文本框的Name属性为Text1,为了使该文本框获得焦点,应执行的语句是 ( text1.setfocus) 。
8、执行print 9.4\3.7,9.4 MOD 3.7 后,输出结果为 ( 2 1)。
9、表达式Ucase(Mid(“abcdefgh”,3,4))的值是(CDEF) 。
三、把下列数学表达式改为VB表达式。(4分×3,共12分)(这里没什么要讲的)
1、3(a-b)
3*(a-b)
2、1≤X≤5
x>=1 and x<=5 这个很简单啊,你看上面那个式子,它x需要同时满足两种条件,我们应该立刻想到and(只有两个全为真,结果才是真的!
3、
(x^3+y^3+z^3)/sqr(x+y+z)
四、写出下列表达式的值(4分×3,共12分)*(这里也没有什么要讲的)
1、Abs(-100)+Sqr(100) (就是考了一个abs取绝对值和sqr开根号的函数)
110
2、Not 3<=4 And 4 < > 5
False
3、3 ^ 2 - 8 > Abs (99-100)
False
五、阅读程序并填空(共24分)(这里的话,如果不会,那就是你函数那块没学好)
1、阅读以下程序段,写出运行结果: (4分)
x = 1 :y=0 这里我们简单讲一下吧,这个式子的含义是将1赋值给x,0赋值给y,也就是x=1,y=0
x = x + 1 然后将x+1赋值给x,也就是说,x=x+1=1+1=2,那么x=2,y=0
y = y + 1 将y+1赋值给y,也就是说,y=y+1=0+1=1,那么x=2,y=1
print “x=” & Str(x); “y=” & Str(y) 这里str将数值转为字符,所以,最后答案为x=2,y=1
运行结果:x= 2 y= 1
2、阅读以下程序段,写出运行结果: (4分)
x=5 同理的我就不讲了,直接看if那里
y=-6
If x>0 Then x = y-3 Else y = x+3 如果x>0则将y-3赋值给x(我们先看这个条件成立不成立,上面已经明确指出x=5,那么5>0这是真的)所以将y-3赋值给x,也就是x=y-3,接下来套公式得出x=y-3=-6-3=-9)那么我们整理一下(x=-9,y=-6)
Print x - y ; y – x 那么这个就简单了吧?x-y=-9-(-6)=-9+6=-3-------------------y-x=-6-(-9)=-6+9=3
运行结果:-3 3
3、下列程序可以实现在窗体上由用户任意输入一个整数,程序可以判断该数的奇偶。程序由一个文本框(Textbox)、两个标签(Label)、一个按钮(Command)组成。要求:奇或偶的结果在Label2内显示,请在空格处填入相应的语句,使之完成上述功能。 (6分)
这里可能很多人不明白为什么《x/2=int(x/2)》,首先我们假设x为3,那么x/2=3/2=1.5,int取整x/2为1,那么1.5能等于1吗?肯定不能吧,所以这个结果也就为假的
Private Sub Form_Load ( ) Text1.Text = “” Label1.Caption = “请输入一个整数” Label2.Caption = “” Command1.Caption = “判定” End Sub Private Sub Command1_Click( ) Dim x As Integer'定义一个整型 x = Val(Text1.text)'val函数代表将字符转为数值,因为从文本框里过来的数据全为字符,这里要注意一下!! If x mod 2=0 '或x/2=int(x/2) Then 'mod是取余函数,int是取整函数,这里在将一种取整,fix函数,直接取整数部分,把小数部分删掉 label2.caption="该数是偶数" Else label2.caption="该数是奇数" End If End Sub
4、阅读下面程序,并写出执行结果。(3分)
x=int(rnd+1) +2 '我是这么想的,因为这块毕竟我也有点懵,所实话,首先看函数,rnd(随机取一个0-1之间的数,但是它是区间,也就是不可以取0和1,那么我们可以想到0.1等等
'接下来我们假设rnd取0.1那么0.1+1=1.1,int取整后为1,1+2=3,也就是x=3
if x^2>8 then y=x^2+1 '如果x的平方大于8那么将x的平方+1赋值给y,我们先看条件成立不成立吧,首先我们知道x=3,那么x的平方=9,9肯定大于8呀,所以y就为x的平方+1也就是y=3x3+1 if x^2=9 then y=x^2-2 '但是这里,如果按y=9的话,这个也就满足了,y=x*x-2=3x3-2=7,实在不懂,有会的的话,评论区告诉我,谢谢 if x^2<8 then y=x^3 print y
7
5、读程序,写结果。(4分)
private sub form_click( ) x=2 y=3 x=y '就是一个简单的交换原理,将y赋值给x,也就是y=2,x=3了呗。 print”X=”;X x=3 print”y=”;y y=3 x=x+1 '上面的x=3,这里将x+1赋值给x,也就是x=3+1=4 print”X=”;X, x=4 print”y=”; y y=3 end sub
6、读程序,写结果。(3分)
private sub form_click( ) const pi as single=3.14 这里就是将pi定义为整型,然后为3.14 a%=7 '%就是个(integer % 短整型、long & 长整型,single ! 单精度浮点型 ,double # 双精度浮点型 ,currency @ 货币型 ,string $ 字符型) if a mod 4 > pi then '如果a除以4的余数大于pi也就是3.14,那么输出努力,我们先看a=7那么a除以4余数是不是为3呀?那么3大于3.14吗?很明显,不成立,所以就为else也就是“学习” print”努力” else print”学习” end if end sub
学习