2010、1

发布时间:

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
中国自考人(www.zk8.com.cn——700门自考课程永久免费、完整在线学习快快加入我们吧!中国自考人(www.zk8.com.cn——700门自考课程永久免费、完整在线学习快快加入我们吧!

全国20101月自考C加加程序设计试题
课程代码:04737
一、单项选择题(本大题共20小题,每小题1分,共20
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.C++中,头文件扩展名为(A..cppB..hC..1ib
D..obj
2.下列符号中,不属于分隔符的是(A.B.C.
D.{}
3.可替换#definePI3.1415926的语句是(A.floatPI3.1415926B.constfloatPI=3.1415926C.constPI(3.1415926D.const3.1415926
4.布尔类型标识符是(A.voidB.shortC.long
D.bool
5.下列不是C++语言的基本数据类型的是(A.字符类型B.整数类型C.逻辑类型
D.枚举类型
6.C++允许在结构中定义函数,这些函数称为(A.静态函数B.构造函数C.析构函数
D.成员函数
7.设函数voidinc(int将形参加1,如有整型变量inti=10;则执行inc(i;后,i的值为(A.9B.10C.11
D.未知
8.下列哪种默认参数的声明是不正确的(A.intmax(intaintbintcintd=0B.intmax(intaintbintc=0intd=0C.intmax(inta=0intbintc=0intd=0
1

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
D.intmax(intaintb=0intc=0intd=0
9.int&max(int&,int&返回两参数中较大者,如有两整型变量inta=10intb=15;在执行max(ab++后,ab值分别为(A.1015B.1115C.1016
D.1l16
10.包含哪种语句的函数不能声明为内联函数(A.循环B.变量自增自减C.if...else…
D.变量声明
11.定义函数模板中使用的参数类型标识符需使用下列哪组符号括起来(A.<>B.“”C.(
D.{}
12.一个类拥有多个构造函数,则这些构造函数间为(A.重载关系B.重复关系C.拷贝关系
D.无关系
13.对于拷贝构造函数pointpoint(point&p,下列说明正确的是(A.该函数只能访问P的私有成员B.该函数不能访问P的公有成员C.该函数可以访问P的私有和公有成员
D.该函数不能访问P的成员
14.使用delete[]删除对象数组时,描述正确的是(A.数组中各元素都调用析构函数B.数组中各元素都调用构造函数C.不调用析构函数
D.只有首元素调用析构函数
15.下列哪个指令属于条件编译指令(A.#elifB.#errorC.#pragma
D.#include
16.设类Test中存在成员staticintx,则下列哪种初始化方式是正确的(A.Testintx=25B.intx=25C.intTestx=25
D.intTestx=25
17.下列关于友元的描述错误的是(A.成员函数不可作友元B.类可以作友元C.普通函数可以作友元
D.静态函数可以作友元18.在继承中,派生类拥有的基类个数为(A.0B.1C.多个
D.至少1
19.基类中的protected成员,通过public派生,其在派生类中的可见性为(2


www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
A.不可访问C.protected
B.privateD.public
20.下列哪个不是面向对象的关键要素(A.抽象性C.封装性
B.结构性D.多态性
二、填空题(本大题共20小题,每小题1分,共20
请在每小题的空格中填上正确答案。错填、不填均无分。21.STL库中用于实现数组内容反转的函数是______
22.若要使用C++标准类库,需要指定相应的命名空间,所用的语句是______
23.C++语言中的整数常量有4种描述类型:十进制常量、长整型常量、八进制常量和______24.声明一个名为a的整型引用变量所使用的语句是______25.重载的运算符仍保留原有的优先级、______和语法结构。26.执行代码intb=100cout<
程序的输出结果是______
27.带有纯虚函数的类称为抽象类,它只能作为______来使用。
28.使用______作为函数参数,实参对象和形参对象代表同一对象,改变形参对象的值就是改变实参对象的值。29.UML中对象之间的静态关系是通过对象属性之间的连接反映的,称之为______
30.如果一个模板声明列出多个参数,则多个参数之间必须使用逗号隔开,每个参数都必须重复使用关键字______31.C++类的构造函数名与______名称一样,且没有返回值。
32.C++规定,当一个成员函数被调用时,系统自动向它传递一个隐含的参数,该参数是一个指向调用该函数的对象的指针,该指针被称为______指针。
33.声明一个常成员函数Fun,其返回类型为char,第一个参数类型为int,第二个参数类型为double,函数Fun声明原型是______
34.C++语言中的聚合隐含了两种实现方式,一种是______,另一种是用一个类的对象作为一种广义的数据类型来定义整体对象的一个属性。
35.简单成员函数是指声明中不含const______static关键字的函数。
36.在派生类中继承的基类成员的初始化,需要由派生类的构造函数调用基类的______来完成。
37.C++中,利用向量类模板定义一个具有20int的向量,其所有元素被置为1,实现此操作的语句是______38.vector类中用于获取无需再次分配内存就能容纳的对象个数的方法是______39.动态联编是程序运行到需要的语句处才动态确定的,这称为______多态性。40.C++重载“=”运算符的函数名是______
3

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
三、改错题(本大题共5小题,每小题4分,共20
下面的每题中有一处错误,请用下横线标出错误所在行并给出修改意见41.#include#definePI3.14voidmain({
doubleiintr
cout<<″输入圆形半径:″;cin>>ri=2*PI*r
cout<<圆形周长=<i=PI*r*r
cout<<圆形面积=<}
42.#includeclassA{privateintxypublic
A(inta=0b=1voidShow(}
AA(intaintb{x=ay=b}
voidAShow({
cout<<x=<cout<<y=<
4

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
}
43.#includeclassA{
unsignedcharvarpublic
A(unsignedcharx{var=x}
voidprint({
cout<<var=<}};voidmain({
Aa(x;a.print(}
44.#includeclassClass{public
voidprint(inta,intb{
cout<<int<cout<<int<}
voidprint(char*a,char*b{cout<<string<cout<<string<}
voidprint(char*a,unsignedintb{cout<<string<cout<<int<
5

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
}};
voidmain({
Classclscls.print(10,20cls.print(c′,1cls.print(x′,′ycls.print(Hello!0}
45.#includeclassClass{
privateintvalpublic
voidfunc(inta
{
val=a;}};voidmain({
Class*cls;cls->func(10;}
四、完成程序题(本大题共5小题,每题4分,共20
46.将下面程序补充完整,使程序计算100以内所有可被7整除的自然数之和。#includevoidmain({
intx=1intsum=0
6

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
while(true{if(x>100{______;}
if(______{sum=sum+x}x++}
cout<}
47.将下面程序补充完整,使程序执行结果为9#includeclassClass{public______{x=a}______{returnx*x}privateintx}voidmain({
Classa(3
cout<}
48.将下面程序补充完整,使程序正确的初始化私有变量var及释放资源。classClass{
7

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
privateint*varpublic
Class(intnumClass(}
ClassClass(intnum{
_______}
Class:~Class({
_______}
49.将下面程序补充完整,使程序的输出结果为:ClassAPrintClassBPrint程序如下:#includeclassBase{
public
virtualvoidPrint(const{cout<<BasePrint<}}
classClassApublicBase{public
voidPrint(const{cout<<ClassAPrint<}}
classClassBpublicBase{
8

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
public
voidPrint(const{cout<<ClassBPrint<}}
voidPrint(______{
______}
voidmain({
ClassAaClassBbPrint(aPrint(b}
50.下列程序的运行结果如下:x=22y=22
根据结果将程序补充完整。#includetemplate<______>voidf(______{
if(sizeof(T1>sizeof(T2x=(T1yelsey=(T2x}
voidmain({doublex=134.2inty=22f(xy
cout<<x=<y=<}
五、程序分析题(本大题共2小题,每小题5分,共10
9

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
请给出下面程序的输出结果51.#includeclassClass{public:staticintvar;Class({var++;}};
intClassvar=0voidmain({
cout<<Classvar=<Classcl;
cout<<cl.var=<Classc2,c3;
cout<<c2.var=<}
52.#includeclassA{public:A(;
voidShow(;~A(;private:staticintc;}
intAc=0;A::A({
10

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
cout<<constructor.<c+=10;}
voidA::Show({
cout<<c=<}A~A({
cout<<destructor.<}
voidmain({
Aaba.Show(b.Show(}
六、程序设计题(本大题共l小题,共10
53.利用LOCATION类,使用继承定义圆类CIRCLE,圆由圆心和半径构成。提供得到圆心坐标和半径的成员函数、以及计算圆的周长和面积的成员函数。在主程序中创建两个圆AB,圆心坐标分别为(03(37,按如下格式输出两个圆的圆心坐标、周长和面积,并计算和输出两个圆的圆心之间的距离。A(xly1r1Girth=g1Area=a1B(x2y2r2Girth=g2Area=a2A(xly1B(x2y2Distance=d
定义LOCATION类,该类没有“继承”等现象。注意二维坐标点之间的距离公式。classLOCATION{doublexy
publicvirtualdoublegetx(const{returnx}
virtualdoublegety(const{returny}virtualdoubledist(LOCATION&sconst
LOCATION(doublexdoubleyx(xy(y{}}
doubleLOCATIONdist(LOCATIONsconst{doublexd=s.xxyd=s.yy
11

www.4juan.com各类考试历年试题答案免费免注册直接下载全部WORD文档
returnsqrt(xd*xd+yd*yd}
中国自考人(www.zk8.com.cn——改写昨日遗憾创造美好明天!用科学方法牢记知识点顺利通过考试!中国自考人(www.zk8.com.cn——改写昨日遗憾创造美好明天!用科学方法牢记知识点顺利通过考试!
12

2010、1

相关推荐