第三章控制结构复习题

2019-08-30 21:33

第三部分 控制结构复习题

一、选择题

1. 结构化程序由三种基本结构组成,下面属于三种基本结构之一的是( )。

(A)递归结构 (B)选择结构 (C)过程结构 (D)输入、输出结构2.下面程序段运行后,显示的结果是( )。

Dim x

If x Then Print x Else Print x + 1

(A)1 (B)0 (C)?1 (D)显示出错信息 3. 语句If x=1 Then y=1,下列说法正确的是( )。

(A)x=1和y=1均为赋值语句

(B)x=1和y=1均为关系表达式

(C)x=1为关系表达式,y=1为赋值语句 (D)x=1为赋值语句,y=1为关系表达式

4. 计算分段函数值: ??0,x?0下面程序段中正确的是( )。

y???1,0?x?1 ?2,1?x?2

?

?3,x?2(A)If x < 0 Then y = 0

(B)If x >= 2 Then y = 3

If x < 1 Then y = 1 If x >= 1 Then y = 2 If x < 2 Then y = 2 If x > 0 Then y = 1 If x >= 2 Then y = 3

If x < 0 Then y = 0 (C)If x < 0 Then

(D)If x > =2 Then

y = 0 y = 3 ElseIf x > 0 Then ElseIf x > =1 Then y = 1 y = 2 ElseIf x > 1 Then

ElseIf x > =0 Then y = 2 y = 1 Else

Else y = 3

y = 0 End If

End If

5.下面程序段求两个数中的大数,( )不正确。

(A)Max = IIf(x > y, x, y) (B)If x > y Then Max = x Else Max = y (C)Max = x (D)If y >= x Then Max = y

If y >= x Then Max = y

Max = x

1

6. 下列循环能正常结束循环的是( )。 (A)i = 5 (B) i = 1

Do

Do i = i + 1

i = i + 2 Loop Until i < 0

Loop Until i = 10

(C)i = 10

(D)i = 6

Do

Do

i = i + 1

i = i?2

Loop Until i > 0

Loop Until i = 1

7. 下面程序段的运行结果为( )。 For i = 3 To 1 Step?1

Print Spc(5?i);

For j = 1 To 2 * i?1 Print \ Next j Print Next i

(A) *

(B)*****

(C)*****

***

***

*** ***** * *

8. 哪个程序段不能分别正确显示1!、2!、3!、4!的值( (A)For i = 1 To 4 (B)For i = 1 To 4

n = 1

For j = 1 To i For j = 1 To i n = 1 n = n * j n = n * j Next j Next j Print n

Print n

Next i

Next i

(C)n = 1

(D)n = 1

For j = 1 To 4 j=1 n = n * j Do While j<=4

Print n n = n * j Next j Print n

j=j+1 Loop

9.程序运行后,单击命令按钮,结果为( )。

Private Sub Command1_Click() n = 6 f = 1 s = 0

For I = 2 To n Step 2 f = f * i s = s + f

Next i

D)*****

***

*

)。 2

Print s End Sub

(A) 72 (B) 6 (C)58 (D) 10 10.下列程序运行后输出的结果是( )

a$=\ For j = 1 To 2

a$ = b$ : b$=c$ : c$=a$ Next j

Print a$ + b$ + c$ End

(A) BCCAAB (B) CAABBC (C) BCCABC (D) CABCCA 11.InputBox函数的返回值的类型为______。

A.数值 B.字符串 C.逻辑值 D.日期值 12. MsgBox函数的返回值的类型为______。

A.整数 B.字符串 C.逻辑值 D.日期值

二、 填空题

1.要使下列FOR语句循环执行20次,循环变量的初值应当是:

For k =【 1 】To?5 Step?2

2. 下面程序段显示【 2 】个“*”。

For i = 1 To 5 For j = 2 To i Print \ Next j Next i

3. 找出被3、5、7除,余数为1的最小的5个正整数。

Private Sub Command1_Click() Dim CountN%, n% CountN = 0 n = 1 Do n = n + 1

If 【3 】 Then Print n

CountN = CountN + 1 End If

Loop【 4 】 End Sub

