c++补考题目(附答案)(7)

2018-12-19 21:54

#include using namespace std; class A{ int i; static int count; public: A(int a=0)

{ i=a; count++;

cout <<\ ~A()

{ count--; cout <<\ void Show()

{ cout << \cout << \};

int A::count; int main( ) { A a1(100); A b[2]; a1.Show(); }

分析输出结果: #include using namespace std; class A{ int i,j; public: static int x;

public: A(int a=0,int b=0,int c=0){ i=a ; j=b ; x=c; } void Show(){

cout << \ cout << \ } };

int A::x=500; //int A::x int main( )

{ A a(20,40,10),b(30,50,100); a.Show (); b.Show ();

cout <<“A::x=”<

结果为:i=20 j=40 x=100 i=30 j=50 x=100 A::x=100

分析输出结果:

#include using namespace std; class A{ int i,j;

static int x,y;//定义静态成员

public: A(int a=0,int b=0,int c=0, int d=0){ i=a;j=b;x=c;y=d; } void Show(){cout << \ cout << \ } };

int A::x=0; //必须对静态成员作一次定义性说明 int A::y=0; int main( ) { A a(2,3,4,5); a.Show();

A b(100,200,300,400); b.Show(); a.Show(); }

结果为:i=2 j=3 x=4 y=5 i=100 j=200 x=300 y=400

i=2 j=3 x=300 y=400 分析输出结果: #include using namespace std; class base{ public:

virtual void a(){ cout<<\virtual void b(){ cout<<\virtual void c(){ cout<<\virtual void d(){ cout<<\virtual void e(){ cout<<\virtual void f(){ cout<<\};

class A:virtual public base{ public:

virtual void a(){ cout<<\virtual void b(){ cout<<\virtual void f(){ cout<<\};

class B:virtual public base{ public:

virtual void a(){ cout<<\virtual void c(){ cout<<\

};

class C:public A,public B{ public:

virtual void a(){ cout<<\virtual void d(){ cout<<\};

int main( ) {

C cc;

base *pa=&cc; pa->a(); pa->b(); pa->c(); pa->d(); pa->e(); pa->f(); }

结果为:a() in C b() in A c() in B d() in C e() in base f() in A

写出下列程序的结果: #include using namespace std; class A{ public:

virtual ~A( ){

cout<<”A::~A( ) called “<

class B:public A{ char *buf; public:

B(int i) { buf=new char[i]; } virtual ~B( ){ delete []buf;

cout<<”B::~B( ) called”<

void fun(A *a) { delete a; }

int main( )

{ A *a=new B(10); fun(a); }

结果为:B::~B() called A::~A() called

写出下列程序运行结果 #include using namespace std; class A { public:

virtual void func( ) ,cout<<”func in class A”<

class B{ public:

virtual void func( ) ,cout<<”func in class B”<

class C:public A,public B{ public:

void func( ) ,cout<<”func in class C”<

int main( ){ C c;

A& pa=c; B& pb=c; C& pc=c; pa.func( ); pb.func( ); pc.func( ); }

写出下列程序运行结果

#include class Base { int i; public:

Base(int n){cout <<\ ~Base(){cout <<\ void showi(){cout << i<< \ int Geti(){return i;} };

class Derived:public Base { int j; Base aa; public:

Derived(int n,int m,int p):Base(m),aa(p){ cout << \ j=n; }

~Derived(){cout <<\ void show(){Base::showi();

cout << j<<\};

void main()

{ Derived obj(8,13,24); obj.show(); }

结果为:

Constucting base class Constucting base class Constructing derived class 13,8,24

Destructing derived class Destructing base class Destructing base class

指出并改正下面程序中的错误。 #include class Point { int x,y; public:

Point(int a=0,int b=0) {x=a; y=b;}

void move(int xoffset,int yoffset) {x+=xoffset; y+=yoffset;} int getx() {return x;} int gety() {return y;} };

class Rectangle:protected Point


c++补考题目(附答案)(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:许可证有效期内辐射安全与防护工作总结报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: