面向对象程序设计(C++)智慧树知到课后章节答案2023年下平顶山学院_第1页
面向对象程序设计(C++)智慧树知到课后章节答案2023年下平顶山学院_第2页
面向对象程序设计(C++)智慧树知到课后章节答案2023年下平顶山学院_第3页
面向对象程序设计(C++)智慧树知到课后章节答案2023年下平顶山学院_第4页
面向对象程序设计(C++)智慧树知到课后章节答案2023年下平顶山学院_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向对象程序设计(C++)智慧树知到课后章节答案2023年下平顶山学院平顶山学院

第一章测试

C++语言与C语言相比最大的改进是()。

答案:

面向对象

使用cout需要引用头文件()。

答案:

iostream

C++程序中的每条语句以()结束。

答案:

分号;

输出命令“cout<<endl;”是正确的。()

答案:

命令“usingnamespacestd;”的意思是使用命名空间std。()

答案:

C++程序中的“endl”在输出语句中起换行并清空流作用。()

答案:

第二章测试

【函数基础】考虑函数原型voidtest(inta,intb=7,charc=‘*’),下面的函数调用中,属于不合法调用的是()

答案:

null

【参数传递】C++中,关于默认形参值,正确的描述是()。

答案:

应该先从右边的形参开始向左边依次设置

【参数传递】下列的描述中()是错误的。

答案:

局部变量可以初始化,若不初始化,则系统默认它的值为0

【循环】有如下程序段:inti=1;while(1){i++;cout《“*”;if(i==10)break:}这个程序代码输出多少()个*?

答案:

9

【循环】执行以下程序后,s的值为()

inta[]={5,3,7,2,1,5,4,lO};ints=0,k;for(k=0;k8;k+=2)s+=*(a+k);

答案:

17

第三章测试

【析构函数】classPoint

