设有如下通用过程: Public Sub Fun(a() As Integer, x As Integer) For i=1 To 5 x=x+a(i) Next End Sub 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程: Private Sub Command1_Click() Dim arr(5)As Integer, n As Integer For i=1 To 5 art(i)=i+i Next Fun arr, n Text1. Te

题目

设有如下通用过程: Public Sub Fun(a() As Integer, x As Integer) For i=1 To 5 x=x+a(i) Next End Sub 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程: Private Sub Command1_Click() Dim arr(5)As Integer, n As Integer For i=1 To 5 art(i)=i+i Next Fun arr, n Text1. Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的内容是______。

A.30

B.25

C.20

D.15


相似考题
参考答案和解析
正确答案:A
解析:在Command1_Click过程中,数组arr(1)~arr(5)的初值为2、4、6、8、10,在子函数Fun中,数组arr的内容传送给数组a,在For-Next循环中将其内容相加起来的30赋给变量x,x的内容按地址传送的方式传给变量n,函数Str将n的内容转换成字符串在Text1中显示出来。
更多“设有如下通用过程:Public Sub Fun(a() As Integer, x As Integer)For i=1 To 5x=x+a(i)NextEnd S ”相关问题
  • 第1题:

    有如下程序: include using namespace std; class Sample { frien

    有如下程序: #include <iostream> using namespace std; class Sample { friend long fun(Sample s); public: Sample(long a) {x=a;} private: long x; }; long fun(Sample s) { if(s.x < 2) return 1; return s.x * fun(Sample(s.x-1)); } int main() { int stun = 0; for (int i=0; i<6; i++) {sum += fun(Sample(i));} cout << sum; return 0; }运行时输出的结果是

    A.120

    B.16

    C.154

    D.34


    正确答案:C
    解析:本题考查的知识点是:友元函数、递归函数。友元函数不是当前类的成员函数,而是独立于当前类的外部函数,但它可以访问该类的所有对象的成员,包括私有成员、保护成员和公有成员。本题中的fun函数就被声明为Sample类的友元函数了。因此,在fun函数中可以直接访问Sample类对象的私有成员x。主函数中通过一个for循环依次以临时构造的Sample类对象为参数,调用fun函数,构造参数依次为0~5。如果一个函数在其函数体内直接或间接地调用了自己,该函数就称为递归函数。本题中的fun()函数直接调用了自身,所以它又是递归函数,不难分析其递归性质如下:

    因为Sample类的构造函数只是简单的将构造参数a赋给成员x,故可省略不看。通过上述递归定义不难看出,n取0~5时,fun(n)的值依次为:1,1,2,6,24,120。累加之后结果为154,故本题应该选择C。

  • 第2题:

    设有如下通用过程: Public Sub Fun(a(),By Val x As Integer) Fori=1 To 5 x=x+a(i) Next End Sub 在窗体上画一个名称为Text1的文本框和一个名称为Commandl的命令按钮,然后编写如下的事件过程: Private Sub Commandl_Chck() Dimart(5)As Variant Fori=1 To 5 arr(i)=i

    A.10

    B.15

    C.25

    D.24


    正确答案:A

  • 第3题:

    链表的定位函数

    loc(I:integer):pointer; {寻找链表中的第I个结点的指针}

    procedure loc(L:linklist; I:integer):pointer;

    var p:pointer;

    j:integer;


    正确答案:

     

    begin
    p:=L.head; j:=0;
    if (I>=1) and (I<=L.len) then
    while j<I do begin p:=p^.next; inc(j); end;
    loc:=p;
    end;

  • 第4题:

    有如下程序 include using namespace std;int i=1;class Fun {public:static int i;i

    有如下程序 #include <iostream>using namespace std;int i=1;class Fun {public:static int i;int value(){ return i-1;}int value()const{ return i+1;}};int Fun:: i=2;int main() {int i=3;Fun fun1;const Fun fun2;______________________return ();}若程序的输出结果是:123

    A.cout<<fun1.value()<<Fun:: i<<fun2.value();

    B.cout<<Fun::i<<fun1.value()<<fun2.value();

    C.cout<<fun1. value()<<fun2.value()<<Fun:: i;

    D.cout<<fun2.value()<<Fun:: i<<fun 1.value();


    正确答案:A

  • 第5题:

    有如下程序: #inClude<iostream> using namespaCe std; Class Sample{ friend long fun(Sample S); publiC: Sample(10ng A.{x=a;} private: long X; }; long fun(Sample S){ if(S.x<2)return l; return S.X*fun(Sample(s.x-1)); } int main( ) { int sum=0; for(int i=0;i<6;i++) {sum+=fun(Sample(i));} Cout<<sum: return 0; } 执行这个程序的输出结果是( )。

    A.120

    B.16

    C.154

    D.34


    正确答案:C
    本题考查默认构造函数,当i=0、1时,fun(Sample(i))为1;当i=2时,fun(Sample(i)1为2;当i=3时,fun(Sample(i))为6;当i=4时,fun(Sample(i))为24;当i=5时,fun(Sample(i))为120。所以总和为l54

  • 第6题:

    8、下列程序中,哪一行语句有错误 。 1 PROGRAM P01 2 INTEGER:: I,S=0 3 DO I=10,1,-2 4 I=I*I 5 S=S+I 6 ENDDO 7 END PROGRAM

    A.2

    B.3

    C.4

    D.7


    C