4.在窗体上画两个名称分别为Text1、Text2的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:

Private Sub Command1_Click() Dim x As Integer,n As Integer x=1

3

n=0

Do While x<20 x=x*3 n=n+1 Loop

Text1.Text=Str(x) Text2.Text=Str(n) End Sub

单击命令按钮,文本框Text1和Text2显示的内容是【5 】和【6 】。 5.输入任意长度的字符串,要求将字母顺序倒置 dim a$,c$,d$,n%,I%

a=inputbox(“输入字符串“) n=【 7 】

for I = 1 to n c=mid(a,I,1) d=【 8 】 next I a=d print a

6. 以下是按钮Command1的Click事件过程,求100以内所有素数,选择填空使程序完整: Private Sub Command1_Click() Dim i%, j%,flag% For i = 2 To 100 【 9 】

For j = 2 To sqr(i)

If i Mod j = 0 Then flag = 0 【10 】 End If Next j

If flag = 1 Then Print i Next i End Sub

7.下面程序运行后的结果为 【11 】 。 x=Int (Rnd( ))+3

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

8. 从键盘输入一个实数mm,请简要写出下列程序实现的功能是什么? 【12 】 Private Sub Command1_Click()

mm=Val(InputBox(\请输入一个实数\ n$=Str$(mm)

p=InStr(n, \‘InStr()函数:指定一字符串在另一字符串中最先出现的位置

4

If p>0 Then

Print Mid(n,p) ‘Mid 语句来得到某个字符串中的几个字符 Else

Print \ End If End Sub

9.下面程序运行后,单击命令按钮,在两个文本框中显示的值分别为【13 】 Private Sub Command1_Click() x=0

Do While x<50 x=(x+2)*(x+3) n=n+1 Loop

Text1.Text=Str(n) Text2.Text=Str(x) End Sub

10.下面程序的功能是:计算f=1-1/(2*3)+1/(3*4)-1/(4*5)+??+1/(19*20)

Private Sub Form_Click() Dim f,i,sign As Integer

_______【14 】_________ f = 1

______【15 】_________

f = f + sign / (i * (i + 1))

________【16 】__________

Next i

Print “f=”;f End Sub

11.下面的程序是在一个字符串变量中查找“at”,并用消息框给出查找结果的报告:没有找到或找到的个数,程序如下:

Public Sub Findat() Dim Str1 As String Dim length As Integer Dim sum As Integer Dim i As Integer Str1 = InputBox (“请输入一个字符串”) length = _______【17 】_________

i = 1 sum = 0

Do While i <= _______【18 】_________ If _______【19 】_______ = “at” Then

sum = sum + 1 End If i = i + 1

5

Loop

If ________【20 】_________ Then MsgBox “没有找到!” Else MsgBox “找到了” & Str (sum) & “个”

End If End Sub

答案

一、选择题

1. B

2. A x没有赋值,默认为0。而在VB中,0作为逻辑常量False,非0作为True。 3. C 4. D

对于多边选择,一般从最小值开始判断,依次增大;或者从最大值开始判断,

依次减小。这样可不会被众多的条件所迷惑或考虑不周而漏了某个条件的判断。 5. D 错误原因不管x取何值,f=x*x+3语句始终执行。

6. C A死循环,永远不可能小于0;B死循环,不可能使i=10;D死循环,不可能

使i=0。 7. B 8. B 9. C 10. D 11. B 12. A

二、填空题

(1) 33 根据循环次数计算公式得。

(2)10 该题相当于统计两重循环执行了多少次。 (3) n Mod 3 = 1 And n Mod 5 = 1 And n Mod 7 = 1 (4) Until CountN = 5或While CountN < 5 (5) 27 (6) 3 (7) len(a) (8) d=c+d (9) flag=1 (10) exit for (11) 7

(12) 输出数据的小数部分 (13) 2和72 (14) sign=1

(15)for i=2 to 19 (16)sign=-1*sign (17) len(Str1) (18)Length (19mid(Str1,i,2) (20)sum=0

6

在内循环体内对存放阶乘的变量n赋初值,显示的结果是1、2、3、4。


第三章控制结构复习题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中山市期末水平测试八上语文试卷

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: