2024秋最新《中国大学MOOC面向对象程序设计C考核作业参考原题试题》形考作业试题题库、期末题库
考试说明:本人针对该科精心汇总了历年题库及答案,形成一个完整的题库,并且每年都在更新。该题库对考生的复习、作业和考试起着非常重要的作用,会给您节省大量的时间。做考题时,利用本文档中的查找工具,把考题中的关键字输到查找工具的查找内容框内,就可迅速查找到该题答案。本文库超星学习通、知到智慧树、国家开放大学、广东开放大学、江苏开放大学、上海开放大学、云南开放大学、芯位教育、云慕学苑、职教云、川农在线、长江雨课堂、安徽继续教育平台、青书学堂、睿学在线、成教云、京人平台、绎通继教云、学起Plus、云上河开、河南继续教育、四川开放大学、良师在线、继教云、日照专业技术人员继续教育、麦能网、21tb、168网校、云班课、电大中专、learnin、西财在线等平台复习试题与答案,敬请查看。
课程题目试题是随机的,请按题目关键词查找(或按Ctrl+F输入题目中的关键词,尽量不要输入整个题目,不要复制空格,连续的几个字就行)
本文由【大象答案】微信公众号提供,禁止复制盗取,违者必究
本文由【大象答案】微信公众号提供,禁止复制盗取,违者必究
本文由【大象答案】微信公众号提供,禁止复制盗取,违者必究