{

intx,y;

public:Point(){x=1;y=1;}

~Point(){cout<<x<<'

,'<<y<<"isdeleted."<<endl;}

};

voidmain()

{Pointa;}

程序的运行结果为:Point1,1isdeleted.()

答案:

【析构函数】构造函数和析构函数的执行顺序为先构造的后析构,后构造的先析构。()

答案:

【成员函数】不属于成员函数的是()。

答案:

友元函数

【成员函数】设有以下类的定义:classEx{intx;public:voidsetx(intt=0);};若在类外定义成员函数setx(),以下定义形式中正确的是()

答案:

voidEx::setx(intt){...}

【成员函数】有如下类定义:classsample{intn;public:sample(inti=0):n(i){}voidsetValue(intn0);};下列关于setValue成员函数的实现中,正确的是()。

答案:

voidsample::setValue(intn0){n=n0;}

第四章测试

【静态成员】关于静态成员的描述中,()是错误的。

答案:

静态数据成员定义后必须在类体内进行初始化

【静态成员】下面对静态数据成员的描述中,错误的是()。

答案:

静态数据成员可以在类体内进行初始化

【静态成员】以下关于静态成员变量的叙述不正确的是()

答案:

静态成员变量时必须赋初值

【静态成员】定义静态成员函数的主要目的是()

答案:

处理类的静态成员变量

【静态成员】如果想在同类的多个对象之间实现数据共享,不用全局对象,可以用静态的数据成员。()

答案:

【友元】若外界函数想直接访问类的私有数据成员,则必须把该函数声明为类的友元函数。()

答案:

【友元】一个类A若声明为另一个类B的友元类,则意味着类A中的所有成员函数都是类B的友元函数。()

答案:

【友元】关于友元的描述中,()是错误的。

答案:

友元函数是成员函数,它被说明在类体内

【友元】下列对友元叙述正确的是()。

答案:

友元可以提高程序的执行效率

【常对象常成员】被声明为const的数据成员只允许声明为const的成员函数访问。()

答案:

第五章测试

【运算符重载原理、原则】在C++中不用重载就能直接作用于类对象的运算符是()。

答案:

地址运算符&;赋值运算符=

【运算符重载原理、原则】C++中不能被重载的运算符有()

答案:

成员运算符;sizeof();条件运算符;指针运算符

【友元法运算符重载】运算符重载函数一般采用重载为类的()形式。

答案:

友元函数;成员函数

【友元法运算符重载】运算符重载友元函数定义的形式声明为全局函数,声明为类的友元函数。()

答案:

【友元法运算符重载】运算符重载友元函数法和成员函数法有哪些不同点()

答案:

形参个数不同;运算符重载函数的性质不同,一个重载为成员函数,另一个重载为类的友元函数

【类型转换】转换构造函数是一种特殊的构造函数,只有1个形参,用作类型转换。()

答案:

【类型转换】类型转换函数的作用是将一个类的对象转换成另一个类型的数据。()

答案:

【友元法运算符重载】在使用运算符的表达式中,不要求运算符与函数参数相对应。()

答案:

【单目运算符重载】单目运算符的重载与双目运算符重载区别明显,单目运算符重载一般使用成员函数法,双目运算符重载一般使用友元函数法。()

答案:

第六章测试

【派生类析构函数】关于基类和派生类的转换,下面说法错误的是()

答案:

可以用基类对象对其子类对象赋值。

【继承方式】公有继承中,派生类会原样继承基类中的所有成员(私有成员除外)。()

答案:

【继承与派生概念】派生类只继承基类中的公有成员和保护成员,而不继承私有成员。()

答案:

【继承与派生概念】多重继承是指一个基类派生出多个派生类的情况。()

答案:

【继承与派生概念】下列对基类和派生类关系的描述中,错误的是()。

答案:

派生类是基类的子集

【继承方式】下列对派生类的描述中,错误的是()。

答案:

派生类只含有基类的公有成员和保护成员

【继承方式】下列说法错误的是()。

答案:

公有继承的基类中的private成员在派生类中仍是private的

【继承方式】对于继承方式,下面叙述错误的是()。

答案:

基类的protected成员在派生类中仍然是protected

【派生类构造函数】C++类体系中,不能被派生类继承的有()。

答案:

构造函数

【继承与派生概念】继承与派生可以给软件开发带来很多好处,下述中不正确的是:()

答案:

软件的执行效率大大提高

第七章测试

【动态多态】下列关于虚函数的描述中,()是正确的。

答案:

虚函数既可以在函数说明时定义,也可以在函数实现时定义。

【动态多态】如果一个类至少有一个纯虚函数,那么该类称为()。

答案:

抽象类

【动态多态】实现动态多态(运行时的多态性)要使用()。

答案:

虚函数

下面的4个关键字中,()是用来说明虚函数的。

答案:

virtual

下列描述中,()是抽象类所特有的特征。

答案:

不能定义其对象

虚函数必须是类的()。

答案:

成员函数

在析构函数前面加上关键字virtual进行说明,称该析构函数为虚析构函数。()

答案:

如果一个基类的析构函数被说明为虚析构函数,则它的派生类中的析构函数也是虚析构函数。()

答案:

第八章测试

【工具(异常、命名空间)】命令“usingnamespacestd;”的意思是使用命名空间std。()

答案:

【工具(异常、命名空间)】常见的运行错误有()

答案:

内存空间不足;除数为0;数据读取错误;输入数据类型错误等

【模板】模板就是实现代码重用机制的一种工具,它可以实现类型参数化,即把类型定义为参数,从而实现了真正的代码可重用性。()

答案:

当运行程序时实际上是将类模板实例化为一个具体的()。

答案:

模板类

类模板的模板参数()。

答案:

三者皆可

()使一个函数可以定义为对许多数据类型完成同一任务。

答案:

函数模板

以下关于模板的叙述中,不正确的是()。

答案:

类模板的成员函数都是模板函数

如果有如下函数模板的定义:

template<classT>

Tfunc(Tx,Ty)

{returnx+y;}

则对函数func调用不正确的是()。

答案:

func(3,2.5)

下列对模板的声明正确的是()。

答案:

template<classT1,classT2>

模板的声明使用关键字()。

答案:

template

模板可以实现程序设计中的代码重用,体现了面向对象程序设计的可重用性。()

答案:

由函数模板实例化后是模板函数;由类模板实例化后是模板类。()

答案:

第九章测试

【文件输入输出流】下列打开文件的表达式中,()是错误的。

答案:

ifstreamifile("abc.txt");

【输入输出流】以下关于ios的叙述中正确的是()。

答案:

它是istream类和ostream类的虚基类。

【输入输出流】以下程序的输出结果是()。

cout<<setw(3)<<25<<oct<<25<<hex<<endl;

答案:

2531

在文件操作中,代表以追加方式打开文件的模式是()。

答案:

iso::app

以下不能正确创建输出文件对象并使其与磁盘文件相关联的语句是()。

答案:

ofstream*myfile=new("d:ofile.txt");

下列关于getline()函数的表述中,()是错误的。

答案:

该函数中所使用的终止符只能是换行符

下列关于write()函数的描述中,()是正确的。

答案:

可以使用“(char*)”的方式写数组

下列关于read()函数的描述中,()是正确的。

答案:

只能按规定读取值定数目的字符

文件名由主文件名和扩展名两部分组成,它们之间用圆点分开。()

答案:

在C++中打开一个文件,就是将这个文件与一个文件流对象建立关联,关闭一个文件,就是取消这个关联。()

答案:

C++中数据文件分为二进制文件和文本文件两类。()

答案:

第十章测试

函数UpdateDat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论