C++程序设计知到智慧树章节测试课后答案2024年秋咸阳师范学院_第1页
C++程序设计知到智慧树章节测试课后答案2024年秋咸阳师范学院_第2页
C++程序设计知到智慧树章节测试课后答案2024年秋咸阳师范学院_第3页
C++程序设计知到智慧树章节测试课后答案2024年秋咸阳师范学院_第4页
免费预览已结束,剩余6页可下载查看

下载本文档

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

文档简介

C++程序设计知到智慧树章节测试课后答案2024年秋咸阳师范学院第一章单元测试

#include语句______

A:按照在程序中的位置顺序执行B:在最后执行

C:总是在程序运行时最先执行D:在程序编译前需要用包含的文件替换,将源文件进行扩展

答案:在程序编译前需要用包含的文件替换,将源文件进行扩展以下说法正确的是:

A:用C++语言书写程序时要注意区分大小写B:用C++语言书写程序时,每行必须有行号C:用C++语言书写程序时,一行只能写一个语句D:用C++语言书写程序时,一个语句可分几行写

答案:用C++语言书写程序时要注意区分大小写

以下哪种说法不是C++语言的属性:

A:C++语言是泛型程序设计语言

B:C++语言是面向过程的程序设计语言C:C++语言是面向对象的程序设计语言D:C++语言是非过程的程序设计语言

答案:C++语言是非过程的程序设计语言

C++中,一般使用流对象来输入输出对象,通过以下哪个流对象可以输入一个整数:

A:cinB:cerrC:stringD:cout

答案:cin面向过程的C++的程序结构与C语言一样,是:

A:由类构成B:对象+方法C:数据结构+算法D:由函数构成

答案:数据结构+算法;由函数构成

第二章单元测试

下列哪个是C++语言的有效标识符:

A:_No1B:intC:12345D:No.1

答案:_No1考虑函数原型voidtest(inta,int

b=7,char="*"),下面的函数调用中,属于不合法调用的是:

A:test(6,"#")B:test(5);C:test(0,0,"*");D:test(5,8);

答案:test(6,"#")

下列语句中错误的是:

A:int*pointer=newint[40](0)B:int*pointer=newint[10]

C:int*pointer=newintD:int*pointer=newint(10)

答案:int*pointer=newint[40](0)对引用与指针的区别以下说法错误的是:

A:不存在指向空值的引用,但是存在指向空值的指针。B:引用和指针都可以不被初始化。C:引用初始化以后不能被改变,指针可以改变所指的对象。

D:引用必须被初始化,指针不必。

答案:引用和指针都可以不被初始化。已知有数组定义chara[3][4];下列表达式中错误的是:

A:strcpy(a[2],"WIN")B:a[2]="WIN"C:a[2][3]='W'D:a[0][1]=a[0][1]

答案:a[2]="WIN"

第三章单元测试

C++中,若一个变量的定义不在任何函数内部,则它所占的内存在内存的哪个区分配:

A:栈区B:代码区C:静态数据区D:堆区

答案:静态数据区若有语句,intp=newint;则p所占的内存在内存的哪个区分配:

A:代码区B:静态数据区C:堆区D:栈区

答案:堆区若有定义intfac(intn)

{

staticintt=1;

t=t*n;

returnt;

}则变量t是:

A:全局变量B:自动变量C:局部变量D:静态局部变理

答案:静态局部变理在函数中声明的静态变量:

A:在项目中可见,项目结束调用时释放B:在函数体中可见,项目结束调用时释放C:在函数体中可见,函数结束调用时释放的变量D:在程序执行时生成,块结束时释放

答案:在函数体中可见,项目结束调用时释放某文件中定义的静态全局变量(或称静态外部变量)的作用域是______。

A:只限某个函数

B:跨文件

C:不限D:本文件

答案:本文件

第四章单元测试

设计一个类Shape,含有一个数据成员color,若希望能被它的子类成员函数访问,它的访问属性应该设计为:

A:privateB:publicC:protected

答案:protected定义一个类,要使用关键字:

A:enumB:class

C:unionD:struct

答案:class

有以下定义:classpoint{

intm,n;public:

voidset(intx,inty){this->m=x;this->n=y;}};

Point*pointer;则以下哪种使用是正确的:

A:p.set(1,2)B:cout<<pointer->n;C:p->set(1,2)D:pointer->m=3;

答案:p->set(1,2)关于对象概念的描述中,说法错误的是:

A:对象之间的信息传递是通过消息进行的B:对象是类类型的一个变量C:对象代表着正在创建的系统中的一个实体D:对象就是C语言中的结构体类型变量

答案:对象就是C语言中的结构体类型变量下列关于类定义的说法中,正确的是:

A:数据成员必须被声明为私有的B:类成员的缺省访问权限是保护的C:类定义由两部分构成,数据成员和函数成员D:成员函数只能在类体外进行定义

答案:类定义由两部分构成,数据成员和函数成员

第五章单元测试

将运算符重载为类成员函数时,其参数表中含有一个参数,说明该运算是:

A:可能是二元运算符B:无操作数的运算符C:不合法的运算符D:一元运算符

