全国高等教育自学考试c++程序设计试题doc资料.docx

上传人:b****1 文档编号:1709601 上传时间:2022-10-23 格式:DOCX 页数:13 大小:20.35KB
下载 相关 举报
全国高等教育自学考试c++程序设计试题doc资料.docx_第1页
第1页 / 共13页
全国高等教育自学考试c++程序设计试题doc资料.docx_第2页
第2页 / 共13页
全国高等教育自学考试c++程序设计试题doc资料.docx_第3页
第3页 / 共13页
全国高等教育自学考试c++程序设计试题doc资料.docx_第4页
第4页 / 共13页
全国高等教育自学考试c++程序设计试题doc资料.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

全国高等教育自学考试c++程序设计试题doc资料.docx

《全国高等教育自学考试c++程序设计试题doc资料.docx》由会员分享,可在线阅读,更多相关《全国高等教育自学考试c++程序设计试题doc资料.docx(13页珍藏版)》请在冰豆网上搜索。

全国高等教育自学考试c++程序设计试题doc资料.docx

全国高等教育自学考试c++程序设计试题doc资料

绝密★考试结束前

全国2013年1月高等教育自学考试

C++程序设计试题

课程代码:

04737

请考生按规定用笔将所有试题的答案涂、写在答题纸上。

选择题部分

注意事项:

1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。

2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。

如需改动,用橡皮擦干净后,再选涂其他答案标号。

不能答在试题卷上。

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

在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。

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

1.下列不属于C++关键字的是

A.externB.goto

C.freeD.default

2.C++中定义标准输入输出的库为

A.stdioB.math

C.iostreamD.stdlib

3.My是一个类,则执行语句Mya[3],*p[2]之后,自动调用构造函数次数为

A.2B.3

C.4D.5

4.下列语句错误的是

A.intval(20);B.externintval(20);

C.constintval;D.externconstintval;

5.下列说法中,有关构造函数是正确的是

A.任何一类必定有构造函数B.可定义没有构造函数的类

C.构造函数不能重载D.任何一类必定有缺省的构造函数

6.下面关于类和对象说法不正确是

A.类由数据与函数组成B.一个对象必属于某个类

C.对象是类的实例D.一个类的对象只有一个

7.下面选项中不是类成员函数的是

A.构造函数B.析构函数

C.友元函数D.静态函数

8.在C++中类之间的继承关系具有

A.自反性B.对称性

C.传递性D.反对称性

9.C++中类的成员默认为

A.publicB.private

C.protectedD.static

10.C++中要实现动态联编,调用虚函数时必须使用

A.基类指针B.类名

C.派生类指针D.对象名

11.下面对析构函数的正确描述是

A.系统不能提供默认的析构函数B.析构函数必须由用户定义

C.析构函数没有参数D.析构函数可以设置默认参数

12.在下面的二维数定义正确的是

A.intary[5][];B.intary[][5]={{0,1,2}};

C.intary[][5];D.intary[5,5];

13.以下说法中正确的是

A.C++程序总是从第一个定义的函数开始执行

B.C++程序总是从main函数开始执行

C.C++中函数必须有返回值

D.C++中函数名必须唯一

14.对C++中主函数描述正确的是

A.名称为main,可为多个B.名称不限,可为多个

C.名称为main,必须有且只能有—个D.名称不限,必须有且只能有—个

15.下面声明纯虚函数语句正确的是

A.voidfun()=0;B.virtualvoidfun()=0;

C.virtualvoidfun();D.virtualvoidfun(){};

16.对于拷贝初始化构造函数和赋值操作的关系,正确的描述是

A.拷贝初始化构造函数和赋值操作是完全一样的操作

B.进行赋值操作时,会调用类的构造函数

C.当调用拷贝初始化构造函数时,类的对象正在被建立并被初始化

D.拷贝初始化构造函数和赋值操作不能在同一个类中被同时定义

17.使用重载函数的目的是

A.共享函数数据B.减少代码量

C.优化运行效率D.提高可读性

18.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是

A.增加了一些新的运算符

B.允许函数重载,并允许设置缺省参数