面向对象程序设计C
学校: 无
问题 1: 1. 有如下类定义,s是CStudent的一个对象,下列选项都是对该类的应用,正确的是( )
class CStudent //定义类
{
private:
int sid; //学号
protected:
char *name; //姓名
public:
float score; //成绩
};
选项:
• A. cout<
• B. cout<
• C. cout<
• D. cout<
答案: cout<
问题 2: 2. 有关类与对象的关系,叙述错误的是( )
选项:
• A. 对象是类的实例,类的具体化。
• B. 类指定了一个对象的内部工作方式和外部接口。
• C. 类是具有相同特性的实体的抽象。类是现实世界的抽象。
• D. 结构体可以描述数据和操作,类也一样,所以他们没有区别。
答案: 结构体可以描述数据和操作,类也一样,所以他们没有区别。
问题 3: 3. 关于类和对象的叙述,正确的是()
选项:
• A. 一个类只能定义一个对象
• B. 一个对象可以属于几个不同的类
• C. 对象是类的一个具体实例
• D. 一个类中可以有本类的对象
答案: 对象是类的一个具体实例
问题 4: 4. 在声明类成员时,缺省的权限是()
选项:
• A. private
• B. public
• C. protected
• D. 不支持缺省
答案: private
问题 5: 5. 下列对析构函数的描述正确的是()
选项:
• A. 析构函数返回类型为void
• B. 析构函数无形参,也不能重载
• C. 析构函数体内必须包含delete操作
• D. 析构函数内不能包含循环
答案: 析构函数无形参,也不能重载
问题 6: 6. 下列函数中,( )不能重载。
选项:
• A. 成员函数
• B. 非成员函数
• C. 析构函数
• D. 构造函数
答案: 析构函数
问题 7: 7. 假定AB为一个类名,则如下声明语句调用了()次构造函数
AB a(4), b[5], *p;
选项:
• A. 5
• B. 6
• C. 7
• D. 9
答案: 请关注公众号【大象答案】查看答案
问题 8: 8. 有类CA,A、B都是CA的实例,下列操作中没有调用拷贝构造函数的是( )
选项:
• A. CA A=B;
• B. CA A(B);
• C. F(A); //其中函数定义为F(CA D)
• D. F(A); //其中函数定义为F(CA &A)
答案: 请关注公众号【大象答案】查看答案
问题 9: 9. 关于常对象,如下叙述中错误的是( )
选项:
• A. 常对象定义形式可以为:const className obj;
• B. 常对象定义形式可以为:const className obj=anotherObj;
• C. 常对象可以调用其所有的对象方法;
• D. 常对象的值不可修改;
答案: 请关注公众号【大象答案】查看答案
问题 10: 10. 下面关于常对象的描述中,错误的是( )。
选项:
• A. 在定义常对象时必须进行初始化
• B. 常对象可以调用当前类的普通成员函数
• C. 常对象的数据成员的值,不能被直接或间接修改
• D. 以上描述都不对
答案: 请关注公众号【大象答案】查看答案
问题 11: 11. 如下关于友元类的定义中,错误的是( )
选项:
• A. 友元类是在多个类之间建立一种访问机制;
• B. 一个类A被说明为另一个类B的友员类,B的成员就可以被A使用;
• C. 友元类的所有成员函数都可视为该类的友元函数;
• D. 类A被声明为类B的友元类,则类B也为类A的友元类。
答案: 请关注公众号【大象答案】查看答案
问题 12: 12. 如果类A被说明成类B的友元,则正确的是( )
选项:
• A. 类A的成员即类B的成员
• B. 类B的成员即类A的成员
• C. 类A的成员函数不得访问类B的成员
• D. 类B不一定是类A的友元
答案: 请关注公众号【大象答案】查看答案
问题 13: 13. 下面关于友元函数的描述中,正确的是( )。
选项:
• A. 友元函数是当前类的成员函数
• B. 一个友元函数可以同时定义为两个类的友元函数
• C. 友元函数可以加强类的封装性
• D. 在外部定义友元函数时,必须加关键字friend
答案: 请关注公众号【大象答案】查看答案
问题 14: 14. 友元的作用之一是( )。
选项:
• A. 提高程序的运行效率
• B. 加强类的封装性
• C. 实现数据的隐藏性
• D. 增加成员函数的种类
答案: 请关注公众号【大象答案】查看答案
问题 15: 15. 下面关于静态成员函数的描述中,正确的是( )。
选项:
• A. 在静态成员函数中可使用this指针
• B. 在建立对象前,就可为静态数据成员赋值
• C. 静态成员函数在类外定义时,要用static前缀
• D. 静态成员函数只能在类外定义
答案: 请关注公众号【大象答案】查看答案
问题 16: 16. 下面关于构造函数的描述,正确的是( )。
选项:
• A. 构造函数可以带有返回值
• B. 构造函数允许重载
• C. 在声明构造函数时,不能指定默认参数值
• D. 可以声明虚构造函数
答案: 请关注公众号【大象答案】查看答案
问题 17: 17. 下面构造函数的描述,正确的是( )。
选项:
• A. 函数名必须与类名相同
• B. 构造函数不能重载
• C. 构造函数可以有返回值
• D. 构造函数必须定义,不能默认
答案: 请关注公众号【大象答案】查看答案
问题 18: 18. 关于delete运算符的下列描述中,( )是正确的。
选项:
• A. 它既能用于new返回的指针,也能用于malloc返回的指针
• B. 对一个指针可以使用多次该运算符
• C. 使用它删除对象时要调用析构函数
• D. 指针名前有几对方括号符号,与所删除数组的维数一致
答案: 请关注公众号【大象答案】查看答案
问题 19: 19. 下面关于结构体的描述中,错误的是( )。
选项:
• A. C语言的结构体中只能含有各种不同类型的数据,不能含有函数
• B. C语言的结构体中可以含有各种不同类型的数据,也可以含有函数
• C. C++语言的结构体中可以含有各种不同类型的数据,也可以含有函数
• D. C++语言对C语言的结构体类型进行了扩充
答案: 请关注公众号【大象答案】查看答案
问题 20: 20. 如果为一个对象定义了一个引用,下面描述中,错误的是( )。
选项:
• A. 引用是对象的别名
• B. 引用与其对应的对象分别占用不同的存储单元
• C. 通过对象的引用可以访问对象中的成员
• D. 以上描述都正确
答案: 请关注公众号【大象答案】查看答案
问题 21: 1. 派生类中虚函数原型的( )。
选项:
• A. 函数类型可以与基类中虚函数的原型不同
• B. 参数个数可以与基类中虚函数的原型不同
• C. 参数类型可以与基类中虚函数的原型不同
• D. 以上都不对
答案: 请关注公众号【大象答案】查看答案
问题 22: 2. 类B是类A的公有派生类,类A和类B中都定义了虚函数 func(),p是一个指向类A对象类型的指针,则 p->func() 将 ( ) 。
选项:
• A. 调用类 A 中的函数 func()
• B. 调用类 B 中的函数 func()
• C. 根据 p 所指的对象类型而确定调用类 A 中或类 B 中的函数 func()
• D. 既调用类 A 中函数,也调用类 B 中的函数
答案: 请关注公众号【大象答案】查看答案
问题 23: 3. 相同类型对象之间可以直接赋值,如:
CMyPoint c1(5,7),c2;
c2=c1;
但不是所有的同类型对象都可以这么操作。试问,包含下列类成员变量中( ),则不可以直接赋值。
选项:
• A. char * a;
• B. int b[10];
• C. string c;
• D. double d;
答案: 请关注公众号【大象答案】查看答案
问题 24: 4. 有关运算符重载正确的描述是( )。
选项:
• A. 允许改变运算符的操作个数
• B. 允许改变运算符的优先级
• C. 允许改变运算符的结合性
• D. 允许改变运算符原来的功能
答案: 请关注公众号【大象答案】查看答案
问题 25: 5. 类运算符重载实例如下:
class CMyPoint
{ int x, y;
public:
CMyPoint(int i, int j){ x=i; y=j; }
CMyPoint operator+(CMyPoint &p) //二元运算符
{return CMyPoint(x+p.x, y+p.y);}
CMyPoint operator–(CMyPoint &p) //二元运算符
{return CMyPoint(x-p.x, y–p.y);}
};
p1,p2为该类的实例,则如下调用方法中,错误的是( )
选项:
• A. CMyPoint p3=p1+p2;
• B. operator +(p1,p2);
• C. p1=p1.operator +(p2);
• D. p1=p1 +(p2);
答案: 请关注公众号【大象答案】查看答案
问题 26: 6. 实现运行时多态的机制是( )
选项:
• A. 虚函数
• B. 重载函数
• C. 静态函数
• D. 模版函数
答案: 请关注公众号【大象答案】查看答案
问题 27: 7. 能用友元函数重载的运算符是( )。
选项:
• A. +
• B. =
• C. [ ]
• D. ->
答案: 请关注公众号【大象答案】查看答案
问题 28: 8. 关于虚函数的描述中,( )是正确的。
选项:
• A. 虚函数是一个static类型的成员函数
• B. 虚函数是一个非成员函数
• C. 基类中说明了虚函数后,派生类将其对应的函数可不必说明为虚函数
• D. 派生类的虚函数与基类的虚函数具有不同的参数个数和类型
答案: 请关注公众号【大象答案】查看答案
问题 29: 9. 关于虚函数,正确的描述是( )。
选项:
• A. 构造函数不能是虚函数
• B. 析构函数不能是虚函数
• C. 虚函数可以是友元函数
• D. 虚函数可以是静态成员函数
答案: 请关注公众号【大象答案】查看答案
问题 30: 10. 通过( )调用虚函数时,采用动态联编。
选项:
• A. 对象指针
• B. 对象名
• C. 成员名限定
• D. 派生类名
答案: 请关注公众号【大象答案】查看答案
问题 31: 1. 下面关于对象概念的描述中,( )是错误的。
选项:
• A. 对象代表着正在创建的系统中的一个实体。
• B. 对象就是C语言中的结构变量。
• C. 对象之间的信息传递是通过消息进行的。
• D. 对象是一个状态和操作(或方法)的封装体。
答案: 请关注公众号【大象答案】查看答案
问题 32: 2. 以下描述中,错误的是( )
选项:
• A. 继承就是派生类继承了基类的所有方法。
• B. 封装隐藏了实现细节,使代码模块化。
• C. 多态是通过继承实现的不同对象调用相同的方法,表现出不同的行为。
• D. 继承可使派生类继承基类的属性和方法。
答案: 请关注公众号【大象答案】查看答案
问题 33: 3. 关于面向对象技术的主要特征,叙述正确的是( )
选项:
• A. 多态性:C++中体现为重载和动态连编。
• B. 以上答案都对。
• C. 继承:体现了类与类之间的层次关系,提高软件重用性。
• D. 封装:一种信息隐藏技术,提高模块的独立性。
答案: 请关注公众号【大象答案】查看答案
问题 34: 4. 下面选项中不属于面向对象程序设计特征的是( ) 。
选项:
• A. 相似性。
• B. 多态性。
• C. 封装性。
• D. 继承性。
答案: 请关注公众号【大象答案】查看答案
问题 35: 5. 有关面向对象叙述,错误的是( )
选项:
• A. 封装有利于向外界隐藏了内部数据结构,表达式和过程。
• B. 封装使类对外展示抽象的,非具体的操作。
• C. C++语言的类结构支持数据抽象和数据封装。
• D. 封装就是代码的分而治之。
答案: 请关注公众号【大象答案】查看答案
问题 36: 1. 在关于C++与C语言关系的描述中,( )是错误的。
选项:
• A. C语言是C++的一个子集。
• B. C++是与C语言兼容的。
• C. C++对C语言进行了一些改进。
• D. C++和C语言都是面向对象的。
答案: 请关注公众号【大象答案】查看答案
问题 37: 2. C++对C语言作了很多改进,下列描述中( )使得C语言发生了质变,即从面向过程变成为面向对象。
选项:
• A. 增加一些新的运算符。
• B. 允许函数重载,并允许设置默认参数。
• C. 规定函数说明必须用原型。
• D. 引进了类和对象的概念。
答案: 请关注公众号【大象答案】查看答案
问题 38: 3. 关于C++的描述,( )是错误的。
选项:
• A. C++是纯正的面向对象的语言。
• B. C++允许变量声明与可执行语句在程序中交替出现。
• C. C++既是C的超集,又增加了面向对象机制。
• D. C++支持用户自定义命名空间。
答案: 请关注公众号【大象答案】查看答案
问题 39: 4. int a, b, c;
string s;
cin >> s >> b >> c;
对于如上语句,若输入流为“abcdefg1234 123 234jk”则s,b,c的值分别为( )}
选项:
• A. “abcdefg1234”,123,234
• B. “abcdefg”,1234,123
• C. “abcdefg1234”,123,0
• D. “abcdefg1234 123 234jk”,0,0
答案: 请关注公众号【大象答案】查看答案
问题 40: 5. 要从标准输入中输入三个数,分别为整数"12"、浮点数"3.14"和字符串"str",用如下语句完成,那么对应的输入错误的是( )
cin>>var_int>>var_float>>var_string;
选项:
• A. 123.14str
• B. 12 3.14 str
• C. 12 3.14str
• D. 以上答案都不对
答案: 请关注公众号【大象答案】查看答案
问题 41: 6. 有如下函数定义
void fun(int &);
则如下调用中,正确的是( )
选项:
• A. int a=100; fun(&a);
• B. fun(256);
• C. int a=100; fun(a);
• D. int a=100; fun(3*a);
答案: 请关注公众号【大象答案】查看答案
问题 42: 7. 以下有关常量的几个应用,正确的是( )
选项:
• A. const int * u=9; u=10; //定义了一个常量u
• B. int a=10; int b=8; int * const v=&a; v=&b//定义了一个常量指针u
• C. int a=10; int * const v=&a; *v=10//定义了一个常量指针u
• D. int f(const int x){ return ++x;}
答案: 请关注公众号【大象答案】查看答案
问题 43: 8. 有如下函数定义:
int func(int a) { return a; }
int func(int a, int b = 1) { return a + b; }
那么按照如下调用,其输出是多少()
cout<
选项:
• A. 2 1
• B. 2 2
• C. 1 1
• D. 函数调用,或者定义存在语法错误
答案: 请关注公众号【大象答案】查看答案
问题 44: 9. 有如下函数的定义:
void setvalue(int x,int y=2)
{
m_x = x;
m_y = y;
cout<
选项:
• A. 上述调用无法正确执行。
• B. 1 2
• C. 0 2
• D. 1 0
答案: 请关注公众号【大象答案】查看答案
问题 45: 10. int F (int,int);不可与哪个函数构成重载( )。
选项:
• A. int F (int,int,int);
• B. double F (double,double);
• C. double F (int,int);
• D. double F (int,double);
答案: 请关注公众号【大象答案】查看答案
问题 46: 11. 下列说法正确的是( )
选项:
• A. 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
• B. 内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方
• C. 类的内联函数必须在类体内定义
• D. 类的内联函数必须在类体外通过加关键字inline定义
答案: 请关注公众号【大象答案】查看答案
问题 47: 12. 在( )情况下适宜采用内联函数。
选项:
• A. 函数代码小,频繁调用
• B. 函数代码多,频繁调用
• C. 函数体含有递归语句
• D. 函数体含有循环语句
答案: 请关注公众号【大象答案】查看答案
问题 48: 13. 在下列描述中,( )是错误的。
选项:
• A. 内联函数主要解决程序的运行效率问题。
• B. 内联函数的定义必须出现在内联函数第一次被调用之前。
• C. 内联函数中可以包括各种语句。
• D. 对内联函数不可以进行异常接口声明。
答案: 请关注公众号【大象答案】查看答案
问题 49: 14. 删除一个动态申请的一维数组sa,如下叙述是正确的()
选项:
• A. delete sa;
• B. delete sa();
• C. delete sa[];
• D. delete []sa;
答案: 请关注公众号【大象答案】查看答案
问题 50: 15. 创建动态对象,需要使用操作符( )。
选项:
• A. new
• B. delete
• C. define
• D. using
答案: 请关注公众号【大象答案】查看答案
问题 51: 16. 下面有关重载函数的说法中正确的是( )。
选项:
• A. 重载函数形参类型必须不同。
• B. 重载函数形参个数必须不同。
• C. 重载函数必须有不同的形参列表。
• D. 重载函数名可以不同。
答案: 请关注公众号【大象答案】查看答案
问题 52: 17. 下面有关重载函数的说法中正确的是( )。
选项:
• A. 重载函数必须具有不同的返回值类型。
• B. 重载函数形参个数必须不同。
• C. 重载函数必须有不同的形参列表。
• D. 重载函数名可以不同。
答案: 请关注公众号【大象答案】查看答案
问题 53: 18. 重载函数在调用时选择的依据中,( )是错误的。
选项:
• A. 函数的返回类型
• B. 函数的名字
• C. 函数参数的个数
• D. 函数参数的类型
答案: 请关注公众号【大象答案】查看答案
问题 54: 19. 假设已经有定义“const char * const xm="chen";”,下面的语句中正确的是( )。
选项:
• A. xm[3]= 'b';
• B. xm="linda";
• C. xm=new char[6];
• D. cout<
答案: 请关注公众号【大象答案】查看答案
问题 55: 20. 下列语句中错误的是( )。
选项:
• A. double *p=new double(6);
• B. double *p=new double[6];
• C. double *p=new double;
• D. double *p=new double[6](0);
答案: 请关注公众号【大象答案】查看答案
问题 56: 1. 派生类的对象对它的基类中( )是可以访问的。
选项:
• A. 公有继承的公有成员
• B. 公有继承的私有成员
• C. 公有继承的保护成员
• D. 私有继承的公有成员
答案: 请关注公众号【大象答案】查看答案
问题 57: 2. 设置虚基类的目的是( )。
选项:
• A. 简化程序
• B. 消除二义性
• C. 提高运行效率
• D. 减少目标代码
答案: 请关注公众号【大象答案】查看答案
问题 58: 3. 基类的private成员通过public派生其在派生类中的访问权限是( )
选项:
• A. private
• B. protected
• C. public
• D. 不可见(既不能访问)
答案: 请关注公众号【大象答案】查看答案
问题 59: 4. 在哪种派生方式中,派生类中可以访问基类中的protected成员( )
选项:
• A. public和private
• B. public和protected
• C. protected和private
• D. 以上均可
答案: 请关注公众号【大象答案】查看答案
问题 60: 5. 假设已经定义好了一个类teacher,现在要定义类dteacher,它是从teacher保护派生的,定义正确的是( )。
选项:
• A. class dteacher : teacher protected{…}
• B. class dteacher : teacher public{…}
• C. class dteacher : protected teacher{…}
• D. class dteacher : public teacher{…}
答案: 请关注公众号【大象答案】查看答案
问题 61: 6. 假设有如下程序,该程序输出为( )
class Base { //基类
int x, y;
public:
Base(int a, int b) { x=a; y=b; }
~ Base(){ cout<<"destruct Base "<
选项:
• A. destruct Base
• B. destruct Base
destruct Derived
• C. destruct Derived
destruct Base
• D. destruct Derived
答案: 请关注公众号【大象答案】查看答案
问题 62: 7. 关于类概念的描述中,( )是错误的。
选项:
• A. 类和对象的关系是抽象和具体的关系
• B. 类是用户自定义的数据类型
• C. 类的继承可避免公用代码的重复开发
• D. 基类就是通常所说的子类
答案: 请关注公众号【大象答案】查看答案
问题 63: 8. 在公有继承的情况下,基类的成员(私有的除外)在派生类中的访问权限( )。
选项:
• A. 受限制
• B. 保持不变
• C. 受保护
• D. 不受保护
答案: 请关注公众号【大象答案】查看答案
问题 64: 9. 假设已经定义好了一个类student,现在要定义类dstudent,它是从student公有派生的,定义正确的是( )。
选项:
• A. class dstudent : student private{…}
• B. class dstudent : student public{…}
• C. class dstudent : private student{…}
• D. class dstudent : public student{…}
答案: 请关注公众号【大象答案】查看答案
问题 65: 10. 如果已经定义了类x和类y,且有定义类z的语句如下:
class z : public x , y{…};
那么其继承方式的描述中,正确的是( )。
选项:
• A. 类z公有继承了类x和类y
• B. 类z公有继承了类x,私有继承了类y
• C. 类y的前面缺少了继承方式关键词,语法错误
• D. 类z公有继承了类x,类y的继承方式待以后确定
答案: 请关注公众号【大象答案】查看答案
问题 66: 11. 基类的private成员通过protected派生其在派生类中的访问权限是( )
选项:
• A. private
• B. protected
• C. public
• D. 不可见(既不能访问)
答案: 请关注公众号【大象答案】查看答案
问题 67: 12. 使用派生类的目的是( )。
选项:
• A. 提高代码的可重用性
• B. 提高程序的运行效率
• C. 加强类的封装性
• D. 实现数据的隐藏
答案: 请关注公众号【大象答案】查看答案
问题 68: 13. 在创建派生类的对象时,由于派生类的对象包含了基类的数据成员,因此派生类的构造函数除初始化其自身定义的数据成员外,还必须对基类中的数据成员进行初始化。也就是说,派生类的构造函数要负责调用基类的构造函数。假设有类A,类B,类A是基类,类B继承自类A,那么在构造对象B b时,他们构造函数的调用顺序是( )
选项:
• A. 先A的构造函数,后B的构造函数
• B. 先B的构造函数,后A的构造函数
• C. 构造函数的调用顺序取决于具体的调用情况
• D. 可以由用户自定义顺序
答案: 请关注公众号【大象答案】查看答案
问题 69: 14. 在多继承构造函数定义中,几个基类构造函数用( )分割。
选项:
• A. :
• B. ;
• C. ,
• D. ::
答案: 请关注公众号【大象答案】查看答案
问题 70: 15. 下列关于继承的描述,正确的是( )。
选项:
• A. 基类的构造函数能够被继承
• B. 基类的析构函数能够被继承
• C. 派生类能够对接收基类的成员进行选择
• D. 派生类能够增加新的成员
答案: 请关注公众号【大象答案】查看答案
问题 71: 16. 假设已经定义好了一个类student,现在要定义类derived,它是从student私有派生的,定义正确的是( )。
选项:
• A. class derived : student private{…}
• B. class derived : student public{…}
• C. class derived : private student{…}
• D. class derived : public student{…}
答案: 请关注公众号【大象答案】查看答案
问题 72: 17. 基类的公有成员在私有派生类中是( )成员,基类的保护成员在公有派生类中是( )成员。
选项:
• A. 私有, 保护
• B. 私有,私有
• C. 保护,保护
• D. 公有,保护
答案: 请关注公众号【大象答案】查看答案
问题 73: 18. 有如下类定义关系:
class A {
public:
int x; };
class B: public A { int y; };
class C:public A { int z; };
class D:public B, public C { };
试问,若有下列类应用,其输出结果是( )
D d; d.x=5; cout<
选项:
• A. 没有输出
• B. 55
• C. 编译错误
• D. 5
答案: 请关注公众号【大象答案】查看答案
问题 74: 19. 假设有类A、B、C,其中类C继承自A和B,即class C : public A, public B{}。现类A、B中都有public成员x,那么,对于C的对象c,需要引用B中的x成员,其使用方法为( )。
选项:
• A. c.x
• B. c.B.x
• C. c.B::x
• D. c::B::x
答案: 请关注公众号【大象答案】查看答案
问题 75: 20. 在C++中,对于基类的protected成员,当以protected方式派生一个新类时,该成员将成为派生类的( )成员。
选项:
• A. private
• B. protected
• C. public
• D. 不可见(既不能访问)
答案: 请关注公众号【大象答案】查看答案
问题 76: 1. 模板的作用是为了( )。
选项:
• A. 提高代码的可重用性
• B. 提高代码的运行效率
• C. 加强类的封装性
• D. 实现多态性
答案: 请关注公众号【大象答案】查看答案
问题 77: 2. 把max函数用函数模板加以定义如下。
template
T add(T a, T b)
{ return a + b ; }
请问,如下几个应用,哪个是错误的( )
选项:
• A. int a=add(2,4);
• B. int a, b=4, c=6; a=add(b,c);
• C. float a=(1.2, 5);
• D. double a, b=3; a=add(3.4, b);
答案: 请关注公众号【大象答案】查看答案
问题 78: 3. 有关函数模板的叙述,错误的是( )
选项:
• A. 函数模板适用于函数的参数个数相同而类型不同,且函数体相同的情况。
• B. 函数模板适用于函数的参数个数不同的情况。
• C. 函数模板可以说是一个通用的函数,支持多种不同的形参,避免函数体的重复设计。
• D. 函数模板最大特点是把函数使用的数据类型作为参数。
答案: 请关注公众号【大象答案】查看答案
问题 79: 4. C++捕获异常使用( )语句。
选项:
• A. throw
• B. try
• C. catch
• D. try{…} catch{…}
答案: 请关注公众号【大象答案】查看答案
问题 80: 5. 假设声明了以下的函数模板:
template
T max(T x, T y)
{ return (x>y) ?x :y ; }
并定义了 int i; char c;
错误的调用语句是( )。
选项:
• A. max(i, i)
• B. max(c, c)
• C. max((int)c, i)
• D. max(i, c)
答案: 请关注公众号【大象答案】查看答案
问题 81: 6. 关于函数模板的描述错误的是( )。
选项:
• A. 函数模板的函数返回类型和形参类型用一个虚拟类型来代表,不具体指定
• B. 函数模板经实例化而生成的具体函数称为模板函数
• C. 函数模板代表了一类函数
• D. 模板函数代表了一类函数
答案: 请关注公众号【大象答案】查看答案
问题 82: 7. 关于函数模板的描述错误的是( )。
选项:
• A. 函数模板可以重载
• B. 函数模板经实例化而生成的具体函数称为模板函数
• C. 函数模板代表了一类函数
• D. 函数模板与同名的非模板函数不可以重载
答案: 请关注公众号【大象答案】查看答案
问题 83: 8. C++处理异常的机制是由( )3部分组成。
选项:
• A. 编辑、编译和运行
• B. 检查、抛出和捕获
• C. 编辑、编译和捕获
• D. 检查、抛出和运行
答案: 请关注公众号【大象答案】查看答案
微信扫码添加好友
如二维码无法识别,可拨打 13662661040 咨询。