2024年聊城大学《C++》期末试卷
一、单项选择题(每题2分,共30分)
1.以下关于C++语言的述,正确的是()
A.C++语言是一种脚本语言
B.C++完全兼容C语言
C.C++语言不支持面向对象编程
D.C++程序不需要编译就能运行
2.下列数据类型中,不属于C++基本数据类型的是()
A.intB.floatC.stringD.char3.定义一个整型变量a并初始化为5,正确的语句是
()
A.inta=5;B.a=5;inta;C.int5=a;D.inta;a=5;4.若有语句intx=10,y=20;,
贝I执行x=xAy;y=xAy;x=xA,x禾口y的值分另0为()
A.x=10,y=20B.x=20,y=10C.x=10,y=10D.x=20,y=205.关于C++中的函
数,下列说法错误的是()
A.函数可以有多个返回值
B.函数可以没有参数
C.函数可以进行嵌套调用
D.函数可以有默认参数
6.以下哪个关键字用于定义类()
A.structB.classC.unionD.enum7.若有类定义classA(intx;public:voidsetXfinta
(x=a;}intgetXQ(returnx;};,则下列说法正确的是()
A.x是公有的数据成员
B.setX和getX是私有的成员函数
C.可以通过Aa;a.x=10;直接访问xD.可以通过Aa;a.setX(lO;调用setX函数
8.C++中,实现继承的关键字是()
A.extendsB.implementsC.publicD.:(冒号)9.关于虚函数,下列说法正确的是()
A.虚函数必须在基类中定义为virtualB.虚函数不能被子类重写
C.调用虚函数时,在编译阶段就确定调用哪个函数
D.虚函数只能是成员函数
10.以下哪种容器是C++标准模板库(STL中的顺序容器()
A.setB.mapC.vectorD.unordered_map11.若要打开一个文件进行写入操作,使
用fstream类的构造函数时,应指定的}丁开模式为()
A.ios::inB.ios::outC.ios::appD.ios::binary12.异常处理中,用于抛出异常的关键
字是()
A.tryB.catchC.throwD.finally13.C++的引用类型,以下说法正确的是()
A.引用必须在定义时初始化
B.引用可以指向不同的对象
C.引用就是指针
D.引用可以不与变量关联
14.关于运算符重载,下列说法错误的是()
A.可以重载+、-等算术运算符
B■可以重载《、等流插入和流提取运算符
C,所有运算符都可以重载
D,运算符重载函数可以是类的成员函数或友元函数
15.以下代码段的输出结果是()
#include
usingnamespacestd;
intmainQ(
intarr[]={1,2,3,4,5};
int*p=arr;
cout*(p+3endl;
return0;
A.1
B.2
C.3
D.4
二、填空题(每空2分,共20分)
1.C++程序的入口函数是。
2.定义一个字符数组str,存储字符串Hello,正确的语句是charstr[]=Hello;,
该数组在内存中占用的字节数为o
3.在C++中,const关键字用于定义,其值在定义后不能被修改。
4.类中的数据成员和成员函数默认的访问权限是o
5.多态性分为多态和多态,函数重载体现的是多态。
6.vector容器在使用前需要包含的头文件是。
7.C++牝delete运算符用于释放由____运算符分配的内存空间。
三、程序阅读题(每题10分,共20分)
1分.析以下C++程序,写出输出结果。
#include
usingnamespacestd;
voidswapfinta,intb)(
inttemp=a;
a=b;