内容正文:
考点10、11 VB基本算法
姓名: 班级:
1. 采用冒泡排序算法对数据序列“2,3,4,5,1,0”完成升序排序,则需要交换的次数为( )
A.9次 B.12次 C.15次 D.18次
2. 采用冒泡排序算法对某数据序列进行排序,经过第一轮排序后的结果是"2,8,3,9,5,6,7”,那么原数据序列不可能的是( )
A. 8, 3, 9, 5, 2, 7, 6 B. 8, 3, 9, 2, 6, 5, 7
C. 8, 2, 9, 3, 5, 7, 6 D. 8, 3, 2, 9, 6, 5, 7
3. 假定一组记录为(46,79,56,64,38,40,84,43),在冒泡排序的过程中,进行第一趟排序结束时,元素40不可能在哪个元素之后( )
A.38 B.46 C.56 D.64
4.某数据序列为“23,8,15,33,52,27,63,78”,采用选择排序算法将数据从小到大排序,那么排序过程中需要交换元素的次数是( )
A.7 B.6 C.5 D.4
5.采用冒泡排序算法对数据序列“8,3,5,2,0,9”进行排序,第一轮排序后的结果为“O,8,3,5,2,9”,则整个序列完成排序的交换次数是( )
A.6次 B.7次 C.8次 D.9次
6.有两个以字母结尾的字符串s1和s2,在忽略字符串中空格的前提下判断它们是否相同。实现该功能的VB程序段如下:
i = 1:j = 1
Do While i < Len(s1) And j < Len(s2)
If Mid(s1, i, 1)= Mid(s2, j, 1) Then
i=i+1:j=j+1
Else
End If
Loop
If i > len(s1) And j > len(s2) Then Text1.Text="相同" Else Text1.text="不相同"
方框中的代码由以下三部分组成: 代码顺序正确的是 ( )
1 If Mid(s1,i,1)="" Then i=i+1 ②If Mid(s2,j,1)="" Then j=j+1
③ Mid(s1,i,1)<>"" And Mid(s2,j,1) <>"" Then Exit Do 'Exit Do表示退出循环
A.①②③ B.②①③ C.②③① D.③②①
7.下列VB程序段功能为:在文本框Text1中显示整型数组元素a(1)到a(9)中的最小值和最大值。
amin=a(1) :amax=a(1)
i=2:j=9
Do While i<=j
If a(i)>a(j) Then (1) : (2) Else (3) : (4)
i=i+1:j=j-1
Loop
Text1.text=Str(amin)+”,” Str(amax)
上述程序段中方框处可选语句为:则(1)(2)(3)(4)处语句依次( )
①If a(j)>amax Then amax =a(j) ②If a(j) < amin Then amin =a (j)
③If a(i) < amin Then amin =a(i) ④If a(i)> amax Then amax =a (i)
A.④③②① B.④②③① C.③②④① D.③①④②
8.有如下VB程序段:
’生成6个随机正整数,依次存入数组元素a (1)到a(6),代码略
For i=1 To 2
For j=6 To i+1 Step -1
If a(j) Mod 3>a(j -1)Mod 3 Then
t= a(j): a(j)=a(j - 1): a(j -1) = t
End If
Next j
Next i
执行上述程序段后,下列选项中,a(1)到a(6)各元素值不可能的是( )
A.2,1,4,3,6,7 B. 5,2,1,7,8,