(X)7、Dimal,a2AsInteger语句表示声明的变量el和a2都为整型变虽:
。
(7)8.执行Do-LoopWHle语句时,不管条件真假,首先会无条件地执行一次循环。
(X)9、Rnd(x)产生[0,1]之间的随机数。
(V)10.每个VisualBasic对象都有Name属性。
二选择题(以下只有一项是正确的,每题2分,共40分)
()1、不是VisualBasic的特点的选项是:
A.可视编程B・面向过程C.事件驱动D.而向对象
()2、如果把一个人当作对象,那么"身高”相当于这个对象的:
A.属性B•方法C•事件D.特征
()3、以下哪项不是合法的变量名?
A.Mid(S,5,3)B.Middle(S,5,3)
C・Right(S,5,3)D・Left(S,5,3)
)9、为使计时器对象每隔5秒钟产生一个时钟事件(Timer事件),则其Interval属性值应设置为:
)11、下列4个选项中,可以单独的构成一条语句的选项是:
)13、下列表达式中,合法的VisualBasic表达式有:
A.(—b+sqr(b*b+4a*c))/2/a
B.Cos(a厂2-Atn(a)
C.Sqr(YA3+3*(A*A+6B*B))
D.1/(X+1/Y+5A)
)14、在一个语句行内写多条语句时,语句之间应该用什么符号分隔?
A.逗号
B.分号C•顿号D.冒号
)15、计算结果为0的表达式是:
A.Int(3.4)+Int(-3.8)B・Int(3.4)+Fix(-3.8)
C.Fix(3.4)+Fix(-2・8)D.Fix(3.4)+Int(-3.8)
)16、下列程序段执行后输岀的结果是:
x=int(Rnd+4)
SleetCasex
Case5
Print"优秀"
Case4
Print"良好"
Case3
Print及格"
CaseElse
Print不及格"
EndSelect
A.优秀B.良好c.及格D.不及格
)17、循环结构Fori二0to10Step2的执行次数是:
A.4B・5C.6D.7
)18、“x是小于100的非负数S用VB表达式表示,正确的是:
C.0<=x<100D.OWxOrx<100
)19、
要判断两个整型变量A和B中有且只有一个为0,不能使用下而哪一个逻辑表达式
A.25B.10
C・11D.因为y的初值不知道,所以不确定
Fori=lto10Step2
y=y+i
Nexti
Printi
三・填空题(每空2分,共20分)
1.语句optionexplicit的作用是
2•把条件10WXV12写成Visualbasic表达式为:
10〈=xandx<12°
—/?
4-x/h2—4dC
3・将数学式——W写成加表达式为
2a
4•逻輻符And、Or.Not按优先级排序为:
5.选拔身髙(T)超过1.7米且体重(W)小于62.5公斤的人,表示该条件的布尔表达式为:
T>1.7
and收62.5。
6.声明一个值为3.14的常量Pi的语句为Constpi=3.14_.
7•在过程中怎义Dimx(9,1to10)asInteger,则数组中共拥有个元素。
8•要使一个按钮无效,则可把它的Enable属性设为_False_(True.False)o
9•设X是大于300且能被3整除的奇数,关于X的表达式为:
(x>300)and(xMod3=0)and(xMod2<>0)□
10.泄时器控件的Interval属性值是指时间间隔,单位为亳秒;当每隔此间隔的时间,龙时器会触发一次计时器事件。
四•程序填空题:
(每空3分,共12分)
1.如下程序运行后,变量S的值为120,i的值为_o
OptionExplicit
PrivateSubCommand1_Click()
DimiAsInteger
StaticSAsInteger
S二1
Fori=1To5
S=S*i
Nexti
PrintS
EndSub
2.以下程序是求1—100之间所有的“偶数”之和。
请填空。
Dimsasinteger
Dimiasinteger
S=0
Fori=2to100step2
S二S+i
Nexti
PrintS
五・程序阅读题(每小题2分,共4分)
在窗体上画一个需称为Commandl的命令按钮,然后编写如下事件过程:
PrivateSubcommand1_C1ick0
Forn=lTo5
IfnMod3<>0Thenm=m+n\3NextnPrintn
Printm
EndSub
程序运行后,如果单击命令按钮,则窗体上显示:
n=6;m=2
六.程序设计题,请将以下横线中的代码补充完整。
(每空2分,共14分)
1.假设某班共有学生N人,编写程序统计该班学生的VisualBasic考试成绩,并显示出60分以下、
60-70.70-80.80-90以及90分以上的学生人数各是多少?
ForI=1to
实验六思考题:
设s,m,n均为String类型的变量,编程实现:
如果s中包含字串m,则将s中的字串m部分替换为n后生成一个新串并输出.要求s,m,n的值均由用户输入.
PrivateSubCommand1_C1ick()
DimsAsString
DimmAsString
DimnAsString
DimIsAsString
DimiAsInteger
DimkAsInteger
s=InputBox("请输入S字符串")
Text2・Text=s
m=InputBox(,z请输入m字符串")
Text3・Text=m
n=InputBoxC请输入n字符串")
Text4.Text=n
i=InStr(s,m)
k=i+Len(m)
Is=Left(s,i-1)
Textl・Text二Is+n+Mid(s,k)'textl・Text二left(s,i-l)+n+mid(s,k)
EndSub
PrivateSubForm_Click()
Dima%,b%>c%>tempAsDouble
a=Vai(InputBoxC请输入a"))
b=Vai(InputBoxC请输入b"))
c=Vai(InputBoxC请输入c"))
Ifa>bThen
temp=a
a=b
b=temp
EndIf
Ifa>cThen
temp=a
a=c
c=temp
EndIf
Ifb>cThen
temp=b
b=c
c=temp
EndIf
Printa;b;c
EndSub
PrintResult
或者PrivateSubcmdselect_Click()
DimxAsSingle,yAsSingle
DimOperatorAsString
DimresultAsSingle
x=Val(InputBox("输入第一个数:
”,,0))
Operator=InputBox("输入运算法:
y=Vai(InputBox(z/输入第二个数:
",,0))
SelectCaseOperator
Case"+":
result=x+y
Case“-":
result=x-y
Caseresult二x*y
Case"/":
result=x/y
EndSelect
Printresult
EndSub
1、PrivateSubForm_Click()
Dimx%>y%>z%
X=Val(InputBox(^请输入第一门课程成绩"))
y=Val(InputBox(^请输入第二门课程成绩"))
z=Val(InputBox(^请输入第三门课程成绩"))
If((x+y+z)/3)>95Or(x=100Andy=100Andz>=80)Or(x=100Andz=100Andy>=80)Or(y=100Andz=100Andz>=80)ThenPrint"该同学获得一等奖〃
Elself(x+y+y)/3>90Or(x=100Andy>=75Andz>=75)Or(y=100Andx>=75Andz>=75)Or(z=100Andx>=75Andz>=75)ThenPrint"该同学获得二等奖"
Elselfx>=70Andy>=70Andz>=70Then
Print"该同学获得三等奖"
Else
Print"该同学没有奖项"
EndIf
EndSub
2、评优If语句
PrivateSubcmdCheck_Click()
Dima%
a=Val(InputBox(^请输入一门课程的百分之成绩〃))
Ifa>=90Then
Print"优秀"
Elselfa>=80Anda<=89Then
Print"良好"
Elselfa>=70Anda<=79Then
Print"中等
Elselfa>=60Anda<=69Then
Print"及格"
Else
Print"不及格"
EndIf
EndSub
评优Select语句
PrivateSubcmdpingyou_C1ick()
Dima%
a二Val(InputBox(,z请输入一门课程的白•分之成绩〃))
SelectCasea
Case90To
100:
Print"优秀"
Case80To89:
Case70To79:
Case60To69:
CaseIs<=59:
Print"良好"
Print"中等"
Print"及格"
Print"不及格"
EndSelect
EndSub
在窗体中产生五彩缤纷的效果。
PrivateSubForm_Click()
Dimi%
Dimx,y,color
Me.DrawWidth=4
WhileTrue
X二Me.Width*Rnd()
y=Me.Height*Rnd()
color=RGB(255*Rnd(),255*Rnd(),255*Rnd())Me.PSet(x,y),color
DoEvents
Wend
EndSub列出100-200之间的所有素数。
PrivateSubCommand1_C1ick()
DimxAsInteger
Dimi%>j%,k%
k=0
Fori二100To200
Forj=2Toi-1IfiModj=0ThenExitFor
EndIf
Next
Ifi=jThen
'输出素数
,统计素数的个数
'每8个素数为一行
'每16个字符为一行输出
Printi;
k=k+1
IfkMod8=0ThenPrint
EndIf
EndIf
Next
EndSub
显示1-128的字符:
PrivateSubForm_Click()
Dimi%
Fori=1To128
PrintChr(i):
IfiMod16=0Then
Print
EndIf
Next
EndSub
用循环显示数字0-9:
PrivateSubcmdDo_Click()
Dimi%
i=0
Print"do循环输出数字0-9:
Do
Printi;
i=i+1
LoopWhilei<=9
EndSub
PrivateSubcmdFor_Click()
Dim1%
Print"for循环输出数字0-9:
"
Fori=0To9Printi;
Next
Print
EndSub
PrivateSubcmdWhile_Click()
Dimi%
i=0
Print"wh订e循环输出数字0~9:
DoWh订ei<=9Printi;
i=i+1
Loop
Print
EndSub九九乘法表:
上三角下三角