自考C++程序设计试题真题.docx

上传人:b****0 文档编号:9185896 上传时间:2023-05-17 格式:DOCX 页数:14 大小:19.05KB
下载 相关 举报
自考C++程序设计试题真题.docx_第1页
第1页 / 共14页
自考C++程序设计试题真题.docx_第2页
第2页 / 共14页
自考C++程序设计试题真题.docx_第3页
第3页 / 共14页
自考C++程序设计试题真题.docx_第4页
第4页 / 共14页
自考C++程序设计试题真题.docx_第5页
第5页 / 共14页
自考C++程序设计试题真题.docx_第6页
第6页 / 共14页
自考C++程序设计试题真题.docx_第7页
第7页 / 共14页
自考C++程序设计试题真题.docx_第8页
第8页 / 共14页
自考C++程序设计试题真题.docx_第9页
第9页 / 共14页
自考C++程序设计试题真题.docx_第10页
第10页 / 共14页
自考C++程序设计试题真题.docx_第11页
第11页 / 共14页
自考C++程序设计试题真题.docx_第12页
第12页 / 共14页
自考C++程序设计试题真题.docx_第13页
第13页 / 共14页
自考C++程序设计试题真题.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

自考C++程序设计试题真题.docx

《自考C++程序设计试题真题.docx》由会员分享,可在线阅读,更多相关《自考C++程序设计试题真题.docx(14页珍藏版)》请在冰点文库上搜索。

自考C++程序设计试题真题.docx

自考C++程序设计试题真题

全国2011年10月高等教育自学考试

C++程序设计试题

课程代码:

04737

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

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

错选、多选或未选均无分。

1.C++中注释“/*”的有效范围是()

A.从“/*”开始到行尾B.从“/*”开始后不终止

C.从“/*”开始到“//”为止D.从“/*”开始到“*/”为止

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

A.usingstd;B.namespacestd,

C.usingnamespace;D.usingnamespacestd;

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

A.boolB.int

C.floatD.var

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

A.无前后缀B.后缀L或l

C.前缀零D.前缀0x

5.对于new类型名[size]描述正确的是(   )

A.申请可以存储size个字节的空间

B.申请可以存储1个该数据类型的空间

C.申请可以存储size个该数据类型对象的空间

D.申请可以存储1个字节的空间

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

A.decB.oct

C.hexD.endl

7.构造函数用于()

A.定义对象B.初始化对象

C.清除对象D.普通计算

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

A.15,10B.15,15

C.10,15D.10,10

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

A.9B.10

C.11D.未知

10.C++中函数返回值类型不可以是(   )

A.引用B.指针

C.结构D.数组

11.声明函数intFunc(inta=0,intb=3,intc=4)相当于声明了几个函数形式(   )

A.1B.2

C.3D.4

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

A.constB.inline

C.shortD.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.privateB.protected

C.publicD.publish

20.面向对象不仅进行功能抽象,还要进行(   )

A.动态抽象B.消息抽象

C.数据抽象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.设intmax(int,int)表示计算两个整数中的最大值,则执行语句“cout<

35.函数fun的返回值是字符指针类型,该函数有两个参数,其中一个参数是字符类型,另一个参数是int类型引用,声明函数fun的原型的语句为________。

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

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

38.执行下列代码

inta=29,b=1001;

cout<

程序输出结果是:

________。

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

40.设有如下定义:

intx;若要将整型变量y定义为变量x的引用,则应使用的语句是________。

三、改错题(本大题共5小题,每小题4分,共20分)

下面的每题中有一处错误,请用下横线标出错误所在行并给出修改意见

41.#include

