C试题附答案

上传人:好** 文档编号:122058807 上传时间:2020-02-29 格式:DOC 页数:15 大小:37.51KB
返回 下载 相关 举报
C试题附答案_第1页
第1页 / 共15页
C试题附答案_第2页
第2页 / 共15页
C试题附答案_第3页
第3页 / 共15页
C试题附答案_第4页
第4页 / 共15页
C试题附答案_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《C试题附答案》由会员分享,可在线阅读,更多相关《C试题附答案(15页珍藏版)》请在金锄头文库上搜索。

1、C+ 试题一、 选择题:1. 关于类和对象不正确的说法是( C )A) 类是一种类型,它封装了数据和操作B) 对象是类的实例C) 一个类的对象只有一个D) 一个对象必属于某个类2. 在类定义的外部,可以被访问的成员有(C )A) 所有类成员 B) private或protected的类成员C) public的类成员 D) public或private的类成员3.关于this指针的说法错误的是(A )A) this指针必须显示说明 B) 当创建一个对象后,this指针就指向该对象C) 成员函数拥有this指针 D) 静态成员函数不拥有this指针4.声明一个类的对象时,系统自动调用( B )函数

2、,撤消对象时,系统自动调用(C )函数A) 成员函数 B) 构造函数 C) 析构函数 D) 普通函数5. 下面对构造函数的不正确描述是(B )A) 系统可以提供默认的构造函数 B) 构造函数可以有参数,所以可以有返回值C) 构造函数可以重载 D) 构造函数可以设置默认参数6.下面对析构函数的正确描述是(C )A) 系统不能提供默认的析构函数 B) 析构函数必须由用户定义C) 析构函数没有参数 D) 析构函数可以设置默认参数7.对静态成员的不正确描述是(C)A) 静态成员不属于对象,是类的共享成员 B) 静态数据成员要在类外定义和初始化C) 调用静态成员函数时要通过类或对象激活,所以静态成员函数

3、拥有this指针D) 非静态成员函数也可以操作静态数据成员8.下面选项中,不是类的成员函数为(C )A) 构造函数B) 析构函数 C)友元函数 D) 缺省参数的构造函数方言9.下面对友元的错误描述是(D )A) 关键字friend用于声明友元 B) 一个类的成员函数可以是另一个类的友元C) 友元函数访问对象的成员不受访问特性影响 D) 友元函数通过this指针访问对象成员10.在C+中,类与类之间的继承关系具有(C )A) 自反性 B) 对称性 C) 传递性 D) 反对称性11.下列关于类的继承描述中,(A )是错误的A)派生类可以访问基类的所有数据成员,也能调用基类的所有成员函数B)派生类也

4、是基类,但基类不一定具有派生类的全部属性和方法C)继承描述类的层次关系,派生类可以具有与基类相同的属性和方法D)一个基类可以有多个派生类,一个派生类可以有多个基类12.当一个派生类仅有继承一个基类时,基类中的所有公有成员成为派生类的(A )A) public成员 B) private成员 C) protected成员 D) 友元13.当一个派生类私有继承一个基类时,基类中的所有仅有成员和保护成员成为派生类的(B )A) public成员 B) private成员 C) protected成员 D) 友元14.不论派生类以何种方法继承基类,都不能使用基类的(B )A) public成员 B) p

5、rivate成员 C) protected成员 D) public成员和protected成员15.下面描述中,错误的是(BC )(两个答案)A)在基类定义的public成员在公有继承的派生类中可见,也能在类外被访问B)在基类定义的public和protected成员在私有继承的派生类中可见,在类外可以被访问C)在基类定义的public和protected成员在保护继承的派生类中不可见D)在派生类中不可见的成员要变成可访问的,需要进行访问声明16.在C+中,不能被派生类继承的函数是(BC )(两个答案)A) 成员函数 B) 构造函数C) 析构函数 D) 静态成员函数17.在创建派生类对象时,构

6、造函数的执行顺序是(D )A)对象成员构造函数、基类构造函数、派生类本身的构造函数B)派生类本身的构造函数、基类构造函数、对象成员构造函数C)基类构造函数、派生类本身的构造函数、对象成员构造函数D)基类构造函数、对象成员构造函数、派生类本身的构造函数18.当不同的类具有相同的间接基类时,有特点( AD )(两个答案)A)各派生类对象将按继承路线产生自己的基类版本B)派生类对象无法产生自己的基类版本C)为了建立惟一的间接基类版本,在基类定义前加virtual即可D)为了建立惟一的间接基类版本,应该声明虚继承19.在C+中,要实现动态联编,必须使用(D )调用虚函数A) 类名 B) 派生类指针 C

7、) 对象名 D) 基类指针20.下列函数中,可以作为虚函数的是(CD )(两个答案)A) 普通函数 B) 构造函数 C)成员函数 D) 析构函数 21.在派生类中,重载一个虚函数时,要求函数名、参数的个数、参数的类型、参数的顺序和函数的返回值(B )A) 不同 B) 相同 C) 相容 D) 部分相同22.下面函数原型声明中,(B )声明了fun为虚函数A) void fun()=0; B) virtual void fun()=0; C) virtual void fun(); D) virtual void fun();23.若一个类中含有纯虚函数,则该类称为(D )A) 基类 B) 纯基类

8、 C) 派生类 D) 抽象类24.假设A为抽象类,下列声明(B )是正确的A) A fun(int); B) A *p; C) int fun(A); D) A Obj;25.下面描述中,正确的是(BD )(两个答案)A) 虚函数是没有实现的函数 B) 纯虚函数的实现在派生类中C) 抽象类是没有纯虚函数的类 D) 抽象类指针可以指向不同的派生类26.关于函数模板,描述错误的是( A )A)函数模板必须由程序员实例化为可执行的函数模板B)函数模板的实例化由编译器实现C)一个类定义中,只要有一个函数模板,则这个类是类模板D)类模板的成员函数都是函数模板,类模板实例化后,成员函数也随之实例化27.下

9、列的模板说明中,正确提(AD )(两个答案)A)template B)template C)template D)template 28.假设有函数模板定义如下:Template Max(T a, T b, T &c) c=a+b; 下列选项正确的是(AD )(两个答案)A)float x,y; float z; Max(x,y,z);B)int x,y,z; Max(x,y,z);C)int x,y; float z; Max(x,y,z);D)float x; int y, z; Max(x,y,z);29.关于类模板,描述错误的是(D )A)一个普通基类不能派生类模板B)类模板从普通类派

10、生,也可以从类模板派生C)根据建立对象时的实际数据类型,编译器把类模板实例化为模板类D)函数的类模板参数须通过构造函数实例化30.建立类模板对象的实例化过程为(C )A) 基类派生类 B) 构造函数对象C) 模板类对象 D) 模板类模板函数31.在C+中,容器是一种( D )A) 标准类 B) 标准对象 C) 标准函数 D) 标准类模板32.下列类中(BD )(两个答案)不是输入/输出流类iostream的派生类A) fstream B) ofstream C) strstream D)ostrstream33.在下列选项中(BCD )(三个答案)是ostream类的对象A) cin B) c

11、err C) clog D) cout34.read函数的功能是从输入流中读取(D )A) 一个字符 B) 当前字符C) 一行字符 D) 指定若干个字符35. 下列选项中,用于清除基数格式位置以十六制输出的语句是(B )A) coutsetf(ios:dec, ios:basefield);B) coutsetf(ios:hex, ios:basefield);C) coutsetf(ios:hex, ios:basefield);36. 下列格式控制符,在iostream.h中定义的是(AD )(两个答案),在iomanip.h中定义的是(BC )(两个答案)A) endl B) setfi

12、ll C) setw D) oct37. 下列串流类,在strstream.h中定义的是(BD )(两个答案),在sstream.h中定义的是(AC )A) istringstream B) istrstreamC) ostringstream D) ostrstream38. 包含类fstream定义的头文件是(A )A) fstream.h B) ofstream.hC) ifstream.h D) iostream.h39. 要求打开文件 d:file.dat,可写入数据,正确的语句是(D )A) ifstream infile(“d:file.dat”, ios:in);B) ifstream infile(“d:file.dat”, ios:in);C) ofstream

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号