全国2011年10月自学考试C加加程序设计试题和答案

更新时间:2023-09-26 11:29:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

http://www.zikao5.com 我自考网整理

全国2011年10月自学考试C加加程序设计试题和答案

课程代码:04737

一、单项选择题(本大题共20小题,每小题1分,共20分)

在每小题列出的四个备选项中只有一个是符合题目要求的-请将其代码填写在题后的括号内。错选、多选或未选均无分。

1.C++中注释“/*”的有效范围是( ) A.从“/*”开始到行尾 C.从“/*”开始到“//”为止

B.从“/*”开始后不终止 D.从“/*”开始到“*/”为止

2.如想使用std命名空间,正确的程序语句是( ) A.using std; C.using namespace;

B.namespace std, D.using namespace std;

3.下列选项中不是C++关键字的是( ) A.bool C.float

B.int D.var

4.用于标识长整型常量的前缀或后缀是( ) A.无前后缀 C.前缀零

B.后缀L或l D.前缀0x

5.对于new类型名[size]描述正确的是( ) A.申请可以存储size个字节的空间 B.申请可以存储1个该数据类型的空间 C.申请可以存储size个该数据类型对象的空间 D.申请可以存储1个字节的空间

6.使用下列哪个流格式控制符可以设置转换基数为十六进制( ) A.dec C.hex

7.构造函数用于( ) A.定义对象 C.清除对象

8.设函数void swap(int,int)将交换两形参数值,如有两整型变量int a=10;int b=15,则执行swap(a,b);之后,a,b值分别为( ) A.15,10 C.10,15

B.15,15 D.10,10 B.初始化对象 D.普通计算 B.oct D.endl

9.设函数void subone (int)将形参值减1,如有整形变量int b=10;则执行subone(b)后,b的值为( )

http://www.zikao5.com 我自考网整理

A.9 C.11

B.10 D.未知

10.C++中函数返回值类型不可以是( ) A.引用 C.结构

B.指针 D.数组

11.声明函数int Func(int a=0,int b=3,int c=4)相当于声明了几个函数形式( ) A.1 B.2 C.3

D.4

12.C++中专门定义一个仅在模板中使用的参数类型的关键字是( A.const B.inline C.short

D.typename

13.对于类中的成员,使用private修饰,表明该成员的访问权限是(A.公有的 B.私有的 C.保护的

D.不可见的

14.使用new创建的对象,对其生命周期描述正确的是( ) A.由系统决定 B.由用户控制 C.全局生命周期

D.永久存在

15.析构函数被调用的时间点是( ) A.对象被创建时 B.对象被销毁时 C.不会被调用

D.主函数被调用时 16.对象的构造函数调用顺序取决于( ) A.对象成员在初始化列表中给出的顺序 B.对象成员在类中声明的顺序

C.对象成员与在初始化列表中顺序和类中声明顺序均有关 D.随机顺序

17.下列对静态成员函数描述正确的是( ) A.静态成员函数中可使用1个this指针 B.静态成员函数中不能使用this指针 C.静态成员函数中可使用多个this指针 D.静态成员函数中只可使用1个that指针 18.友元的声明可出现在( ) A.类的私有部分 B.类的公有部分 C.类的保护部分

D.类的任何部分

19.在下列派生中,子类和父类间是isa关系的是( ) A.private B.protected C.public

D.publish

) ) http://www.zikao5.com 我自考网整理

20.面向对象不仅进行功能抽象,还要进行( ) A.动态抽象 C.数据抽象

B.消息抽象 D.算法抽象

二、填空题(本大题共20小题,每小题1分,共20分)

请在每小题的空格中填上正确答案。错填、不填均无分。

21.在调用函数f1()的过程中,又调用了函数f1(),这种调用称为________调用。 22.C++中重载“+”运算符的函数名是________。

23.设为类A添加一个纯虚函数Fun,其第一个参数类型为整型,第二个参数类型为字符型,函数返回值

类型为整型。实现此操作的语句是________。

24.C++程序的头文件和源程序文件扩展名分别为________和. cpp。

25.在C++中,利用向量类模板定义一个具有20个int类型的向量B,实现此操作的语句是:________。 26.通过私有派生,基类的私有和不可访问成员在派生类中是不可访问的,而公有和保护成员这时就成了

派生类的________。

27.字符串类型的变量一般用________和字符数组类型的变量表示。 28.在一个C++程序中,每个变量都必须遵循________的原则。

29.在常成员函数里不能更新对象的数据成员,也不能调用该类中没用________关键字修饰的成员函数。 30.UML是一种可视化建模语言,主要用于面向对象的________和建模。

31.复制构造函数采用拷贝方式使用已有对象来建立新对象,又称为________函数。 32.对于C++类中的成员,若未使用访问权限关键字进行说明,默认的权限是________。 33.对象的行为是定义在对象属性上的一组________的集合。

34.设int max(int,int)表示计算两个整数中的最大值,则执行语句“cout << max(max(2,3),max(7,8));”

的输出结果是________。

35.函数fun的返回值是字符指针类型,该函数有两个参数,其中一个参数是字符类型,另一个参数是int

类型引用,声明函数fun的原型的语句为________。

36.string类中用于交换两个字符串对象的值的成员函数为________。

37.无论变量x和y是整型还是浮点类型,x*y都表示这两个变量的积,这是典型的________的例子。 38.执行下列代码

int a=29,b=1001;

cout <

39.在C++中,赋值表达式y=x++的含义是________。

40.设有如下定义:int x;若要将整型变量y定义为变量x的引用,则应使用的语句是________。 三、改错题(本大题共5小题,每小题4分,共20分)

下面的每题中有一处错误,请用下横线标出错误所在行并给出修改意见 41. #include < iostream. h > void main( ){

http://www.zikao5.com 我自考网整理

float * p; p = new float[ 5 ] ; for( i =0;i <5 ;i + + )

{ cin > > * (p + i) ;cout << * (p + i) << endl; } delete [ ] p; }

42. #include < iostream.h > template < class T > class f{ private: T x,y;

public: void fl(T a,T b){x=a;y=b;} T max(){retum(x>y)? x:y;} };

void main( ){ f a; a. fl(3.5,3.8) ;

cout << a. max( ) << endl; }

43. #include < iostream. h > class test{

private: static int x; int y;

public: void testl ( int a, int b) { x = a; y = b; } };

void main() { test a; a. testl (2,3) ; }

44. #include < iostream, h > class f{

private: float x, y;

public: void fl ( float a, float b) { x = a; y = b; }

f() {x=0;y=0;}

void move(float a,float b){x =x +a;y =y-b;} void get ( ) { cout << x <<\};

void main( ){ f *p,a;

http://www.zikao5.com 我自考网整理

a. f1(1.6,3.8) ; p=&a; p. get( ) ; }

45. #include < iostream. h > class point{ int x;

public: void init ( int a) { x = a; }

int getx( ){ return x;} void setx ( int a) { x = a; } };

void main( ){ point a; a. init (20,30) ;

cout << a. getx( ) << endl; }

四、完成程序题(本大题共5小题,每小题4分,共20分) 46.完成下面类中成员函数的定义。

class test { private: int nl ; float fl; public:

test(int,float f); test(test&); };

test::test( ________ ) {nl=n; fl=f;} test:: test(test&t) {nl=t.nl; fl=________;}

47.在下面程序中的下划线处填上适当的语句,使程序的输出结果如下:

11,77 11,77

本文来源:https://www.bwwdw.com/article/dmqd.html

Top