niusouti.com

有以下程序: Sub subP(b()As Integer) For i=1 To 4 b(i)=2*i Next i End Sub Private Sub Command1_Click() Dim a(1 To 4)As Integer a(1)=5 a(2)=6 a(3)=7 a(4)=8 subPa() For i=1 To 4 Print a(i) Next i End Sub 运行上面的程序,单击命令按钮,输出结果为( )A.2 4 6 8B.5 6 7 8C.10 12 14 16D.出错

题目

有以下程序: Sub subP(b()As Integer) For i=1 To 4 b(i)=2*i Next i End Sub Private Sub Command1_Click() Dim a(1 To 4)As Integer a(1)=5 a(2)=6 a(3)=7 a(4)=8 subPa() For i=1 To 4 Print a(i) Next i End Sub 运行上面的程序,单击命令按钮,输出结果为( )

A.2 4 6 8

B.5 6 7 8

C.10 12 14 16

D.出错


相似考题
更多“有以下程序:Sub subP(b()As Integer) For i=1 To 4 b(i)=2*i Next iEnd SubPrivate Sub Comm ”相关问题
  • 第1题:

    阅读程序: Sub p( b () As Integer)For i =1To 4 b(i) = 2(iNext i End Sub Private Sub Command1_Click()Dim a (1 To 4) As Integer a(1)=5 a(2)=6 a(3)=7 a(4)=8 call p (a) For i=1 To 4 Print a(i) Next iEnd Sub运行上面的程序,单击命令按钮,输出结果为。


    正确答案:2 4 6 8
    【解析】本题综合考查Sub过程的建立与调用以及数组的赋值。P过程为参数b()赋值,赋值方法为b()中的元素值等于其下标的2倍。在事件过程中,数组a(1 to 4)先被逐一赋值,然后以传地址的方式被p过程调用。在调用中,a(i)被重新按照p过程的赋值方式(即元素值等于对应下标值的2倍)赋值。由于是以传地址的方式传送a(1 to 4),故在调用完p过程后,a(1 to 4),故在调用完p过程后,a(1 to 4)中的元素值将保留,故空白处填:2 4 6 8。

  • 第2题:

    有以下程序:includemain(){int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;

    有以下程序: #include<stdio.h> main() {int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i; for(i=0;i<12;i++)c[s[i]]++; for(i=1;i<5;i++)printf("%d",c[i]); printf("\n"); } 程序的运行结果是( )。

    A.1 2 3 4

    B.2 3 4 4

    C.4 3 3 2

    D.1 1 2 3


    正确答案:C
    解析:程序中定义了两个数组s和c,数组c中有5个元素,每个元素的初始值为0;数组s中有12个元素,包含4个“1”,3个“2”,3各“3”,2个“4”。第一个for语句中,用s[i]作为c数组的下标,用于统计s[i]中相同数字的个数,同时将统计的结果放在以该数字为下标的c数组中。第二个for语句用于将c数组中a[1]~a[4]4个元素输出。

  • 第3题:

    有以下程序includemain(){ints[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i; for(i=0;i

    有以下程序 #include <stdio.h> main() { int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i; for(i=0;i<12;i++) c[s[i]++; for(i=l;i<5;i++) printf("%d",c[i]); printf("\n"); } 程序的运行结果是

    A.1 2 3 4

    B.2 3 44

    C.4 3 3 2

    D.1 1 2 3


    正确答案:C
    解析:在for(i=0;i12;i++)c[s[i]]++中,数组元素s[i]的值作为数组c的下标,当退出循环时,数组c的4个元素的值分别为4、3、3、2。

  • 第4题:

    有以下程序:include define f(x) (x * x)main ( ){ int i1 ,i2;i1 = f(8)/f(4) ;i2

    有以下程序:#include <stdio, h>#define f(x) (x * x)main ( ){ int i1 ,i2; i1 = f(8)/f(4) ;i2 =f(4 +4)/f(2 +2); printf("% d,% d\n" ,i1 ,i2);

    A.64,28

    B.4,4

    C.4,3

    D.64,64


    正确答案:C
    解析:程序中i1=f(8)/f(4)宏替换后得到i1=(8*8)/(4*4),结果为4;i2=f(4+4)/f(2+2)宏替换后得到i2=(4+4*4+4)/(2+2*2+2),其结果为3。故本题输出的值为4,3。

  • 第5题:

    有以下程序,程序执行后,输出结果是【】include void fun(int*A) {a[0]=a[1];} main() {i

    有以下程序,程序执行后,输出结果是【 】

    include<stdio.h>

    void fun(int*A)

    { a[0]=a[1];}

    main()

    { int a[10]={10,9,8,7,6,5,4,3,2,1,},i;

    for(i=2;i>1=0;i-) fun(&a[i]);

    for(i=0;i<10;i++) printf("%d,a[i]);

    printf("\n");

    }


    正确答案:7777654321
    7777654321 解析:本题主要考查函数的调用,第—次调用把数组元素a[2]的地址赋给a,此时a[1]即是原数组的a[3]等于7,再执行赋值语句a[0]=a[1],则a[0]和a[1]中的值都是7,然后再把这个值返回给a[2]同样地第二次调用的时候函数返回值也是7,第三次调用返回值也是7,因此数组的前4个元素,即对a[0]、a[1]、a[2]和a[3]的值都为7,当执行第二个for循环时输出数组中所有元素的值7777654321。

  • 第6题:

    以下代码符合MATLAB语法的是()

    A.for i=1:10 i++ end

    B.While (i<10) i=i+1; end

    C.while (i<10) { i=i+1; }

    D.for i=1:10 i end


    for i=1:10 i end