求学快递网 计算机等级
发布资讯
您当前的位置:首页 > 计算机等级 > 2018年12月计算机二级C++提分练习题及答案(2)

2018年12月计算机二级C++提分练习题及答案(2)

上传时间: 2018-11-15 10:13:12 来源:用户上传
浏览量:773 评论数:0 举报
导读: 最新试题考后首发,并赠送最详细的答案解析,请广大考生密切关注求学考场公众号,或登录求学考场(http://ks.studyems.com/)免费做题。

  1.数据的存储结构是指(  )。

  A.数据所占的存储空间

  B.数据的逻辑结构在计算机中的存放形式

  C.数据在计算机中的顺序存储方式

  D.存储在计算机外存中的数据

  2.将E-R图转换到关系模式时,实体与实体间的联系可以表示成(  )。

  A.属性

  B.关系

  C.键

  D.域

  3.对长度为n的线性表进行顺序查找,在最坏情况下需要比较的次数为(  )。

  A.125

  B.n/Z

  C.n

  D.n+1

  4.树是结点的集合,它的根结点的数目是(  )。

  A.有且只有1个

  B.1或多于1

  C.0或1

  D.至少有2个

  5.设R是一个二元关系,S是一个三元关系,则下列运算中正确的是(  )。

  A.R-S

  B.R×S

  C.R∩S

  D.R∪S

  6.关于结构化程序设计原则和方法的描述错误的是(  )。

  A.选用的结构只允许有一个入口和一个出口

  B.复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现

  C.不允许使用GOTO语句

  D.语言中所没有的控制结构,应该采用前后一致的方法来模拟

  7.对关系S和R进行集合运算,结果中既包含S中的所有元组也包含R中的所有元组,这样的集合运算称为(  )。

  A.并运算

  B.交运算

  C.差运算

  D.积运算

  8.下列叙述中正确的是(  )。

  A.在面向对象的程序设计中,各个对象之间具有密切的关系

  B.在面向对象的程序设计中,各个对象都是公用的

  C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小

  D.上述三种说法都不对

  9.结构化程序设计的三种基本结构是(  )。

  A.过程、子程序和分程序

  B.顺序、选择和重复

  C.递归、堆栈和队列

  D.调用、返回和转移

  10.在数据库设计中,将E-R图转换为关系模式的过程属于(  )。

  A.需求分析阶段

  B.逻辑设计阶段

  C.概念设计阶段

  D.物理设计阶段

  11.在C++语言中函数返回值的类型是由(  )决定的。

  A.调用该函数时系统临时

  B.return语句中的表达式类型

  C.定义该函数时所指定的函数类型

  D.调用该函数时的主调函数类型

  12.下列描述正确的是(  )。

  A.表示m>n为true或mn&&m  B.switch语句结构中必须有default语句

  C.if语句结构中必须有else语句

  D.如果至少有一个操作数为true,则包含‖运算符的表达式为true

  13.使用ifstream流类定义流对象并打开磁盘文件时,文件的隐含打开方式为(  )。

  A.ios::in

  B.ios::out

  C.ios::inlios::out

  D.没有默认

  14.下列各类函数中,不是类的成员函数的是(  )。

  A.构造函数

  B.抽象类

  C.派生类

  D.以上都不对

  15.下面关于数组的初始化正确的是(  )。

  A.charstr[]={’a’,’b’,’e’}

  B.charstr[2]={’a’,’b’,’e’)

  C.charstr[2][3]={{’a’,’b’},{’C’,’d’},{’e’,’f’}}

  D.charstr()={’a’,’b’,’C’}

  16.类模板templateclassX{…},其中友元函数f对特定类型T(如int),使函数f(x)成为x模板类的友元,则其说明为(  )。

  A.friendvoidf();

  B.friendvoidf(x);

  C.friendvoidA::f();

  D.friendvoidC::f(x);

  17.类MyClass的定义如下:

  classMyClass

  {

  public:

  MyClass(){value=0;}

  SetVariable(inti){valtic=i;}

  private:

  intvalue;

  };

  MyClass*P,my;p=&my;

  则对下列语句序列正确的描述是(  )。

  A.语句p=&my;是把对象my赋值给指针变量P

  B.语句MyClass*P,my;会调用两次类MyClass的构造函数

  C.对语句*P.SetVariable(5)的调用是正确的

  D.语句P->SetVariable(5)与语句my.SetVariable(5)等价

  18.下面关于break语句的描述中,不正确的是(  )。

  A.break可以用于循环体内

  B.break语句可以在for循环语句中出现多次

  C.break语句可以在switch语句中出现多次

  D.break语句可用于if条件判断语句内

  19.如果表达式-x/y中的“--”和“/”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为(  )。

  A.operator/(x.operator--(),y);

  B.operator/(operator--(x),y);

  C.X.operator--().operator/(y);

  D.y.operator/(operator--(x));

  20.已知类A有公用数据成员a,并重载了=运算符,且有Aobj2;constA*ptr=newA;,则下列语句错误的是(  )。

  A.ptr->a=100;

  B.ptr=&obj2;

  C.ptr++;

  D.obj2=*ptr;

  1.B。【解析】数据的存储结构,又称为数据的物理结构,是数据的逻辑结构在计算机中的存放形式。数据的存储结构有顺序结构、链式结构、散列结构和索引结构等。

  2.B。【解析】将E-R图转换成指定RDBMS中的关系模式是数据库逻辑设计的主要工作。从E—R图到关系模式的转换是比较直接的,实体和联系都可以表示成关系。

  3.C。【解析】对线性表进行顺序查找时,从表中的第一个元素开始,将给定的值与表中逐个元素的关键字进行比较,直到两者相符,查找到所要找的元素为止。在最坏情况下,要查找的元素是表的最后一个元素或查找失败,这两种情况都需要将这个元素与表中的所有元素进行比较,因此比较次数为n。

  4.C。【解析】树具有明显的层次关系,即树是一种层次结构。在树结构中,根结点在第一层上。当树为非空时,树中有且只有一个根结点,当树为空时,树中根结点的数目为0。

  5.B。【解析】关系的交(∩)、并(∪)和差(-)运算要求两个关系是同元的,显然作为二元的R和三元的S只能做笛卡儿积运算。

  6.C。【解析】限制使用GOTO语句是结构化程序设计的原则和方法之一,但不是蕝对不允许使用GOTO语句。其他三项为结构化程序设计的原则。

  7.A。【解析】关系的并运算是指由结构相同的两个关系合并,形成一个新的关系,其中包含两个关系中的所有元组。

  8.C。【解析】面向对象的程序设计是用对象模拟问题领域中的实体,各对象之间相对独立,相互依赖性小,通过消息来实现对象之间的相互联系。

  9.B。【解析】程序的三种基本控制结构包括顺序、选择和重复(循环),这三种结构足以表达出各种其他形式的结构。

  10.B。【解析】数据库设计阶段主要包括需求分析、概念设计、逻辑设计和物理设计。其中逻辑设计的主要工作是将E-R图转换为关系模式。

  11.C。【解析】函数类型决定了函数返回值的类型。函数值返回类型可以由编译器自动完成类型转换。在函数有返回值的调用中,编译器将return后面的表达式的类型强制转换为该函数定义时指定的返回值类型。

  12.D。【解析】本题主要考查C++语言的基本语法,选项A中应该为m>n‖m  13.D。【解析】使用ifstream流类定义流对象并打开磁盘文件时,文件没有默认的打开方式。其中ios::in是为输入而打开;iso::out是为输出而打开。

  14.C。【解析】构造函数包括默认构造函数和拷贝构造函数等,析构函数和构造函数一样属于类的特殊的成员函数。而友元函数则是为了增加类的访问灵活性而允许其他类的成员函数或全局函数访问类的内部变量或成员函数的一种机制,其缺点是破坏了类的封装性。

  15.A。【解析】本题考查的是字符数组的初始化。选项B中用三个元素初始化大小为2的数组,越界了;选项C中应该是2行3列的数组,题中使用3行2列初始化;选项D中数组应用方括号。

  16.B。【解析】声明一个函数模板的格式template<模板形参表声明>函数声明。调用模板函数时,如果与模板实参中最后的若干个参数有关的信息可以从模板函数的实参中获得,则相关的模板实参可以省略。

  17.D。【解析】语句p=&my;是把对象my的地址值赋给指针变量P。语句MyClass*P,my;,由于P只是一个指向对象的指针,因此定义指针P不调用构造函数,所以此语句只调用一次构造函数。对成员函数的引用可以通过两种形式:指针->成员函数(形参表)或者对象名.成员函数名(形参表)。

  18.D。【解析】本题考查break语句的使用。break可以结束switch语句和for循环语旬,但是不能使用在条件判断语句内。

  19.B。【解析】本题考核运算符的重载。假定已经作为某个类的成员函数重载了二元运算符+,且c1、c2都是该类的对象,则c1.operator+(c2)与c1+c2含义相同。如果+作为该类的非成员函数重载,则operator+(c1,c2)与c1+c2含义相同。同理,运算符“/”作为友元函数重载,则(--x)/y与表达式operator/((…x),y)相同。前缀运算符“--”作为友元函数重载,则--x与operator--(x)相同,所以组合起来是operator/(operator--(x),y);,即B选项。

  20.A。【解析】本题考查const修饰符的作用。注意,const位置不同,其修饰的部分也是不同的。本题中const修饰的是ptr所指的对象本身,所以,ptr可以重新指向新的对象,而ptr->a则无法被更新。


赞(66 不喜欢(0 收藏
免责声明 : 本站为免费网络服务提供商,为注册用户提供免费信息存储空间服务,网站所有信息均为用户自行发布并由用户承担相应法律责任,本站不对用户发布的信息进行修改及审核,不对发布信息的真实性及合法性负责,如涉及侵权或者信息违法的请你及时与本站联系进行删除以保障你的合法权益。详情可阅读本站免责声明

相关推荐:

发表评论 用户评价仅供其表达个人意见,与本站无关

还可以输入235个字

最热评论

new 最新评论

大家都在看
>

建议反馈表

非常感谢您给我们提出的问题或建议,我们会尽快处理! ×

反馈类型:

问题描述:

您的联系方式:

客服电话:020-2986-0669

×
投诉举报
选择举报类型
×
投诉举报
填写并确认举报信息
为了确保问题能及时得到处理,请务必保证您提交的信息真实有效、清晰完整

*举报理由:

*举报描述:

截图证明:

×
投诉举报
填写并确认举报信息
为了确保问题能及时得到处理,请务必保证您提交的信息真实有效、清晰完整

*举报描述:

*原文链接:

联系方式:

截图证明:

×
投诉举报

当您发现本站有涉及个人的侵权内容时,建议您先尝试与当事人沟通解决问题。 如果您无法联系到当事人,您可通过此渠道提交举报诉求。

根据求学快递网侵权举报规范,您需要向我们提交您的个人信息,其中包括身份证明。如您确认已准备齐全,可点击下方按钮进入诉求提交页。

如果您举报的仅仅是辱骂等不友善内容,无需提交证明资料,可返回上一步点击【包含有害内容>辱骂、歧视、挑衅和诽谤等不友善信息】直接举报。
×
投诉举报

当您发现本站有涉及企业的侵权内容时,建议您先尝试与当事人沟通解决问题。 如果您无法联系到当事人,您可通过此渠道提交举报诉求。

根据求学快递网侵权举报规范,您需要向我们提交您企业和个人的证明材料。如您确认已准备齐全,可点击下方按钮进入诉求提交页。

如果您举报的仅仅是辱骂等不友善内容,无需提交证明资料,可返回上一步点击【包含有害内容>辱骂、歧视、挑衅和诽谤等不友善信息】直接举报。
×
投诉举报
填写并确认举报信息
为了确保问题能及时得到处理,请务必保证您提交的信息真实有效、清晰完整

*举报理由:

举报描述:

截图证明: