有如下程序: Function F(a As Integer) b = 0 Static C b = b + 1 c = c + 2 F = a + b + c End Function Private Sub Command1_Click() Dim a As Integer a = 2 For i=1 To 3 Print F(a); Next i End Sub 运行上面的程序,单击两次命令按钮,在窗体上输出结果为A.4 4 4B.4 5 6C.5 7 9D.11 13 15

题目

有如下程序: Function F(a As Integer) b = 0 Static C b = b + 1 c = c + 2 F = a + b + c End Function Private Sub Command1_Click() Dim a As Integer a = 2 For i=1 To 3 Print F(a); Next i End Sub 运行上面的程序,单击两次命令按钮,在窗体上输出结果为

A.4 4 4

B.4 5 6

C.5 7 9

D.11 13 15


相似考题
更多“有如下程序:Function F(a As Integer) b = 0 Static C b = b + 1 c = c + 2 F = a + b + cEnd Fu ”相关问题
  • 第1题:

    有如下程序: #include<iostream> usingnamespacestd; intmain(){ intf,f1=0,f2=1 for(inti=3;i<=6;i++){ f=f1+f2: f1=f2:f2=f } cout<<f<<endl; return0; } 运行时的输出结果是()。

    A.2

    B.3

    C.5

    D.8


    正确答案:C
    C:【解析】循环3次,分别每次计算出fl,f2和f的值,该题较简单,只需细心即可。

  • 第2题:

    有如下程序include using namespace std;class base{public:virtual void f1(){cout<

    有如下程序#include <iostream>using namespace std;class base{public: virtual void f1() { cout<<"F1Base "; } virtual void f2() { cout<<"F2Base "; }};class derive: public base{ void f1() { cout<<"F1Derive "; } void f2( int x ) { cout<<"F2Derive "; }};int main(){ base obj1, * p; derive obj2; p = & obj2; p -> f1(); p -> f2(); return 0;} 执行后的输出结果是

    A.F1Derive F2Base

    B.F1Derive F2Derive

    C.F1Base F2Base

    D.F1Base F2Derive


    正确答案:A
    解析:本题主要考查C++中虚函数机制及其继承过程中的要点。虚函数在基类中加关键字virtual声明,在派生类中重新定义;如果派生类没有覆盖虚函数,则程序执行中将会执行基类的虚函数版本。题目程序中,建立了基类base,其内函数void f1()和void f2()均被声明为虚函数,并在调用时会显式的发出声明。派生类derive利用 public方式继承基类base,并覆盖其基类base中的虚函数f1();对于base中的虚函数f2(),由于派生类 derive中的同名函数f2()中带有参数int x,因此被编译器认为是函数重载,而不作虚函数覆盖处理,因此实际上派生类derive中包含两个f2()函数,一个不带参数,调用时执行基类base中的f2()函数版本,一个带参数int x,调用时执行重载后的版本。题目 main()函数中,定义了基类对象。obj 1和基类指针*p,同时定义了派生类对象obj2。p指向。obj2时:p->f1()函数调用执行派生类覆盖后的版本,输出D1;p-> f2()由于不带参数,因此执行未经派生类覆盖的函数版本,即基类base中的f1()函数版本。

  • 第3题:

    有如下程序includeusing nameSpace std;class base{public:vinual void f1() { cout<

    有如下程序 #include<iostream> using nameSpace std; class base { public: vinual void f1() { cout<<"F1 Base"; } virtual void f2() { cout<<"F2Base"; } }; class derive:public base { void f1() { cout<<"F1Derive"; } void f2(int x) { cout<<"F2Derive"; } }; int main() { base obj1,*p; derive obj2; p=&obj2; p—>f1(); p—>f2(); return 0; } 执行后的输出结果是

    A.F1Derive F2Base

    B.F1Derive F2Derive

    C.F1Base F2Base

    D.F1Base F2Derive


    正确答案:A
    解析:本题主要考查C++中虚函数机制及其继承过程中的要点。虚函数在基类中加关键字virtual声明,在派生类中重新定义;如果派生类没有覆盖虚函数,则程序执行中将会执行基类的虚函数版本。题目程序中,建立了基类base,其内函数voidf1()和voidf2()均被声明为虚函数,并在调用时会显式的发出声明。派生类derive利用public方式继承基类base,并覆盖其基类base中的虚函数f1();对于base中的虚函数f2(),由于派生类derive中的同名函数f2()中带有参数intx,因此被编译器认为是函数重载,而不作虚函数覆盖处理,因此实际上派生类derive中包含两个f2()函数,一个不带参数,调用时执行基类base中的f2()函数版本,一个带参数intx,调用时执行重载后的版本。题目main()函数中,定义了基类对象。obj1和基类指针*p,同时定义了派生类对象。obj2。p指向。obj2时:p—>f1()函数调用执行派生类覆盖后的版本,输出D1:p->f2()由于不带参数,因此执行未经派生类覆盖的函数版本,即基类base中的f1()函数版本。

  • 第4题:

    有如下程序: #include<iostream> usingnamespacestd; intmain( ){ intf,f1=0,f2=1; for(inti=3;i<=6;i++){ f=f1+f2: f1=f2;f2=f; } cout<<f<<endl; return0; } 运行时的输出结果是( )。

    A.2

    B.3

    C.5

    D.8


    正确答案:C
    C。【解析】循环3次,分别每次计算出f1,f2和f的值,该题比较简单,只需要细心即可。

  • 第5题:

    阅读程序: Function F(a As-Integer) b=0 Static c b=b+1 c=c+1 F=a+b+c End Function Private Sub Command1_Click() Dim a As Integer a=2 For i=1 To 3 Prim F(A)Next i End Sub 运行上面的程序,单击命令按钮,输出结果为 ______。

    A.4 4 4

    B.4 5 6

    C.4 6 8

    D.4 7 9


    正确答案:B
    解析:Static语句:在过程级别中使用,用于声明变量并分配存储空间。在整个代码运行期间都能保留使用Static语句声明的变量的值。本题中变量c的值,调用一次函数F就加1。而变量a和变量c的值,在函数F中一直是2和1。

  • 第6题:

    DFA M=({0,1,2,3},{a,b},f,0,{3}), 其中:f定义如下: f(0,a)=1 f(0,b)=2 f(1,a)=3 f(1,b)=2 f(2,a)=1 f(2,b)=3 f(3,a)=3 f(3,b)=3 请画出上述DFA的状态转换图。


    D