第一范文网 - 专业文章范例文档资料分享平台

c++练习题带答案)

来源:用户分享 时间:2025/9/8 9:09:52 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

一、选择题

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 using namespace std; int i = 0;

int fun(int n) {

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’的地址 D16. 下面程序的输出结果是( C )

#include using namespace std; class A {

public:

A (int i) { x = i; }

void dispa () { cout << x << “,”; } private : int x ; };

class B : public A {

public:

B(int i) : A(i+10) { x = i; }

void dispb() { dispa(); cout << x << endl; } private :

)字符’b’ int x ; };

void main() {

B b(2); b.dispb(); } A)10,2

B)12,10

C)12,2

D)2,2

17. 下面程序的输出结果是( C )

#include using namespace std; class Base {

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); }

A)134122

B)123412

18. 下面程序的输出结果是( C )

#include using namespace std; class Base {

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 using namespace std; class Sample {

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 using namespace std; int fun(char *s) { char *p=s; while (*p!='\\0') p++; return (p-s); }

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. 构造派生类对象时,虚基类的构造函数只被调用一次 C. 声明 class B:virtual public A 说明类B为虚基类 D. 建立派生类对象时,首先调用虚基类的构造函数 23. 有下类定义

Class A { Char *a; Public: A():a(0){}

A(char *aa) {//把aa所指字符串拷贝到a所指向的存储空间 A=___________________; Strcpy(a,aa); ~A() {delete [] a;} };

正确的选择是(A)

A. new char[strlen(aa)+1] B. char[strlen(aa)+1] C. char[strlen(aa)] D. new char[sizeof(aa)-1]

24. 假定AA为一个类,a为该类私有的数据成员,GetValue( )为该类公有函数成员,它返回a的值,

x为该类的一个对象,则访问x对象中数据成员a的格式为( X )。 A) x.a B) x.a() C) x->GetValue() D) x.GetValue( )

25. 假定AA为一个类,int a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头

搜索更多关于: c++练习题带答案) 的文档
c++练习题带答案).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c85c328ctue0fvqu4yw276b8ve00zl600v3q_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top