试卷征集
加入会员
操作视频

小吴为了探究冒泡排序过程中数据的“移动”情况,编写了一个VB程序,功能如下:在列表框List1中显示排序前数据(存储在数组a中),在文本框Text1中输入初始位置(即下标值),单击“排序”按钮Command1后,在标签Label1中显示指定初始位置的数据在排序过程中的位置变化情况,排序后的数据显示在列表框List2中。程序运行界面如图所示。
实现上述功能的VB程序如下,但加框处代码有错,请改正。
Dim a(1To 8)As Integer
Dim n As Integer
Private Sub Form_Load (  )
'n=8,排序前的8个数据存储在数组a中,并在列表框Listl中显示
'代码略
End Sub
Private Sub Command1_Click (  )
Dim i As Integer,j As Integer,k As Integer
Dim pos As Integer'变量pos存储指定数据的位置(即下标值)
Dim s As String'变量s存储pos变化情况
s=Text1.Text
pos=Val(Text1.Text)
For i=1To n-1
For j=n To i+1Step-1
If a(j)<a(j-1)Then
‘(1)
a(j-1)=a(j)
a(j)=k
'如果pos位置的数据参与交换,则更新pos值,记录pos变化情况
If pos=j Then
pos=j-1
s=s+”→”+Str(pos)
‘(2)
pos=j
s=s+”→”+Str(pos)
End If
End If
Next j
Next i
Label1.Caption=”位置变化情况:”+s
For i=1To n
List2.AddItem Str(a(i))
Next i
End Sub

【答案】见试题解答内容
【解答】
【点评】
声明:本试题解析著作权属菁优网所有,未经书面同意,不得复制发布。
发布:2024/6/27 10:35:59组卷:27引用:3难度:0.3
相似题
  • 1.有如下 Python 程序段:

    运行后列表中的值可能是(  )

    发布:2024/12/18 21:0:2组卷:5引用:3难度:0.3
  • 2.用VB编写的函数bubble_sort是一个用冒泡方法实现排序的函数,其调用时需要三个参数:布尔类型参数sx来确定是升序还是降序,sx为True时为升序,否则为降序;整数型数组a
     
    是待排序的数据,数据从a(1)开始存放;整数型参数n表示传入的数组长度,该函数的返回值也是一个整数型数组.所以调用此函数实现排序非常方便:
    比如有一个整数型数组a(1 to 10)需要降序排序,可以直接这样调用:
    a
     
    =bubble_sort(False,a
     
    ,10)
    该函数VB代码如下:
    Function bubble_sort(sx As Boolean,a
     
     As Integer,n As Integer) As Integer
     

    Dim i,j,t As Integer
    For i=1 To n-1
    For j=
     
    Step-1
    If
     
    Then
    If a(j)<a(j-1)Then t=a(j):a(j)=a(j-1):a(j-1)=t
    Else
    If a(j)>a(j-1)Then t=a(j):a(j)=a(j-1):a(j-1)=t
    End If
    Next j
    Next i
    bubble_sort=a
     

    End Function
    请将代码补充完整:
     

     

    发布:2024/12/20 20:30:1组卷:23引用:2难度:0.3
  • 3.用选择排序法对一组数据进行升序排序,第一趟排序结束后的顺序为2、6、9、3、7,则原始数据顺序不可能的是(  )

    发布:2024/12/18 23:0:1组卷:10引用:1难度:0.5
深圳市菁优智慧教育股份有限公司
粤ICP备10006842号公网安备44030502001846号
©2010-2025 jyeoo.com 版权所有
APP开发者:深圳市菁优智慧教育股份有限公司| 应用名称:菁优网 | 应用版本:5.0.7 |隐私协议|第三方SDK|用户服务条款
广播电视节目制作经营许可证|出版物经营许可证|网站地图
本网部分资源来源于会员上传,除本网组织的资源外,版权归原作者所有,如有侵犯版权,请立刻和本网联系并提供证据,本网将在三个工作日内改正