c++程序设计上机考试复习题及答案(优化版)

  • 格式:doc
  • 大小:145.50 KB
  • 文档页数:9

下载文档原格式

  / 9
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C++程序设计上机考试复习题及答案(优化

版)

work Information Technology Company.2020YEAR

C++程序设计上机试题

考试时间:180分钟

(注:以下所有题目均要求上机实现)

第一题 ( 20分)

声明数组如下,按要求编写程序,以f1.cpp作为文件名,存放到D盘: double a[]={1.1,5.2,7.3,4.4}, b[4];

要求使用泛型算法完成:

1.将数组a内容反转,并正向输出数组 a的内容.

2.将数组a的内容拷贝到数组b, 并逆向输出数组b的内容.

3.将数组b按降幂排序,并输出数组b的内容.

4.在数组a中查找4.4的位置,并输出.

#include

#include

#include

#include

using namespace std;

void main()

{

double a[]={1.1,5.2,7.3,4.4},b[4];

reverse(a,a+4);

copy(a,a+4,ostream_iterator(cout," "));

cout<

reverse_copy(a,a+4,ostream_iterator(cout," "));

cout<

copy(a,a+4,b);

copy(b,b+4,ostream_iterator(cout," "));

cout<

reverse_copy(a,a+4,b);

copy(b,b+4,ostream_iterator(cout," "));

cout<

sort(a,a+4);

copy(a,a+4,ostream_iterator(cout," "));

cout<

sort(a,a+4,greater());

copy(a,a+4,ostream_iterator(cout," "));

cout<

double *x=find(a,a+4,4.4);

cout<<"no value 4.4";

else

cout<<"have value is "<<*x;

cout<

}

第二题(20分)

定义队列类模板queue(先进先出),队列的大小由使用者确定。要求该类模板对外提供如下二种基本操作:(1)insert(入队列)(2)front(出队列),用数组来实现

#include < iostream >

using namespace std;

template < class T, int size >

class queue {

T x [ size ] ;

int current, front, rear;

public :

queue ( ) { current = 0 ; front = 0 ; rear = 0 ;}

. . . .insert(. . . .);

. . . .front(. . . .);

};

template

bool Queue::insert ( Queue &Q, T a ) //入队列

{

if (front ==0&&rear== current -1)

return false;

int i;

i=rear+1;

Q.x[i] = a;

return true;

}

//--------------出队

template

bool Queue::front( Queue &Q)

{

if (current==0) // 检测队列是否为空

return false;

int i;

{

Q.x[i]= Q.x[i+1] ;

}

return true;

}

第三题(20分)

设计一个Bank类,实现银行某账号的资金往来账目管理,包括建账号、存入、取出等。Bank类包括私有数据成员top(当前账指针),date(日期),money(金额),rest(余额)和sum(累计余额)。有三个成员函数bankin()(处理存入账),bankout()处理取出账)和disp()(输出明细账)请完成函数的实现。

本题部分程序如下:

#include

#include

#define Max 100

class Bank

{

int top;

char date[Max][10];//日期

int money[Max];//金额

int rest[Max];//余额

static int sum;//累计余额

public:

Bank(){top=0;}

void bankin(char d[ ],int m){…}

void bankout(char d[ ],int m){…}

void disp(){…};

} ;

#include

#include

#include

#define Max 100

Using namespace std;

相关主题