设有如下程序段,其功能是查找并输出该数组中的最小值。请在空白处填入适当的内容,将程序补充完整。Option Base 1Private Sub Command1_Click()Dim arr1Dim Min As Integer, i As Integerarr1 = Array(12, 435, 76, -24, 78, 54, 866, 43)Min = arr1(1)For i=2 To 8If arr1(i)<Min ThenNext iPrint "最小值是:"; MinEnd Sub

题目

设有如下程序段,其功能是查找并输出该数组中的最小值。请在空白处填入适当的内容,将程序补充完整。

Option Base 1

Private Sub Command1_Click()

Dim arr1

Dim Min As Integer, i As Integer

arr1 = Array(12, 435, 76, -24, 78, 54, 866, 43)

Min = arr1(1)

For i=2 To 8

If arr1(i)<Min Then

Next i

Print "最小值是:"; Min

End Sub


相似考题
参考答案和解析
正确答案:Min=arr1(i)
Min=arr1(i) 解析:题目要求输出数组中的最小值,分析程序可知,本程序求数组最小值的算法是:假设最小值是第一个数组元素,并把它存在Min变量中,然后从数组的第二个元素开始逐个与Min变量对比,如果有比Min更小的数,则赋值给Min,这样对比到数组最后一个元素时,就能找到最小的元素;且它存储在Min变量中,因此最后只要输出Min变量值即可。
更多“设有如下程序段,其功能是查找并输出该数组中的最小值。请在空白处填入适当的内容,将程序补充完整。Option Base 1Private Sub Command1_Click()Dim arr1Dim Min As Integer, i As Integerarr1 = Array(12, 435, 76, -24, 78, 54, 866, 43)Min = arr1(1)For i=2 To 8If arr1(i)<Min ThenNext iPrint "最小值是:"; MinEnd Sub”相关问题
  • 第1题:

    设有如下程序:

    Option Base 1

    Private Sub Command1_Click()

    Dim arr1

    Dim Min As Integer, i As Integer

    arr1 = Array(12, 435, 76, -24, 78, 54, 866, 43)

    Min = ______

    For i = 2 To 8

    If arr1(i) < Min Then______

    Next

    Print "最小值是:"; Min

    End Sub

    以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中各元素的最小值。请填空。


    正确答案:

    arr1(1) min=arr1(i) 

  • 第2题:

    ( 23 )在窗体上画一个命令按钮,其名称为 command1, 然后编写如下代码:

    Option Base 1

    Private Sub Command1_Click()

    Dim a

    a = Array(1, 2, 3, 4)

    j = 1

    For i = 4 To 1 Step -1

    s = s + a(i) * j

    j = j * 10

    Next i

    Print s

    End Sub

    程序运行后,单击命令按钮后,其输出结果是

    A ) 4321

    B ) 1234

    C ) 34

    D ) 12


    正确答案:B

  • 第3题:

    在窗体上添加一命令按钮,其名为Command1,然后编写代码如下: private Sub Command1_Click() Dim arr(5)As Integer,arr1(5)AS Integer n=3 For i=1 To 5 arr(i)=i arr1(n)=2*n+i Next Print arr1(n);art(n) End Sub 程序的运行结果为

    A.3 11

    B.11 3

    C.13 3

    D.3 13


    正确答案:B

  • 第4题:

    有如下程序:

    Option Base 1

    Private Sub Form_Click()

    Dim arr, Sum

    Sum = 0

    arr = Array(1, 3, 5, 7, 9, 11, 13, 15, 17, 19)

    For i = 1 To 10

    If arr(i) / 3 = arr(i) \ 3 Then

    Sum = Sum + arr(i)

    End If

    Next i

    Print Sum

    End Sub

    程序运行后,单击窗体,输出结果为( )。

    A.25

    B.26

    C.27

    D.28


    正确答案:D

  • 第5题:

    在窗体上画一个命令按钮Command1,然后编写如下代码: Private Sub Command1_Click() Dim Arr1(10) As Integer, Arr2(10)As Integer n=3 For i = 1 To 5 Arr1 (i)=i Arr2(n)=2 * n+i Next i Print Arr2(n); Art1 (n)End Sub运行程序后,单击命令按钮,输出结果是( )。

    A.11 3

    B.3 11

    C.13 3

    D.3 13


    正确答案:A
    解析:本题使用For循环给数组Arr1、Art2的各个元素赋值,Art1的5个元素分别赋值为1、2、3、4、5:循环后i的值为5,Arr2(n)=2*n+i=11,因循环时n-直没有变化,因此,Arr2(n)=Arr2(3)。在窗体上输出时,Arr2(n)=Ad(3)=11Arr1(n)=fur1(3)=3。

  • 第6题:

    下面程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并在文本框Text1中输出该数组中各元素的最小值。请依据上述功能将程序补充完整。

    Option Base 1

    Private Sub Command1_Click()

    Dim arr1()

    Dim Min As Integer,i As Integer

    arr1=Array(12,435,76,-24,78,54,866,43)

    Min=______

    For i=2 To 8

    If arr l(i)<Min Then______

    Next i

    Text1=Min

    End Sub


    正确答案:arr1(1) Min=arr1(i)
    arr1(1) Min=arr1(i) 解析:本题考查VBA中程序设计的知识。对于这个问题,需要把数组元素依次与最小值比较,如果比当前的最小值还小,则让这个数组元素成为新的最小值,然后继续比较,直至数组元素都比较一遍为止。由于比较的循环从2开始,显然是预先设置最小值为数组的第一个元素即arr1(1);在比较循环内部如果符合If语句的条件,则让这个数组元素成为新的最小值,即Min=arr1(i)

  • 第7题:

    设有程序:

    Option Base 1

    Private Sub Command1_Click()

    Dim arr1,Max as Integer

    arr1=Array(12,435,76,24,78,54,866,43)

    【 】=arr1(1)

    For i=1 To 8

    If arr1(i)>Max Then【 】

    Next i

    Print"最大值是:";Max

    End Sub

    以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。请填空。


    正确答案:MaxMax=arr1(i)
    Max,Max=arr1(i) 解析:程序中用Array函数给变体变量 arr1赋了一组数,由于程序有Option Base 1语句,因此,数组元素的下标下界从1开始,接着把第一个数组元素赋给变量Max,这样为进行比较创造了条件,程序中的For循环控制比较次数,每次循环中,根据题目要求,若arr1(i)>Max,则arr1(i)较大,应该用arr1(i)替代 Max,所以程序中[13]处应填语句Max=arr1 (i)。

  • 第8题:

    设有如下程序:

    Option Base 1

    Private Sub Commandl Click()

    Dim arrl

    Dim Min As Integer,i As Integer

    arrl=Array(12,435,76,-24,78,54,866,43)

    Min=【 】

    For i=2 To 8

    If arrl(i)<Min Then【 】

    Next

    Print"最小值是:";Min

    End Sub

    以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中各元素的最小值。请填空。


    正确答案:arrl(1) Min=arrl(i)
    arrl(1) , Min=arrl(i) 解析:由于有Option Base 1语句,所以数组下标是从1开始。本题的功能是查找8个数中的最小值,首先使用Array语句给数组赋值,然后把第一个值赋值给最小值变量,及Min=arrl(1),然后从第二个数开始循环与最小值比较,如果比最小值小,则把这个值赋值给Min,即Min=arrl(i)。

  • 第9题:

    下面的程序用“冒泡”法将数组a中的10个整数按升序排列,请在【 】、【 】、【 】处将程序补充完整。

    Option Base 1

    Private Sub Command1_Click ()

    Dim a

    a=Array (678, 45, 324, 528, 439, 387, 87, 875, 273,823)

    For i=【 】

    For j=【 】

    If a(i)【 】a(j) Then

    a1=a(i)

    a(i)=a(j)

    a (j) =a1

    End If

    Next j

    Next i

    For i=1 To 10

    Print a(i)

    Next i

    End Sub


    正确答案:a To 9i+1 To 10 >=
    a To 9,i+1 To 10, >=

  • 第10题:

    以下程序的功能是,产生10个0~1000之间的随机整数,放入数组Arr中,然后输出其中的最大值。请填空。

    Option Base 1

    Private Sub Form. Click()

    Dim Arr(10) As Integer

    Dim Max As Integer

    Randomize

    For I = 1 To 10

    Arr(i) = Int (Rnd * 1000)

    Next i

    Max= ______

    For i = 2 To 10

    If______Then

    Max = Arr(i)

    End If

    Next i

    Print Max

    End Sub


    正确答案:Arr(1) Arr(i) > Max
    Arr(1) , Arr(i) > Max

  • 第11题:

    在窗体上画一个命令按钮,然后编写如下事件过程:Option Base 1Private Sub Command1_Click() Dim a As Variant a= Array (1,2,3,4) j=1 for i=a To 1 Step-1 s=s+ a(i)*j j=j*10 Next i Print sEnd Sub 运行上面的程序,单击命令按钮,其输出结果是______ 。

    A.4321

    B.12

    C.34

    D.1234


    正确答案:D
    解析:本题的难点是数组在循环中的调用。变量s的计算过程为“s=4+3×10+2×100+1×1000=1234”。

  • 第12题:

    在窗体上画一个命令按钮,然后编写如下程序: Option Base 1 Private Sub Command1 Click() Dim Arr1(12)As Integer, Arr2(3)As Integer Dim Sum As Integer Sum = 2 For i=1 To 12 Arrl(i)= i Next i For i=1 To 3 Arr2(i)= Arrl(i*i) Next i For i = 1 To 3 Sum = Sum + Arr2(i) Next i Print Sum End Sub 程序运行后,单击命令按钮,在窗体上的输出结果为

    A.16

    B.24

    C.32

    D.36


    正确答案:A
    解析:本题中定义了两个一维数组,分别为Arr1和Arr2,由于使用了OptionBase1语句,因此其大小分别为10和3,接着执行3个For循环。在第1个循环中,对Arr1数组赋初值,每个元素的值与其下标相同,即Arrl(1)=1,Arrl(2)=2……。在第2个循环中,为Arr2数组的3个元素赋值,这3个值分别为Arrl数组第1、3、9个元素的值,即Art2(1)=1、Arr2(2)=4、Arr2(3)=9。在第3个循环中,计算数组Arr2中各元素的和,并将它赋给变量Sum。各元素的和为1+4+9=14,但由于变量Sum的初值为2,因此最后的输出结果为16。

  • 第13题:

    (30)在窗体上画一个名为 Command1 的命令按钮,然后编写如下代码:

    Option Base 1

    Private Sub Command1_Click( )

    Dim a

    a=Array(1, 2, 3, 4)

    j=1

    For i=4 To 1 Step -1

    s=s+a(i)*j

    j=j*10

    Next i

    Print s

    End Sub

    运行上面的程序,其输出结果是( )。

    A)1234

    B)12

    C)34

    D)4321


    正确答案:A

    (30)【答案】A)
    【解析】s=4×1+3×10+2×100+1×1000=1234.

  • 第14题:

    阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。

    【说明】

    下面一段程序从给定的数组b中找出值最小的元素,并输出该元素的数组下标、内存地址minaddr以及元素值本身。函数findmin负责在给定的数组中查找最小值,并返回最小值所在的内存地址,函数有三个参数:array是所要处理的数组;size是数组的大小;index负责从函数返回具有最大值的元素在数组中的数组下标。请填充空白,使其成为一个合乎要求的完整程序。

    【程序】

    //程序开始

    include<iostream.h>

    int *findmin(int *array, int size, int &index);

    void main()

    {

    /****** 变量定义部分 ***********/

    int b[10] = {34, 34, 23, 89, 1, 2, 13, 42, 5, 54};

    (1);

    int idx;

    /******* 寻找最小值 ************/

    minaddr = findmin(b, sizeof(b)/sizeof(int), idx);

    /******* 输出最小值的有关信息 ************/

    cout << "Min value index: "<<idx<<end1

    <<"Min value address: "<<minaddr<<end1

    <<"Min value: "<<(2)<<end1;

    }

    /******* 函数findmin的定义部分 ************

    int *findmin(int *array, int size, int &index)

    {

    int min = 0;//max 是当前具有最小值的数组元素下标值

    for(int i = 1;(3); i++)

    {

    if(array[i]<(4))

    min = i;

    }

    (5);

    return array + min;//返回最小值所在内存地址

    }


    正确答案:(1)int *minaddr (2) b[idx] (3)isize (4) array[min] (5) index = min
    (1)int *minaddr (2) b[idx] (3)isize (4) array[min] (5) index = min

  • 第15题:

    (11)设有下列程序查找并输出该数组中的最小值,请在空白处填上合适的代码,将程序补充完整。 Option Base 1 Private Sub Command1_Click() Dim arr1 Dim Min As Integer,i As Integer Arr1=Array(12,435,76,-24,78,54,866,43) Min=arr1(1) For i=2 To 8 If arr1(1)<Min Then Next i Print"最小值:";Min End Sud


    正确答案:Min=arr1(i)
    【解析】题目要求输出数组中的最小值,分析程序可知,本程序求数组最小值的算法是:假设最小的值是第一个数组元素,并把它存在Min变量中,然后从数组的第二个元素开始逐个与Min变量对比,如果有比Min更小的数,则赋值给Min,这样对比到数组最后一个元素时,就能找到最小的元素,且它存储在Min变量中,因此最后只要输出Min变量值即可。

  • 第16题:

    下面程序:________Option Base 1Private Sub Command1_Click() Dim a(10),p(3)As Integer Dim i,k As Integer k=5 For i=1 To 10 a(i)=i Next For i=1 To 3 p(i)=a(i*i) Next For i=1 To 3 k=k+p(i)*2 Next Print kEnd Sub运行后的输出结果为________。

    A.33

    B.28

    C.35

    D.37


    正确答案:A
    解析:此题中共定义了两个数组:a(i),p(i),共用到三次For循环:
      第一个For语句是对数组a(i)赋值,a(1)到a(10)的值分别为1到10;
      第二个For语句是对数组p(i)赋值,p(1)=a(1)=1,p(2)=a(4)=4,p(3)=a(9)=9;
      第三个For语句是对k的值循环相加,三次循环的结果分别为:7,15,33。

  • 第17题:

    下列程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并在文本框Text l中输出该数组中各元素的最小值。请填空。

    Option Base 1

    Private Sub Command1_Click()

    Dim arr1()

    Dim Min As Integer,i As Integer

    Arr1=Array(12,435,76,-24,78,54,866,43)

    Min=______

    For i=2 To 8

    If arr1(i)<Min Then______

    Next i

    Text1=Min

    End Sub


    正确答案:arr1(1) Min=arr1(i)
    arr1(1) Min=arr1(i) 解析:本题考查VBA中程序设计的知识。对于这个问题,需要把数组元素依次与最小值进行比较,如果比当前的最小值还小,则让这个数组元素成为新的最小值,然后继续进行比较,直至数组元素都比较一遍为止。由于比较的循环从2开始,显然是预先设置最小值为数组的第一个元素即arr1(1);在比较循环内部如果符合If语句的条件,则让这个数组元素成为新的最小值,即Min=arr1(i)。

  • 第18题:

    设有以下程序:

    Option Base 1

    Private Sub Command1_Click( )

    Dim arr1 ,Max as Integer

    art1 = Array(12,435,76,24,78,54,866,43)

    【 】= arr1(1)

    For i = 1 To 8

    If arrl(i)>Max Then【 】

    Next i

    Print "最大值:"; Max

    End Sub

    以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。


    正确答案:Max Max=arr1(i)
    Max , Max=arr1(i) 解析:Max=arr1(1)是先将第1个元素设为最大值,然后在循环中逐一和数组元素arr1(i)进行比较,如果比当前的Max值大,则更新Max。以上程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。

  • 第19题:

    设有如下程序: Option Base 0 Private Sub Form Click() Dim a Dim i As Integer a = Array(1, 2, 3, 4, 5, 6, 7, 8, 9) For i = 0 To 3 Print a(5 - i); Next End Sub 程序运行后,单击窗体,则在窗体上显示的是

    A.4 3 21

    B.543 2

    C.6 54 3

    D.7 6 54


    正确答案:C
    解析:本题综合考查For循环控制语句与用Array函数为数组进行初始赋值.注意,由于“Option Base 0”,故数组的下标下界为0,所以a(5)应该是数组a的第六个元素“6”,以此类推,可知正确答案为C。

  • 第20题:

    在窗体上画一个命令按钮Command1,然后编写如下代码: Privae Sub Command1_Click() Dim Arr1(10) As Integer,Arr2(10) As Integer n=3 For i=1 To 5 Arr1(i)=i Art2(n)=2*n+i Next i Print Arr2(n);Arr1(n) End Sub 运行程序后,单击命令按钮,输出结果是( )。

    A.11 3

    B.3 11

    C.13 3

    D.3 13


    正确答案:A
    解析:本题使用For循环给数组Arr1、Art2的各个元素赋值,Arrl的5个元素分别赋值为1、2、3、4、5;循环后i的值为5,Arr2(n)=2*n+i=11,因循环时n-直没有变化,因此,Arr2(n)=Arr2(3)。在窗体上输出时,Arr2(n)=Arr2(3)=11;Atrl(n)=Arr1(3)=3。

  • 第21题:

    在窗体上画一个命令按钮(其Name属性为Command1),然后编写如下代码: Private Sub Command1_Click() Dim Arr1(10)As Integer,arr2(10)As Integer n=3 For i=1 To 5 Arr1(i)=i arr2(n)=2*n+i Next i Print arr2(n);Arr1(n) End Sub 程序运行后,单击命令按钮,输出结果是 ______。

    A.11 3

    B.3 11

    C.13 3

    D.3 13


    正确答案:A
    解析:本题的程序每次循环都将arr2(3)重新赋一次值。最终的arr2(3)的值为2*3+5=11。而arr1(3)的值始终为3。所以最终的输出是11和3。

  • 第22题:

    在窗体上添加一个命令按钮,其名为Command1,然后编写代码如下:Option Base 1Private Sub command1_ Click() Dim arr (4)As Integer Dim arrt (4) As Integer for i= 1 To 4 Arr (i)= i arr1 (n)= 2 * n + i Next i Print arr1 (n); arr(n)程序的运行结果为______。

    A.3 11

    B.11 3

    C.10 3

    D.3 13


    正确答案:C
    解析:本题难点是循环体内的变量赋值。“arr1(3)=3”比较容易理解,只是arr1(3)在4次循环中最后的结果替代了前面的值,即“arr1(3)=2×3+4=10”。

  • 第23题:

    在窗体上画一个按钮,然后编写如下的事件代码。在按钮上单击,输出为( )。 Option Base 1 Private Sub fun (a()As Integer,n As Integer) For i=1 To 2 t=a(i):a(i)=a(5-i+1):a(5-i+1)=t Next i End Sub Private Sub Command1_Click() Dim arr1(5)As Integer For i=1 To 5 arr1(i)=i Next i Call fun(arr1,5) Print arr1(1);arr1(2) End Sub

    A.1 2

    B.2 1

    C.5 4

    D.4 5


    正确答案:C
    解析:当发生Command1的Click事件时,定义了一个具有5个元素的数组arr1,并通过一个For循环给该数组各个元素赋值,赋值后arr(1)~arr(5)的值分别是1~5,然后调用过程fun。通过分析不难得出:过程fun的作用是把形参数组a的前n个元素逆序存放。由于数组作为参数是按地址传递的,所以对形参的修改也就是对相应实参数组的修改。执行函数调用“Callfun(arr1,5)”后,把arr1的5个元素逆序存放,最后输出的arr1(1)和arr1(2)的值应是5和4。