c++练习习题(带答案)40656
欢迎共阅
一、选择题
1. C++语言属于( C )。
A) 自然语言 B) 机器语言 C)面向对象语言 D) 汇编语言 2. 下面选项中不属于面向对象程序设计特征的是(C) 。
A)继承性 B)多态性 C)相似性 D)封装性 3. 可用作C++语言用户标识符的一组标识符是( B )。
A) void define +WORD B) a3_b3 _123 YN C) for -abc Case D) 2a DO sizeof
4. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为(A)。 A) 0 B) 4 C) 8 D) 6 5. 下列情况中,哪一种情况不会调用拷贝构造函数 ( B )? A)用派生类的对象去初始化基类对象时 B)将类的一个对象赋值给该类的另一个对象时 C)函数的形参是类的对象,调用函数进行形参和实参结合时 D)函数的返回值是类的对象,函数执行返回调用者时 6. 以下哪一关键字可用于重载函数的区分( C ) A)extern B)static C)const D)virtual 7. 下列有关数组的叙述中,正确的是( B ) A)C++中数组的存储方式为列优先存储 B)数组名可以作为实参赋值给指针类型的形参 C)数组下标索引从1开始,至数组长度n结束 D)数组指针的语法形式为:类型名 *数组名[下标表达式]; 8. 下列有关继承和派生的叙述中,正确的是( C ) A)派生类不能访问通过私有继承的基类的保护成员 B)多继承的虚基类不能够实例化 C)如果基类没有默认构造函数,派生类就应当声明带形参的构造函数 D)基类的析构函数和虚函数都不能够被继承,需要在派生类中重新实现 9. 实现运行时多态的机制是( A ) A)虚函数 B)重载函数 C)静态函数 D)模版函数 10.若有下面的函数调用:
fun(a+b, 3, max(n-1, b)); 其中实参的个数是( A ) A)3 B)4 C)5 D)6
11.下列关于this指针的说法正确的是( B )
A)this指针存在于每个函数之中
B)在类的非静态函数中this指针指向调用该函数的对象 C)this指针是指向虚函数表的指针
欢迎共阅
D)this指针是指向类的函数成员的指针
12.在下列关于C++函数的叙述中,正确的是( C )
A)每个函数至少要有一个参数 B)每个函数都必须返回一个值 C)函数在被调用之前必须先声明 D)函数不能自己调用自己 13.下列运算符中,不能重载的是 ( C )
A)&& B)!= C). D)-> 14.下面程序的输出结果是( B )
#include
static int a = 2; a++; return a+n; }
void main() {
int k = 5; { int i = 2; k += fun(i); } k += fun(i); cout << k; }
A)13 B)14 C)15 D)16 15.下面的程序段的运行结果为( D ) char str[] = \cout << *(p+2) << endl; A)98 B)无输出结果 C)字符’b’的地址16.下面程序的输出结果是( C )
#include
public:
A (int i) { x = i; }
void dispa () { cout << x << “,”; }
)字符’b’ D 欢迎共阅
private : int x ; };
class B : public A {
public:
B(int i) : A(i+10) { x = i; }
void dispb() { dispa(); cout << x << endl; } private : int x ; }; void main() {
B b(2); b.dispb(); }
A)10,2 B)12,10 C)12,2 D)2,2 17.下面程序的输出结果是( C )? #include
public: Base(int i) { cout << i; } ~Base () { } }; class Base1: virtual public Base {
public: Base1(int i, int j=0) : Base(j) { cout << i; } ~Base1() {} };
class Base2: virtual public Base {
public:
Base2(int i, int j=0) : Base(j) { cout << i; } ~Base2() {} };
class Derived : public Base2, public Base1
欢迎共阅
{
public:
Derived(int a, int b, int c, int d) : mem1(a), mem2(b), Base1(c), Base2(d), Base(a) { cout << b; } private:
Base2 mem2; Base1 mem1; };
void main() { Derived objD (1, 2, 3, 4); } 18.下面程序的输出结果是( C ) #include
public: virtual void f() { cout << “f0+”; } void g() { cout << “g0+”; } }; class Derived : public Base {
public: void f() { cout << “f+”; } void g() { cout << “g+”; } }; void main() { Derived d; Base *p = &d; p->f(); p->g(); } A)f+g+ B)f0+g+ C)f+g0+ D)f0+g0+ 19.下面程序的输出结果是( C ) #include
friend long fun (Sample s) {
if (s.x < 2) return 1;
return s.x * fun(Sample(s.x-1)); }
public:
Sample (long a) { x = a; }
欢迎共阅
private: long x; };
void main() {
int sum = 0;
for (int i=0; i<4; i++) {
sum += fun(Sample(i)); } cout << sum; }A)12 B)16 C)10 D)34 20.以下程序的输出结果是:(D ) #include
void main(){ cout< A.0 B. 1 C. 2 D. 3 21.有如下程序段: int i=1; while(1) { i++; if (i==10) break; if(i%2==0) cout<<’*’; } 执行这个程序段输出字符*的个数是(C) A. 10 B. 3 C. 4 D.5 22.下列关于虚基类的描述中,错误的是(C) A. 使用虚基类可以消除由多继承产生的二义性 B. 构造派生类对象时,虚基类的构造函数只被调用一次
相关推荐:
- [高等教育]公司协助某村精准扶贫工作总结.doc
- [高等教育]高二生物知识点总结(全)
- [高等教育]苏教版数学三年级下册《解决问题的策略
- [高等教育]仪器分析课程学习心得
- [高等教育]2017年五邑大学数学与计算科学学院333
- [高等教育]人教版七年级下册语文第四单元测试题(
- [高等教育]2018年秋七年级英语上册Unit7Howmuchar
- [高等教育]2017年八年级下数学教学工作小结
- [高等教育]湖南省怀化市2019届高三统一模拟考试(
- [高等教育]四年级下册科学_基础训练及答案教材
- [高等教育]城郊煤矿西风井管路伸缩器更换施工安全
- [高等教育]昆八中20182019学年度上学期期末考试
- [高等教育]项目部各类人员任命书
- [高等教育]上市公司经营水务产业的模式
- [高等教育]人教版高二化学第一学期第三章水溶液中
- [高等教育]【中考物理第一轮复习资料】四.压强与
- [高等教育]金坑水电站报废改建工程机电设备更新改
- [高等教育]高中生物教学工作计划简易版
- [高等教育]2017年西华大学攀枝花学院(联合办学)44
- [高等教育]最新整理超短爆笑英文小笑话大全
- 优秀教师继续教育学习心得体会
- 阳历到阴历的转换
- 留守儿童教育案例分析
- 华师17春秋学期《玩教具制作与环境布置
- 测速传感器新型安装装置的现场应用
- 人教版小学数学三年级下册第四单元
- 创业个人意向书
- 山东省潍坊市2012年高考仿真试题(三)
- [恒心][好卷速递]四川省成都外国语学校
- 多少人错把好转反应当成了病情加重处理
- 中外广播电视史复习资料整理
- 江苏省扬州市江都区宜陵镇中学2014-201
- 工程造价专业毕业实习报告
- 广西师范学院心理与教育统计
- aympkrq基于 - asp的博客网站设计与开
- 建筑业外出经营相关流程操作(营改增后
- 人治 德治 法治
- [精华篇]常识判断专项训练题库
- 中国共产党为什么要实行民主集中
- 小学数学第三册第一单元试卷(A、B、C




