2022年长沙理工大学C++期末考试题库 .pdf
《2022年长沙理工大学C++期末考试题库 .pdf》由会员分享,可在线阅读,更多相关《2022年长沙理工大学C++期末考试题库 .pdf(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 1 页 共 42 页一、单选题:1. 能作为 C+ 程序的基本单位是( )。 A. 字符 B. 语句 C. 函数 D. 源程序文件2. 程序中主函数的名字为() 。 A. main B. MAIN C. Main D. 任意标识符3. 关于 C+ 与 C语言的关系的描述中, ( )是错误的。 A. C语言是 C+的一个子集 ; B. C语言与 C+ 是兼容的 ; C. C+对 C语言进行了一些改进; D. C+ 和 C语言都是面向对象的4. 可用作 C+ 语言用户标识符的一组标识符是( )。A. void define +WORD B. a3_b3 _123 YN C. for -abc
2、Case D. 2a DO sizeof 5. 存储以下数据,占用存储字节最多的是() 。 A. 0 B. 0 C. “ 0” D. 0.0 6. 设 int a=12;则执行完语句a+=a*a;后, a 的值是 ( )。 A. 12 B. 144 C. 156 D. 288 7. 假设在程序中 a 、b、c 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式abc1的表达式是 ( )。A. 1.0/a*b*c B. 1/(a*b*c) C. 1/a/b/(float)c D. 1.0/a/b/c 8. 以下说法中正确的是() 。 A. C+程序总是从第一个定义的函数开始执行 B. C+
3、程序总是从main 函数开始执行 C. C+函数必须有返回值,否则不能使用函数 D. C+程序中有调用关系的所有函数必须放在同一个程序文件中9. 下面有关构造函数的描述中,正确的是() 。 A. 构造函数可以带有返回值 B. 构造函数的名字与类名完全相同 C. 构造函数必须带有参数 D. 构造函数必须定义,不能缺省10. 在声明类时,下面的说法正确的是() 。 A. 可以在类的声明中给数据成员赋初值 B. 数据成员的数据类型可以是register C. private,public ,protected可以按任意顺序出现 D. 没有用 private,public,protected定义的数据
4、成员是公有成员11. 在下面有关析构函数特征的描述中,正确的是() 。 A. 一个类可以有多个析构函数 B. 析构函数与类名完全相同 C. 析构函数不能指定返回类型 D. 析构函数可以有一个或多个参数12. 构造函数是在()时被执行的。 A. 程序编译 B. 创建对象 C. 创建类 D. 程序装入内存13. 下面有关静态成员函数的描述中,正确的是() A. 在静态成员函数中可以使用this指针 B. 在建立对象前,就可以为静态数据成员赋值 C. 静态成员函数在类外定义是,要用static前缀 D. 静态成员函数只能在类外定义14. 下面有关友员函数的描述中,真确的说法是() A. 友员函数是独
5、立于当前类的外部函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 42 页 - - - - - - - - - C+程序设计试卷第 2 页 共 42 页 B. 一个友员函数不可以同时定义为两个类的友员函数 C. 友员函数必须在类的外部进行定义 D. 在类的外部定义友员函数时必须加上friend关键字15. 友员的作用之一是() A. 提高程序的运行效率 B. 加强类的封装 C. 实现数据的隐蔽性 D. 增加成员函数的种类16. 使用派生类的主要原因是() A. 提高代码
6、的可重用性 B. 提高程序的运行效率 C. 加强类的封装性 D. 实现数据的隐藏17. 在 C+ 中继承方式有几中() A. 1 B. 2 C. 3 D. 4 18. 假设已经定义好了类student ,现在要定义类derived ,它是从 student私有派生的, 则定义类 derived的正确写法是() A. class derived : :student private /,. B. class derived : :student public /,. C. class derived : :public student /,. D. class derived : :privat
7、e student /,. 19. 派生类的对象对它的基类成员中()是可以访问的。 A.公有继承的公有成员; B.公有继承的私有成员; C.公有继承的保护成员; D.私有继承的公有成员。20. 类中定义的成员默认为()访问属性。 A. public B. private C. protected D. friend 21. 下列存储类标识符中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用()合适。 A. 内联函数 ; B. 重载函数 ; C. 递归调用; D. 嵌套调用。22.C+对 C语言作了很多改进,下列描述中()使得 C语言发生了质变,从面向过程变成了面向对象。 A.
8、 增加了一些新的运算符; B. 允许函数重载,并允许设置缺省参数; C. 规定函数说明必须用原型; D. 引进了类和对象的概念;23. 按照标识符的要求, ( )符号不能组成标识符。 A. 连接符 B. 下划线 C.大小写字母 D. 数字字符24. 下列变量名中, ()是合法的。 A CHINA B byte-size C double D A+a 25. 下列各种函数中, ()不是类的成员函数。 A 构造函数 B 析构函数 C 友元函数 D 拷贝构造函数26. 下列()是正确的语句。 A ; B a=17 C x+y D cout0); D) ; 59、 ()不是构造函数的特征。A)构造函数
9、的函数名与类名相同 B )构造函数可以重载名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 42 页 - - - - - - - - - C+程序设计试卷第 5 页 共 42 页C)构造函数可以设置缺省参数 D)构造函数必须指定类型说明60、以下程序段中与语句k=ab? 1:0 ;功能等价的是() 。A) if(ab) k=1; B) if(ab) k=0 C)if(ab) k=1; D)if(ab) k=0;else k=0; else k=1; 61、下列常量中, (
10、)不是字符常量。A) 005 B) n C) c D)a 62、表示“ x 大于 1而小于 10”的逻辑表达式是() 。A)1x1&x10 C) !(x=10) D)x1|x10 63、关于成员函数特征的下列描述中,()是错误的。A)成员函数一定是内联函数 B)成员函数可以重载C)成员函数可以设置缺省参数值D)成员函数可以是静态的64、有以下程序#include void main( ) int i,s=0; for(i=1;i10;i+=2) s+=i; couts; 程序执行后的输出结果是() 。A) 自然数 19 的累加和 B) 自然数 110 的累加和C) 自然数 19 中的奇数之和
11、D) 自然数 110 中的偶数之和65、设有定义: int n=0,*p=&n,*q=&p;则以下选项中,正确的赋值语句是() 。A) p=1; B) *q=2; C) q=p; D) *p=5; 66、 ( )能正确输出结果:C+ 。A) char s=C+;coutsendl; B)char s3=C+;coutsendl; C)char s3=C,+,+,0;coutsendl; D)char s3=C,+,+;coutsendl; 67、有以下程序段int a10=1,2,3,4,5,6,7,8,9,10,*p=a,b; b=p5; b 中的值是() 。A)5 B) 6 C) 8 D)
12、 9 68、有以下程序#include void main( ) char *p10=abc,aabdfg,dcdbe,abbd,cd; coutp3endl; 执行后输出结果是A)dcdbe B) abbd C) abc D) abb 69、下列静态数据成员的特性中,()是错误的。A) 说明静态数据成员时前边要加修饰符static B) 静态数据成员要在类体外进行初始化C) 静态数据成员不是所有对象所共用的名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 42 页 - -
13、 - - - - - - - C+程序设计试卷第 6 页 共 42 页D)引用静态数据成员时,要在其名称前加和作用域运算符70、有以下语句struct S int g; char h; T; 则下面叙述中不正确的是() 。A)S是结构体名 B)该结构体包含2 个成员C)S是 struct类型的变量 D)T 是 struct S类型的变量71、派生类的对象对它的基类成员中()是可以访问的。A)公有继承的公有成员B)公有继承的私有成员C)公有继承的保护成员D)私有继承的公有成员72、实现运行时的多态性用。A、重载函数 B、构造函数 C、析构函数 D 、虚函数73下列变量名中, ()是合法的。 A.
14、 CHINA B. byte-size C. double D. A+a 74. 在 int b3=1,3,2,4,5,6,0;b22的值是() 。 A. 0 B. 2 C. 5 D. 6 75. 下列各运算符中, ()优先级最高。A. + (双目) B. *(单目) C. = D. *= 76. 下列 for 循环的次数为() 。for(int i(0),x=0;!x&i=5;i+) A. 5 B. 6 C . 1 D. 无限77. 下述关于 break 语句的描述中, ()是正确的。A. break 语句可用于循环体内,它将退出该重循环。B. break 语句可用于开关语句中,它将退出开关
15、语句。C. break 语句可用于if体内 , 它将退出 if语句。D. break 语句在一个循环体内可以出现多次。78. 在一个被调用函数中,关于return语句使用的描述, ()是错误的。A. 被调用函数中可以不用 return语句。B. 被调用函数中可以使用多个return语句。C. 被调用函数中,如果有返回值,就一定要有return语句。D. 被调用函数中,一个return语句可返回多个值给调用函数。79. 在 C+ 中,关于下列设置参数默认的描述中,()是正确的。A. 不允许设置参数的默认值。B. 设置参数默认值只能在定义函数时设置。C. 设置参数默认值时,应该是先设置右边的再设置
16、左边的。D. 设置参数默认值时,应该全部参数都设置。80. 下列存储类标识符中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用()合适。A. 内联函数B. 重载函数 C. 递归调用 D. 嵌套调用81. 下列的各类函数中, ()不是类的成员函数。A. 构造函数 B. 析构函数 C . 友元函数D. 拷贝初始化构造函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 42 页 - - - - - - - - - C+程序设计试卷第 7 页 共 42 页82.
17、 ()不是构造函数的特征A. 构造函数的函数名与类名相同 B. 构造函数可以重载C. 构造函数可以设置缺省参数 D. 构造函数必须指定类型说明83. f1(int)是类 A的公有成员函数,p 是指向成员函数f1() 的指针,采用 ()是正确的。A. p=f1 B. p=A:f1 C. p=A:f1() D. p=f1() 84. 下列定义中, ()是定义指向数组的指针p。A. int *p5 B. int (*p)5 C. (int *)p5 D. int *p 85循环 while(int i=0) i-;执行次数是() 。A. 0 B. 1 C . 5 D . 无限86. 设 int x;
18、 ,则经过()后,语句 *px=0 ;可将 x 值置为 0。A. int * px; B . int const * px=&x;C. int * const px=&x; D. const int * px=&x;87. 设 void f1(int * m,long & n);int a;long b ;则以下调用合法的是() 。A. f1(a, b) ; B. f1(&a,b);C. f1(a, &b); D. f1(&a,&b) 88. 关于对象概念的描述中,()是错误的。A. 对象就是C语言中的结构变量; B. 对象代表着正在创建的系统中的一个实体;C. 对象是一个状态和操作(或方法)
19、的封装体; D. 对象之间的信息传递是通过消息进行的; 89. 在下列 double 型常量表示中, ()是错误的。A. E15; B. .35; C. 3E5; D. 3E-5 90. 下列给字符数组进行初始化中,()是正确的。A. char s1 =12345abcd; B. char s23=xyz; C. char s33=a, x, y; D. char s423=xyz,mnp; 91. 对于 int *pa5;的描述,()是正确的。A. pa 是一个指向数组的指针,所指向的数组是5 个 int型元素;B. pa 是一个指向某个数组中第5 个元素的指针,该元素是int型变量;C.
20、pa5 表示某个数组的第5 个元素的值;D. pa 是一个具有5 个元素的指针数组,每个元素是一个int型指针;92. 下列各运算符中, ()优先级最低。A?: B. | C. | D. != 93. 下列 for 循环的循环体执行次数为() 。for(int i(0),j(10);i=j=4;i+,j- -) A. 0; B. 1; C. 4; D. 无限 ; 94. 下述关于开关语句的描述中,()是正确的。A. 开关语句中default子句可以没有,也可以有一个; B. 开关语句中每个语句序列中必须有break 语句 ; C. 开关语句中default子句只能放在最后;D. 开关语句中ca
21、se 子句后面的表达式可以是整形表达式。95. 下列存储类标识符中, ()的可见性与存在性不一值。A. 外部类; B. 自动类 ; C. 内部静态类; D. 寄存器类。96. 下述静态数据成员的特征中,()是错误的。A. 说明静态数据成员时前边要加修饰符static; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 42 页 - - - - - - - - - C+程序设计试卷第 8 页 共 42 页B. 静态数据成员要在类体外进行初始化;C. 引用静态数据成员时,要在静
22、态数据成员名前加和作用域运算符;D. 静态数据成员不是所有对象所共用的。97. ()是析构函数的特征。A. 一个类中只能定义一个析构函数; B. 析构函数与类名不同; C. 析构函数的定义只能在类体内; D. 析构函数可以有各个或多个参数。; 98. 已知: p 是一个指向类A数据成员 m的指针, A1是类 A的一个对象。 如果要给 m赋值为5, ()是正确的。A. A1.p=5; B. A1-p=5; C. A.*p=5; D. *A1.p=5; 99. 关于 new运算符的下列描述中,( )是错的。A. 它可以用来动态创建对象和对象数组;B. 使用它创建的对象或对象数组可以使用运算符del
23、ete删除 ; C. 使用它创建对象时要调用构造函数;D. 使用它创建对象数组时必须指定初始值。100. 派生类的构造函数的成员初始化列中,不能包含() 。A. 基类的构造函数; B. 派生类中子对象的初始化; C. 基类的子对象初始化; D. 派生类中一般数据成员的初始化101. 派生类的对象对它的基类成员中()是可以访问的。A. 公有继承的公有成员; B. 公有继承的私有成员;C. 公有继承的保护成员;D. 私有继承的公有成员。102C+类体系中,不能被派生类继承的有() 。A.构造函数 B.虚函数 C.静态成员函数 D.赋值操作函数103下面标识符中正确的是() 。A_abc B3ab
24、C int D +ab 104下列哪项()不是面向对象程序设计的主要特征?a. 封装b. 继承c. 多态d. 结构105已知 i=5 , j=0 ,下列各式中运算结果为j=6 的表达式是() 。Aj=i+ (+j ) Bj=j+i+ Cj=+i+j Dj=j+i 106若整型变量a、b、c、d 中的值依次为:1、4、3、2。则条件表达式ab?a:cd?c:d的值A1 B 2 C 3 D4 107以下不正确的是() 。 A 语句 for ( i=0 ; ;i+ )表示无限循环 Bfor (; ; )表示无限循环Cfor ()也表示无限循环 Dwhile (1)表示无限循环108有如下程序:int
25、 x=3;do X-=2;couta+&cd)?+d:ab”的值为() 。 A) 9 B)6 C)8 D) 0 134、下面有关重载函数的说法中正确的是() 。A) 重载函数必须具有不同的返回值类型。B) 重载函数形参个数必须不同。C)重载函数必须有不同的形参列表。D)重载函数名可以不同。135、C+语言的跳转语句中,对于break 和 continue说法正确的是() 。A)break 语句只应用于循环体中。B)continue语句只应用于循环体中。C)break 是无条件跳转语句,continue不是。D)break 和 continue的跳转范围不够明确,容易产生问题。136、longi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年长沙理工大学C+期末考试题库 2022 年长 理工大学 C+ 期末考试 题库
限制150内