voidmain(){

float*p;

p=newfloat[5];

for(i=0;i<5;i++)

{cin>>*(p+i);cout<<*(p+i)<

delete[]p;

}

42.#include

template

classf{

private:

Tx,y;

public:

voidfl(Ta,Tb){x=a;y=b;}

Tmax(){retum(x>y)?

x:

y;}

};

voidmain(){

fa;

a.fl(3.5,3.8);

cout<

}

43.#include

classtest{

private:

staticintx;inty;

public:

voidtestl(inta,intb){x=a;y=b;}

};

voidmain(){

testa;

a.testl(2,3);

}

44.#include

classf{

private:

floatx,y;

public:

voidfl(floata,floatb){x=a;y=b;}

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

voidmove(floata,floatb){x=x+a;y=y-b;}

voidget(){cout<

};

voidmain(){

f*p,a;

a.f1(1.6,3.8);

p=&a;

p.get();

}

45.#include

classpoint{

intx;

public:

voidinit(inta){x=a;}

intgetx(){returnx;}

voidsetx(inta){x=a;}

};

voidmain(){

pointa;

a.init(20,30);

cout<

}

四、完成程序题(本大题共5小题,每小题4分,共20分)

46.完成下面类中成员函数的定义。

classtest

{

private:

intnl;

floatfl;

public:

test(int,floatf);

test(test&);

};

test:

test(________)

{nl=n;fl=f;}

test:

test(test&t)

{nl=t.nl;

fl=________;}

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

11,77

11,77

源程序如下:

#include

usingnamespacestd;

classbase

{

private:

intx,y;

public:

voidinitxy(inta,intb){x=a;y=b;}

voidshow()

{________}

};

voidmain()

{

basea,b;

__________

a.show();

b=a;

b.show();

}

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

x=1,y=2

x=30,y=40

源程序如下:

#include

classSample

{

intx,y;

public:

Sample(){x=y=0;}

Sample(inti,intj){x=i;y=j;}

voidcopy(Sample&s);

voidsetxy(inti,intj){x=i;y=j;}

voidprint(){cout<<"x="<

};

voidSample:

copy(________)

{

x=s.x;y=s.y;

}

voidfunc(________)

{

s1.setxy(10,20);

s2.setxy(30,40);

}

voidmain()

{

Samplep(1,2),q;

q.copy(p);

func(p,q);

p.print();

q.print();

}

Sample&s

}

 

49.在下面程序的下划线处填上正确的语句,使其得到下面的输出结果。

20

21

22

a[0]=20

a[1]=21

a[2]=22

程序清单如下:

#include

usingnamespacestd;

classbase

{

private:

intx;

public:

voidsetx(inta){x=a;}

intgetx(){returnx;}

};

voidmain()

{

basea[3],*p;

a[0].setx(20);

a[1].setx(21);

a[2].setx(22);

for(p=a;p

____________

for(inti=0;i<=2;i++)

____________

}

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

x=2,y=3

源程序如下:

#include

classSample

{

intx,y;

public:

Sample(){x=y=0;}

Sample(________){x=a;y=b;}

voiddisp()

{

cout<<"x="<

}

};

voidmain()

{

Samples(2,3),________

P->disp();

}

五、程序分析题(本大题共2小题,每小题5分,共10分)

51.请给出下面程序的输出结果

#include

usingnamespacestd;

voidfun()

{

staticintn=25;

n--;

cout<<"n="<

}

voidmain()

{

for(inti=0;i<=2;i++)

fun();

}

52.请给出下面程序的输出结果

#include

usingnamespacestd;

classpoint

{

intnum;

public:

point(intn)

{cout<<"Initializing"<

};

voidmain()

{

pointA(88);

cout<<"Enteringmain"<

}

六、程序设计题(本大题共l小题,共10分)

53.给定两个字符串对象S,P(P的长度小于S),实现一判断函数find,检测S是否完全包含P(串P是S的子串),若包含则返回P第一个字符在串S中的起始地址,否则返回-1。

#include

#include

classstr{

strings,p;

public:

str(string&a,string&b){s=a;p=b;}

...find(...);

};

请写出函数的过程(如果需要形式参数,请给出形参类型和数量,以及返回值类型)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2