C.规定函数说明符必须用原型

D.引进了类和对象的概念

19.假定有“char*p=“Hello”;”,若要输出这个字符串的地址值正确的写法为

A.cout<<*p;B.cout<

C.cout<<&p;D.cout<<(void*)p;

20.对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是

A.公有类型B.私有类型

C.保护类型D.友元类型

非选择题部分

注意事项:

用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。

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

21.C++程序的编译是以____________为单位进行的。

22.C++语言支持的两种多态性分别是编译时的多态性和____________的多态性。

23.重载的运算符保持其原有的操作符个数、____________和结合性不变。

24.在C++中,函数的参数有两种传递方式,它们分别是值传递和____________。

25.含有____________的类称为抽象类。

26.C++程序运行时的内存空间可以分成全局数据区,堆区,栈区和____________。

27.对于无返回值函数,定义函数时要用____________修饰函数类型。

28.定义重载函数必须在参数的个数或参数的____________上与其它同名函数不同。

29.拷贝构造函数是在用一个对象初始化另一个对象时被调用,系统缺省的拷贝构造函数的工作方法是____________。

30.以面向对象方法构造的系统,其基本单位是____________。

31.拷贝构造函数使用____________作为参数初始化创建中的对象。

32.当一个成员函数被调用时,该成员函数的____________指向调用它的对象。

33.类可将实现细节隐藏起来,这种机制称为____________。

34.在面向对象的程序设计中,通过封装实现数据隐藏;通过____________实现代码的复用。

35.在公有继承的中基类数据成员在派生类中的访问权限____________。

36.复杂对象可以由简单对象构成,这种现象称为____________。

37.如有“char*p=''Hello'';”,则语句“cout<<*(p+1);”输出值是____________。

38.基类和派生类的关系称为____________。

39.在类的定义中,说明为protected的数据成员称为保护成员。

保护数据成员具有双重作用:

对于其派生类而言,是公有的;而对于其外部的程序而言,是____________。

40.假定x=10,则表达式x<=10?

20:

30的值为____________。

三、改错题(本大题共5小题,每小题2分,共10分)

下面的类定义中有一处错误,请写出错误所在行并给出修改意见

41.#include

classpoint{

private:

floatx,y;

public:

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

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

voidgetx(){cout<

voidgety(){cout<

};

main(){

pointa(3.5);

a.getx()

}

42.#include

main(){

intx=7;

constint*p=&x;

*p=99

cout<<*p<

}

43.#include

classtest{

private:

intx;y;

public:

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

intmax(){return(x>y)?

x:

y;}

};

main(){

testa;

a.f(1,3);

cout<

}

44.#include

classtest{

private:

intx;

public:

test(inta){x=a;}

voidset(inta){x=a;}

voidget(){cout<

};

classtestl:

publictest{

private:

intx;

public:

testl(inta){x=a;}

voidset(inta){x=a;}

voidget(){cout<

};

45.#include

classf{

private:

intx,y;

public:

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

voidprint(){cout<

};

main(){

fa;

floatx=1.5y=2.0;

a.fl(x,y);

a.print();

}

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

46.将下划线处缺少的部分写在“答题纸”上。

源程序如下:

#include

usingnamespacestd;

classbase

{

inta,b;

public:

base(intx,inty){a=x;b=y;}

voidshow(________________)

{

cout<

}

}________________

voidmain()

{

baseb(78,87);

b.show(b);

}

47.将下划线处缺少的部分写在“答题纸’’上。

源程序如下:

#include

#include

usingnamespacestd;

voidmain()

{

________________myf(''ab.txt'');//定义输出流文件,并初始化

________________<<''ThisiaaTXTfile'';//向文件输入字符串

myf.close();

}

48.在下面程序中的下划线处填上适当的程序(答案写在“答题纸’’上),使程序的输出

结果如下:

67,90

源程序如下:

#include

usingnamespacestd;

classbase

{

private:

intx,y;

public:

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

voidshow(base*p);

};

inlinevoidbase:

:

show(________________)

{

cout<x<<'',''<y<

}

voidprint(base*p)

{

p->show(p);

}

voi

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

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1