南开20秋学期《程序设计基础(下)》在线作业答案_第1页
南开20秋学期《程序设计基础(下)》在线作业答案_第2页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、20秋学期(1709、1803、1809、1903、1909、2003、2009 )程序设计基础(下)在线作业试卷总分:100 得分:100一、单选题 (共 20 道试题,共 40 分)1.有关析构函数的说法正确的是( )。A.析构函数可以有多个B.析构函数和构造函数一样可以有形参C.析构函数的功能是用来释放一个对象D.析构函数的函数类型为void答案:C2.下面说法正确的是( )。A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方C.类的内联函数必须在类体内定义D.类的内联函数必须在类体外用关键字inline定义答

2、案:B3.在一个具有n个顶点的有向图中,若所有顶点的出度之和为s,则所有顶点的度之和为( )。A.sB.s+1C.s-1D.2s答案:D4.关于多继承二义性的描述中,错误的是()。A.一个派生类的基类中都有某个同名成员,在派生类中对这个成员的访问可能出现二义性B.解决二义性的最常用的方法是对成员名的限定法C.基类和派生类同时出现的同名函数,也存在二义性问题D.一个派生类是从两个基类派生出来的,而这两个基类又有一个共同的基类, 对该基类成员进行访问时,可能出现二义性答案:C5.对虚函数的调用()。A.一定使用动态联编B.一定使用静态联编C.必须使用动态联编D.不一定使用动态联编答案:D6.下面关

3、于类概念的描述中,( )是错误的。A.类是抽象数据类型的实现B.类是具有共同行为的若干对象的统一描述体C.类是创建对象的样板D.类就是C语言中的结构体类型答案:D7.关于动态关联的下列叙述中,()是错误的。A.动态关联是以虚函数为基础的B.动态关联调用虚函数操作是指向对象的指针或引用C.动态关联是在运行时确定所调用的函数代码的D.动态关联是在编译时确定操作函数的答案:D8.下列关于类的继承描述中,( )是错误的。A.派生类可以访问基类的所有数据成员,也能调用基类的所有成员函数B.派生类也是基类,但基类不一定具有派生类的全部属性和方法C.继承描述类的层次关系,派生类可以具有与基类相同的属性和方法

4、D.一个基类可以有多个派生类,一个派生类可以有多个基类答案:A9.下面程序段中,说法正确的是( ) class location public : int GetX(); ; class rectangle:private location public: int GetW(); ;A.类rectangle的私有派生类是locationB.类rectangle中的public成员在类 location中是私有的C.类location中的public成员在类 rectangle中是不可访问的D.viod f( ) Rectangle r; int X=r .GetX( ); 其中int X =

5、r .GetX( );是非法语句答案:D10.下列运算符中,()运算符在C+中不能重载。A.?:B.+C.-D.=答案:A11.在二叉树中,若度为0的结点(即叶子结点)数为n0,度为2的结点数为n2,则( )。A.n2-1B.n2C.n2+1D.n2+2答案:C12.关于类和对象不正确的说法是( )。A.类是一种类型,它封装了数据和操作B.对象是类的实例C.一个类的对象只有一个D.一个对象必属于某个类答案:C13.已知X类,则当程序执行到语句 X array3; 时,调用了( )次构造函数。A.0B.1C.2D.3答案:D14.友元访问类对象的成员时使用( )。A.类的成员名B.“this-&

6、gt;成员名”的形式C.“类名:成员名”的形式D.“对象名.成员名”的形式答案:D15.在一个无向图中,所有顶点的度之和等于图的边数的( )倍。A.1B.2C.3D.4答案:B16.在多继承中,公有派生和私有派生对于基类成员在派生类中的可访问性与单继承的规则()。A.完全相同B.完全不同C.部分相同,部分不同D.以上都不对答案:A17.用于类中虚成员函数说明的关键字( )。A.virtualB.publicC.protectedD.private答案:A18.在C+中,要实现动态联编,可以使用( )调用虚函数。A.类名B.派生类指针C.对象名D.基类指针答案:D19.read函数的功能是从输入

7、流中读取( )。A.一个字符B.当前字符C.一行字符D.指定若干个字符答案:D20.在一个单链表中,若pFirst指向链表的第一个结点,则在第一个结点前插入一个新结点s应执行( )。A.s->next=pFirst;pFirst->next=s;B.s->next=pFirst;pFirst=s;C.s->next=pFirst->next;pFirst=s;D.pFirst->next=s;s->next=pFirst;答案:B二、多选题 (共 15 道试题,共 30 分)21.下列说法中正确的是( )。A.一个成员函数在类体外定义,则该成员函数默认

