一起答
主观

#include ﹤iostream﹥

using namespace std;

class x

{protected: int a;public: x( ) {a=1; }

};

class x1;

virtual public x

{

 public:

x1( )

 {a+=1; cout﹤﹤"x1: "﹤﹤a﹤﹤","; }

};

class x2:

virtual public x

{

public:x2( )

 {a+=2; cout﹤﹤"x2: "﹤﹤a﹤﹤","; }

};

class y:

public x1,

 public x2

{

public:y( )

{ cout ﹤﹤"y: "﹤﹤a﹤﹤ endl; }

};

void main( )

{

 y obj;

 }

试题出自试卷《自考C++程序设计2017年4月试题及答案解析》
参考答案
查看试卷详情
相关试题
  1. 定义一个生日类,数据成员有年、月、日。定义一个人员类,数据成员有姓名、性别、生日。人员类中的生日是生日类的对象,两个类都有构造函数和显示函数。在主函数中声明一个人员类对象,屏幕显示其数据。

  2. #include ﹤iostream﹥

    using namespace std;

    void sort( int L[ ], int n)

    {

    int i, k, flag, temp;

    flag=n-1;

    while( flag﹥0)

    {

     k=flag -1;

     flag=0;

    for(j=0; j﹤=k; j++)

    {

     if(L[j]﹥L[j+1])

    {

     temp=L[j];

     L[j]=L[j+1];

    L[j+1]=temp;

     flag =j;

    }

    }

    }

    }

    void main( )

    {

     int array[4]={7,2,3,4};

    sort( array, 4);

    cout ﹤﹤"The sorted numbers:";

    for(int i=0; i﹤4; i++)

    cout ﹤﹤ array[i];

    }

  3. #include ﹤iostream﹥

    using namespace std;

    class x

    {protected: int a;public: x( ) {a=1; }

    };

    class x1;

    virtual public x

    {

     public:

    x1( )

     {a+=1; cout﹤﹤"x1: "﹤﹤a﹤﹤","; }

    };

    class x2:

    virtual public x

    {

    public:x2( )

     {a+=2; cout﹤﹤"x2: "﹤﹤a﹤﹤","; }

    };

    class y:

    public x1,

     public x2

    {

    public:y( )

    { cout ﹤﹤"y: "﹤﹤a﹤﹤ endl; }

    };

    void main( )

    {

     y obj;

     }

  4. 程序运行结果为3

    #include ﹤iostream﹥

    using namespace std;

    int main( )

    {

    int a=16, b=21, m=0;_________

    {

    case 0: m++; break;

    case 1: m++ ;

    switch(b%3)

    {

    _________

    case 1: m++; break;

    }

    }

    cout ﹤﹤m﹤﹤ endl;

    return 0;

    }

  5. 定义平面上一个点的类point,有双精度型私有数据成员横坐标x和纵坐标y,公有成员函数有写入函数input( )、求原点距离函数distance( )和显示函数show( ),请完成point( )的类图。

  6. 程序的运行结果为:12

    #include ﹤iostream﹥

    using namespace std;

    class Base

    {

     public:

    int a;Base (int i)

     {

     a=i;

    }

    };

    class Derived:

    public Base

    {

    int a;

    public:

    Derived(int x):

    Base(x) { }

    void show( )

    {

    _________; //输出基类数据成员a的值

    }

    };

    void main( }

    {_________d. show ( );

    }

  7. #include ﹤iostream﹥

    using namespace std;

    class F

    {

     public:

    _________

    };

    double F:: operator( ) (double x, double y) const

    {

    retum(x+5)*y;

    }

    _________

    {

     F f;cout﹤﹤f(1.5, 2.2)﹤﹤endl;

    }

  8. 程序在主函数中创建派生类Derived的对象obj,调用f( )函数后输出DBC

    #include ﹤iostream﹥

    using namespace std;

    class Base

    {

    public:

    virtual void f( )

    {

    cout ﹤﹤"B";

    }

    };

    _________

    {

     public:

    Derived( )

     {

    cout ﹤﹤"D";

    }

    virtual void f( )

    {

    Base:: f( );

    cout ﹤﹤"C";

     }

    };

    int main( )

    {

    Base *ptr;

    Derived obj;

    ptr=&obj;

    _________

    retun 0;

    }

  9. 此程序调用 findmax( )函数,返回数组中的最大值。

    include ﹤iostream﹥

    using namespace std;

    int findmax (int *a, int n)

    {

    int *p, *s;

    for(p=a, s=a; p-a﹤n; p++)

    if(*P﹤*s) *s=*p;

    return(* s);

    }

    void main( )

    {

    int x[5]={12,2,8,47};

    cout﹤﹤ findmax(x, 5)﹤﹤endl;

    }

  10. #include ﹤iostream﹥

    using namespace std;

    int main( )

    {

    int x=15;

    while(10﹤x﹤50)

    {

    x++;if(x/3)

     {

     x ++; break;

     }

    }

    cout﹤﹤x﹤﹤endl;

    return 0;

    }