[填空题] 在窗体上画一个名称为Command1的命令按钮,然后编写如下程序: Option base 1 Private Sub Command1 Click() Dim a(10)As Integer For i = 1 To 10a(i)= i Next Call swap(______) For i=1 To 10Print a(i); Next End Sub Sub swap(b()As Integer) n = ______ For i=1 To n/2t = b(i)b(i)= b(n)b(n)= t______ Next End Sub 上述程序的功能是:通过调用过程swap,调换数组中数值的存放位置,即a(”与a(10)的值互换,a(2)与a(9)的值互换,……,a(5)与a(6)的值互换。请填空。
正确答案:a()
参考解析:UBound(b)或10 n=n-1 本题综合考查数组参数的传送以及For循环控制语句。由于建立了一个swap过程,该过程具有调换数组中数值的存放位置的功能,故在第一处调用该过程是,应把a()作为swap的参数。 For循环通过中介变量t交换数组中数值的存放位置。具体过程是,先把b(i)值赋给t,让t储存;随后将b(n)值赋给b(i),这个过程完成了数组靠后的元素与靠前的元素的交换:b(n)的值被赋给b(i)后,将接收b(i)的值,以完成数值的对调,这个过程由t对它赋值完成。据此,可以看出第二处应填数组的元素总数,即UBound(b)。UBound(b)函数返回数组 b的下标上界。由于在本程序中,只有a(10)需要调用该过程,所以第二处也可以填10。效果是一样的。 根据上面的分析,第三处应填写语句让n随着 For循环的执行不断的减小,而且每次减小的幅度为 1,故填:n=n-1。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)