8、是内联函数B.一个成员函数在类体中定义,则该成员函数默认是内联函数C.在类体外定义成员函数需要使用:运算符指明该成员函数属于哪个类D.类体外定义的成员函数默认为公有成员函数答案:AC22.下列的模板说明的头中,正确的是( )。A.templateB.templateC.templateD.template答案:AC23.基类中的保护成员可能是派生类的( )。A.public成员B.private成员C.protected成员D.友元成员答案:BC24.下面描述中,正确的是( )。A.在基类定义的public成员在公有继承的派生类中可见,也能在类外被访问B.在基类定义的public和protec

9、ted成员在私有继承的派生类中可见,在类外可以被访问C.在基类定义的public和protected成员在保护继承的派生类中可见D.在派生类中不可见的成员要变成可访问的,需要进行访问声明答案:ACD25.下面对构造函数的错误描述是( )。A.系统可以提供默认的构造函数B.构造函数可以有参数,所以可以有返回值C.构造函数不可以重载D.构造函数可以设置默认参数答案:BC26.用于输入输出的运算符包括( )。A.<<B.+C.->D.>>答案:AD27.下面关于自定义类的运算符重载的说法中,正确的是( )。A.可以根据需要重新定义重载的运算符的优先级和结合性B.重载运算

10、符的操作数个数不能改变C.运算符重载要求至少有一个运算数是自定义类型D.运算符重载有成员重载和友元重载两种形式答案:BCD28.下列关于函数模板的描述中,正确的是( )。A.函数模板和普通函数重载时,函数调用会优先调用符合要求的普通函数B.函数模板和普通函数重载时,函数调用会优先调用符合要求的函数模板C.函数模板的主要作用是减少可执行程序文件的尺寸D.函数模板的主要作用是简化程序编写答案:AD29.函数模板可以与()重载。A.函数模板B.普通函数C.类模板D.普通类答案:AB30.下列说法中正确的是( )。A.成员函数的声明必须放在类体中B.成员函数的声明可以放在类体中也可以放在类体外C.成员

11、函数的实现必须放在类体中D.成员函数的实现可以放在类体中也可以放在类体外答案:AD31.下列函数中,可以作为虚函数的是( )。A.普通成员函数B.构造函数C.静态成员函数D.析构函数答案:AD32.已知in是ifstream对象,则下列语句正确的是( )。A.in.seekg(5);B.in.seekg(5, ios:beg);C.in.seekg(5, ios:end);D.in.seekg(-5);答案:AB33.当类的继承方式为公有继承时,基类的()成员的访问属性在派生类中不变A.公有成员B.保护成员C.私有成员D.友元成员答案:AB34.下列描述正确的是( )。A.多态性是通过动态绑定

12、实现的B.多态性是通过静态绑定实现的C.动态绑定是在程序执行时进行绑定D.静态绑定是在程序执行时进行绑定答案:AC35.下面属于析构函数特征的是( )。A.析构函数可以重载B.对象销毁前会自动调用析构函数C.如果定义一个类时没有定义析构函数,则系统会提供一个默认析构函数()D.析构函数的函数类型为void答案:BC三、判断题 (共 15 道试题,共 30 分)36.由于顺序表示非完全二叉树时空间利用率较低,因此,二叉树的顺序表示在实际中应用不多。答案:正确37.线性表的链式存储结构是可以用不连续的的存储单元来存储线性表中的数据元素。答案:正确38.对象数组的元素可以是不同类的对象。答案:错误39.已知一棵二叉树的先序遍历序列和中序遍历序列可以唯一地构造出该二叉树。答案:正确40.一个抽象类的派生类可以用于创建对象。答案:错误41.可以在类的构造函数中对静态数据成员进行初始化。答案:错误42.从一个结点到其后继结点之间的连线称为一个分支;从一个结点X到另一个结点Y所经历的所有分支构成结点X到结点Y的路径;一条路径上的分支数目称为路径长度;从树的根结点到其他各个结点的最长路径长度称为树的路径长度。答案:错误43.有向图和无向图都有生成树答案:错误44.线性结构的数据在进行元素插入、删除等操作后可能会变成非线性结构。答案:错误45.一个静态成员函数无论是公

温馨提示

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

评论

0/150

提交评论