下面程序的运行结果为【 】。class A} public:int num;A(int i){num=i;}A(A &a){num=++a.num;}void print(){cout<<num;}};void main(){A a(1),b(a);a.print();b.print();}

题目

下面程序的运行结果为【 】。

class A

} public:

int num;

A(int i){num=i;}

A(A &a){num=++a.num;}

void print(){cout<<num;}

};

void main(){

A a(1),b(a);

a.print();

b.print();

}


相似考题
更多“下面程序的运行结果为【 】。 class A } public: int num; A(int i){num=i;} A(A &a){num=++a.n ”相关问题
  • 第1题:

    下面程序的输出结果为_____。 include void main( ) { in num=0,i=8; do{ i--; num+

    下面程序的输出结果为_____。

    include<iostream.h>

    void main( )

    {

    in num=0,i=8;

    do{

    i--;

    num++;

    }while(--i) ;

    cout < < num < < endl;

    }


    正确答案:4
    4 解析:本题考查的是考生分析简单循环结构的能力。大体过程为第1次进入循环,i变成7,num变为1, i变为6;第2次进入循环,i变成5,num变为2,i变为 4;第3次进入循环,i变成3,num变为3,i变为2;第4次进入循环,i变成1,num变为4,i变为0,循环结束。

  • 第2题:

    下面程序的运行结果为( )。 #include<iostream.h> classA { intnum; public: A(inti){num=i;) A(A&a){num=a.num++;} voidprint(){cout<<num;} }; voidmain() { Aa(1),b(a);

    A.print();

    B.print(); }

    C.11B.12

    D.21D.22


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

  • 第3题:

    6、在C#中,下列代码运行结果是()。 class A { static void Main() { int[] num=new int[]{1,3,5}; ArrayList arr = new ArrayList(); for (int i = 0; i < num.Length; i++) { arr.Insert(i,num[i]); } arr.Insert(1, 4); Console.Write(arr[2]); } }


    3

  • 第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题:

    3、下面程序片段的运行结果是()。public static void main(String[] args) { int i=1, num=0; while(i<=10) { if (i%3==0) { num=num+1;} i++; } System.out.print(num); }

    A.3

    B.2

    C.1

    D.0


    Hello, Java World!