下面程序的运行结果为#includeclass A{static int n;public:A(){n=1;}A(int num){n=num;}void print(){coot <}int A::n=2:void main(){A a.b(3);a.print();b.pint();cout <}A.11B.13C.23D.33

题目

下面程序的运行结果为

#include

class A

{

static int n;

public:

A(){n=1;}

A(int num){n=num;}

void print(){coot <

}

int A::n=2:

void main()

{

A a.b(3);

a.print();

b.pint();

cout <

}

A.11

B.13

C.23

D.33


相似考题
更多“下面程序的运行结果为 #include classA { staticintn; public: A(){n=1;} A(intnum){n= ”相关问题
  • 第1题:

    下面程序的运行结果为include < iostream.h >class A{ static int n;public:A( ){n=1;}A(int nu

    下面程序的运行结果为 #include < iostream.h > class A { static int n; public: A( ){n=1;} A(int num){ n = num;} void print( ){cout<< n;} }; int A::n=2; void main( ) { A a,b (3); a.print( ); b.print( ); cout<< end1; }

    A.11

    B.13

    C.23

    D.33


    正确答案:D
    解析:本题考查的是静态数据成员的使用,n为类A的静态成员,即为类A的所有对象共有的成员,所以,当对象b把n初始化为3时,对象a的成员n的值也为3(这两个n实际上是同一个)。

  • 第2题:

    下面程序的运行结果为includeclass A{static int n;public: A(){n=1;} A(intnum){n

    下面程序的运行结果为 #include<iostream.h> class A { static int n; public: A(){n=1;} A(intnum){n=num;} void print(){cout <<n;} }; int A∷n=2; void main() { Aa,b(3); a.print(); b.print(); cout <<end1; }

    A.11

    B.13

    C.23

    D.33


    正确答案:D
    解析:本题考查的是静态数据成员的使用,n为类A的静态成员,即为类A的所有对象共有的成员,所以,当对象b把n初始化为3时,对象a的成员n的值也为3(这两个n实际上是同一个)。

  • 第3题:

    3、下面程序的运行结果为()。 #include<iostream> using namespace std; class A { static int n; public: A(){n=1;} A(int num){n=num;} void print(){cout<<n;} }; int A::n=2; int main() { A a,b(3); a.print(); b.print(); cout<<endl; }

    A.11

    B.13

    C.23

    D.33


    4

  • 第4题:

    下面程序的运行结果为includeclass A{ int num;public: A(int){num=i;} A(ABm){num

    下面程序的运行结果为 #include<iostream.h> class A { int num; public: A(int){num=i;} A(ABm){num=a.num++;} void print(){cout<<num;} }; void main() { Aa(1),b(a); a.print(); b.print(); }

    A.11

    B.12

    C.21

    D.22


    正确答案:C
    解析:本题;号查考生对拷贝构造函数的掌握。因为++运算是右结合的,所以在使用a对b赋值时,b的num变为l而a的num变为2(先赋值再自加)。

  • 第5题:

    下面程序的运行结果是()。includeusing namespace std;class TestClass{static int n;

    下面程序的运行结果是( )。 #include<iostream> using namespace std; class TestClass { static int n; public: TestClass () { n++; } static int test() { for(int i=0;i<4;i++) n++; return n; } }; int TestClass::n=0; int main() { cout<<TestClass::test()<<" "; TestClass c1,c2; cout<<TestClass::test()<<endl; return (); }

    A.4,10

    B.4,6

    C.0,6

    D.0,4


    正确答案:A
    解析:在主函数中首先调用TestClass中的test函数输出,类中的n为静态数据成员,可以为所有的对象共享这些数据,这里调用后n等于4。定义对象c1,c2调用构造函数后n=6,所以主函数再次执行“coutTestClass::test()endl;”后,n等于10。