C++ 考试经典试题样卷四 下载本文

内容发布更新时间 : 2024/5/20 7:14:58星期一 下面是文章的全部内容请认真阅读。

cout<<\

}

B::~B()

{ cout<<\void B::Print()

{ cout<

class C:public B { public: C(); C(int i,int j); ~C(); void Print() ; private: int c; }; C::C() { c=0; cout<<\}

C::C(int i,int j):B(i) { c=j; cout<<\}

C::~C()

{ cout<<\void C::Print() { B::Print(); cout<

void main() { C obj(5,6); obj.Print(); }

输出结果为_____[11]__________ [12] [13] [14] [15] [16] 四、改错题:指出下列程序的错误,并说明原因(每错2分,共10分) 1、#include

class A{ public:

void A(int i=0){m=i;} void show(){cout<

void main() {

A a(5); a.m+=10; a.show(); }

________[1]________ ________[2]________ ________[3]________ 2、 #include

class A { public:

void setA(int); void showA( ); private: int a; };

class B { public:

void setB(int); void showB( );

private: int b; };

class C : public A, private B

{ public:

void setC(int, int, int); void showC( ); private: int c; };

void A::setA(int x) { a=x; }

void B::setB(int x) { b=x; }

void C::setC(int x, int y, int z) { SetA(x); SetB(y); c=z; }

int main( ) { C obj;

obj.setA(5);

obj.showA( ); obj.setC(6,7,9); obj.showC( );

obj.setB(6);

obj.showB( ); return 0; }

________[4]________ ________[5]________ 五、程序填空:(每空2分,共10分)

1、下面程序的功能是:从键盘上输入若干个整数按升序排序后输出; # include “iostream.h” void sort(int a[ ],int n) {for(int i=0;i

if( [1] ){int t=a[i];a[i]=a[j];a[j]=t;} }

void Input(int *p,int n)

{cout<<“输入”<> [2] ; }

void Output(int *p,int n)

{for(int i=0;i

}

void main(void) {int x[200],int num;

cout<<”输入安排序数的个数:”; cin>>num; Input(x,num); Sort(x,num); Output(x,num); }

2、下列程序的功能是:从堆中获取一个整数数组,赋值并打印。 #include #include void main()

{int arraysize; //定义元素个数 int * array;

cout<<“please input a number of array:”<>arraysize;

if(array= [4] )==Null) {

cout<<“Can’t allocate more memory!”<

for(int count=0;count

for(int count=0;count

[5] ; }

六、编写下面问题的C++程序(每题10分,共20分)

1、 建立一个ARRAY类,求一维数组中各元素的最大值、最小值和平均值。要求如下:

(1) 私有成员:

? int data[10]:数组名称 ? int max:元素的最大值 ? int min:元素的最小值

? float average:各元素的平均值 (2) 公有成员:

? 构造函数ARRAY(int a[10]):初始化成员数组

? void process():求data数组中的最大值、最小值和平均值 ? void print():输出数组中元素的最大值、最小值和平均值 (3) 在主程序中进行该类的测试。

2、编写一个学生和教师数据输入和显示程序,学生数据要求有编号、姓名、班号和成绩,教师数据有编号、姓名、职称和部门。要求将编号、姓名的输入和显示设计成一个类person,并作为学生数据操作类student和教师数据操作类teacher的基类,学生数据中的班号和成绩的输入和显示在student类中实现,教师数据中的职称和部门的输入和显示在teacher类中实现。最后在主函数中进行该类的测试。 下面给出了基类person的主要成员:

(1) 私有成员:

? int no;编号

? char name[10]; 姓名 (2) 公有成员:

? void input(); 编号和姓名的输入 ? void display(); 编号和姓名的显示