答案:可能是二元运算符运算符重载,本质上是运算符函数的重载,运算符函数是一种特殊的_____或友元函数。

A:析构函数B:成员函数C:构造函数D:重载函数

答案:成员函数以下对运算符函数重载规则的描述中,_____是正确的。

A:不能改变原运算符的语义B:可以改变运算符原来的结合性C:可以改变参与运算的操作数个数D:可以改变运算符原来的优先级

答案:不能改变原运算符的语义如果类Point要重载插入运算符<<,那么重载函数参数表的一般形式为:

A:(ostream&)

B:(ostream&,const&Point)C:(constPoint&,ostream&)

D:(constPoint&)

答案:(ostream&,const&Point)类型转换函数只能定义为一个类的:

A:成员函数B:友元函数C:构造函数D:析构函数

答案:成员函数

第六章单元测试

下列有关继承和派生的叙述中,错误的是:

A:作为虚基类的类不能被实例化B:派生类应当向基类的构造函数传递参数C:派生类不能访问基类的保护成员

D:虚函数不一定要在派生类中重新实现

答案:派生类不能访问基类的保护成员

销毁一个含有对象成员的派生类对象时,各析造函数体的执行次序为:

A:派生类、成员对象类、基类B:基类、派生类、成员对象类C:成员对象类、基类、派生类D:基类、成员对象类、派生类

答案:派生类、成员对象类、基类下列代码声明了3个类classAnimal{};classCat:publicAnimal{};classMouse:Animal{};下列关于这些类之间关系的描述中,错误的是:

A:类Cat是类Animal的派生类B:类Mouse从类Cat公有继承C:类Animal是类Cat的基类D:类Mouse是类Animal的派生类

答案:类Mouse从类Cat公有继承下列代码声明了3个类classAnimal{};classCat:publicAnimal{};classMouse:Animal{};对于这段代码,理解错误的是:

A:类Cat是从类Animal公有继承B:类Mouse是类Animal的私有继承C:类Cat和类Mouse对类Animal的成员的访问属性一样D:类Mouse和类Cat有共同的基类

答案:类Cat和类Mouse对类Animal的成员的访问属性一样在C++中用来实现运行时多态性的是:

A:构造函数B:重载函数C:虚函数D:析构函数

答案:虚函数

第七章单元测试

C++中使用类模板的理由中,以下说法错误的是:

A:类模板不属于C++的多态内容。B:类模板需要实例化后才能定义对象。C:它是类型无关的,因此具有很高的可复用性。D:它在编译时而不是运行时检查数据类型,保证了类型安全。

答案:类模板不属于C++的多态内容。关于类模板,下列表述中错误的是:

A:类模板在编译时会被使用实参表实例化为模板类B:类模板只能有虚拟类型参数C:类模板的成员函数都是函数模板D:用类模板定义一个对象时,有可能省略实参表

答案:类模板只能有虚拟类型参数下列关于模板形参的描述中,错误的是:

A:模板形参表必须用括弧()括起来B:可以用typename修饰模板形参

C:模板形参表必须在关键字template之后D:可以用class修饰模板形参

答案:模板形参表必须用括弧()括起来关于函数模板,描述错误的是:

A:类模板的成员函数都是函数模板,类模板实例化后,成员函数也随之实例化B:一个类定义中,只要有一个函数模板,这个类就是类模板C:函数模板在函数调用时会自动实例化为可支持的模板函数D:函数模板的实例化由编译器实现

答案:一个类定义中,只要有一个函数模板,这个类就是类模板在下列模板的类属参数的说明中,正确的是:

A:template(typedefT1,typedefT2)B:template<classT1,T2>C:template<typenameT1,templateT2>D:template<typenameT1,T2>

答案:template<typenameT1,templateT2>

第八章单元测试

以下支持使用下标操作符来获取元素值的容器是:

A:向量B:列表C:映射D:集合

答案:向量以下关于迭代器的说法正确的是:

A:为映射map定义的迭代器支持随机访问B:5种类型的迭代器(输入迭代器、输出迭代器、前向迭代器、随机访问迭代器)都支持++操作C:指针和迭代器完全等价D:5种类型的迭代器(输入迭代器、输出迭代器、前向迭代器、双向迭代器、随机记问迭代器)都支持==操作

答案:5种类型的迭代器(输入迭代器、输出迭代器、前向迭代器、随机访问迭代器)都支持++操作以下代码的输出结果是为:#include<iostream>#include<vector>#include<algoritm>usingnamespacestd;

voidpush(vector<int>&v){

inti=4;

for(;i>0;i--)

v.push_back(i);}

voidsort(vector<int>v){

sort(v.begin(),v.end());}

voiddisp(vector<int>v){

for(inti=0;i<v.size();i++)

cout<<v[i];}

intmain(){

vector<int>y;

push(v);

disp(v);

sort(v);

disp(v);

return0;}

A:43214321B:12344321C:12341234

D:43211234

答案:43214321下列哪个容器中的元素是有序的:

A:dequeueB:setC:listD:vector

答案:set以下函数模板中,能够对数据进行排序操作的是:

A:findB:

温馨提示

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

评论

0/150

提交评论