【计算机类职业资格】计算机二级(C++)28及答案解析.doc
《【计算机类职业资格】计算机二级(C++)28及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】计算机二级(C++)28及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、计算机二级(C+)28 及答案解析(总分:1765.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:25,分数:1750.00)1.可以用 p.a 的形式访问派生类对象 p 的基类成员 a,其中 a 是( )。(分数:70.00)A.纵栏式报表B.表格式报表C.图表报表D.标签报表2.下面关于运算符重载的描述错误的是( )。(分数:70.00)A.运算符重载不能改变操作数的个数、运算符的优先级、运算符的结合性和运算符的语法结构B.不是所有的运算符都可以进行重载C.运算符函数的调用必须使用关键字 operatorD.在 C+语言中不可通过运算符重载创造出新
2、的运算符3.以下都是 C+语言标识符的是( )。(分数:70.00)A.dsfa,df4,f$B.huhj,a,k2C.3k,h,j_9D._ok,jk,k84.对于下面的程序,说法正确的是( )。 #includeiostreamh void main( ) int x=3,y=4,z=2; if(X=y+z) cout “x=y+Z“; else cout“x!=y+Z“; (分数:70.00)A.不能通过编译B.输出 6C.输出 x! =y+zD.输出 x=y+z5.若二维数组 a 有 m 列,则计算任一元素 a i j 在数组中相对位置的公式为( )。 (假设 a0)0位于数组的第一个
3、位置上)(分数:70.00)A.i*m+jB.j*m+iC.i*m+j-1D.i*m+j+16.表达式 10 5 &6%3 的值是( )。(分数:70.00)A.-1B.非零值C.0D.17.下面程序错误的语句是( )。 #include“ iostreamh“ void main( ) int A=0; int & B; B=A; cout B; cout A; (分数:70.00)A.a=InputBox( )B.a=InputBox(“请输入一个值”)C.a=Val(InputBox(“请输入一个值”)D.a=Val(InputBox( ) )8.下列关于虚基类的描述,错误的是( )。(
4、分数:70.00)A.设置虚基类的目的是为了消除二义性B.虚基类的构造函数在非虚基类之后调用C.若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用D.若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数9.所有在函数中定义的变量,连同形式参数,都属于( )。(分数:70.00)A.全局变量B.局部变量C.静态变量D.寄存器变量10.有以下程序 #include“iostream.h“ void main( ) int i=1,j=1,k=2; if( (j+|k+)&i+) cout i “,“ j “,“ k; cout end1; 执行后输出结果是(
5、 )。 (分数:70.00)A.AAAAAAB.LLLLLLC.CCCCCCD.99999911.下列关于虚基类的描述,错误的是( )。(分数:70.00)A.SELECT * FROM 订购单 WHERE 供应商号 NULLB.SELECT * FROM 订购单 WHERE 供应商号=NULLC.SELECT * FROM 订购单 WHERE 供应商号 IS NULLD.SELECT * FROM 订购单 WHERE 供应商号 IS NOT NULL12.如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是( )。(分数:70.00)A.一元运算符B.二元运算符C.选项 A)
6、和选项 B)都可能D.重载错误13.一个函数功能不太复杂但要求被频繁调用,应选用( )。(分数:70.00)A.SET PROGRAM TOB.SET FUNCTION TOC.SET ROUTINE TOD.SET PROCEDURE TO14.下面程序的结果是( )。 #include“ iostreamh“ void main( ) char * str; Str=“test!“; cout str5; (分数:70.00)A.程序错误B.!C./0D.为空字符15.下列关于运算符重载不正确的是( )。(分数:70.00)A.throwsB.throwC.ThrowableD.Excep
7、tion16.下列程序的输出结果为( )。 # include iostreamh void main( ) char * a =“hello“,“the“,“world“; char * * pa=a; pa +; cout * pa endl; (分数:70.00)A.在 PROG1prg 中用!RUN PROG2prg 语句可以调用 PROG2prg 子程序B.在 PROG2prg 中用 RUN PROG3prg 语句可以调用 PROG3prg 子程序C.在 PROG3prg 中用 RETURN 语句可以返回 PROG1prg 主程序D.在 PROG3prg 中用 RETURN TO M
8、ASTER 语句可以返回 PROG1prg 主程序17.与 y=(x0? 1:x0? -1:0);的功能相同的 if 语句是( )。(分数:70.00)A.字符串 a 的长度B.字符串 b 的长度C.字符串 a 和 b 的长度之差D.字符串 a 和 b 的长度之和18.以下哪个不是 C+语言中的有效标识符?(分数:70.00)A.表中不允许出现相同的行B.表中不允许出现相同的列C.表中的行次序可以交换D.表中的列次序不可以交换19.以下程序的运行结果是( )。 #includeiostreamh void sub(int x,int y,int *z) *z=y-x; void main( )
9、 int a,b,c; sub(10,5,&A) ; sub(7,a,&B) ; sub(a,b,&C) ; cout a “,“ b “,“ c end1; (分数:70.00)A.5,2,3B.-5,-12,-7C.-5,-12,-17D.5,-2,-720.下列描述中错误的是( )。(分数:70.00)A.派生类可以作为基类派生其他的子类B.派生类继承基类的所有数据成员C.派生类可以有多个基类D.派生类不能继承一些函数成员21.对类的构造函数和析构函数描述正确的是( )。(分数:70.00)A.构造函数可以重载,析构函数不能重载B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,
10、析构函数也可以重载D.构造函数不能重载,析构函数也不能重载22.可以用 p.a 的形式访问派生类对象 p 的基类成员 a,其中 a 是( )。(分数:70.00)A.私有继承的公有成员B.公有继承的私有成员C.公有继承的保护成员D.公有继承的公有成员23.下列程序的运行结果是( )。 # include iostreamh class A int a; public: A( ) a=0; A(int aa) a=aa; cout a+; ; void main( ) A x,y (2),z(3); cout endl; (分数:70.00)A.TextB.LengthC.SeltextD.Se
11、lStart24.以下 C+语言中用于单行注释的是( )。(分数:70.00)A.继承性B.功能分解,逐步求精C.封装性和信息隐藏D.多态性25.下面关于数组的初始化正确的是( )。(分数:70.00)A.char str :a,b,cB.char str2=a,b,cC.char str23=a,b,c,d,e,fD.char str( )=a,b,c26.下面不属于软件设计原则的是( )。(分数:-1.00)A.抽象B.模块化C.自底向上D.信息隐蔽27.栈通常采用的两种存储结构是( )。(分数:-1.00)A.线性存储结构和链表存储结构B.散列方式和索引方式C.链表存储结构和数组D.线性
12、存储结构和非线性存储结构28.下列有关数据库的描述,正确的是( )。(分数:-1.00)A.数据库是一个 DBF 文件B.数据库是一个关系C.数据库是一个结构化的数据集合D.数据库是一组文件29.下列关系运算的叙述中,正确的是( )。(分数:-1.00)A.投影、选择、连接是从二维表行的方向进行的运算B.并、交、差是从二维表的列的方向来进行运算C.投影、选择、连接是从二维表列的方向进行的运算D.以上 3 种说法都不对30.链表不具有的特点是( )。(分数:-1.00)A.不必事先估计存储空间B.可随机访问任一元素C.插入删除不需要移动元素D.所需空间与线性表长度成正比31.下列不属于结构化分析
13、的常用工具的是( )。(分数:-1.00)A.数据流图B.数据字典C.判定树D.PAD 图32.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段 其中数据独立性最高的阶段是 ( )。(分数:-1.00)A.数据库系统B.文件系统C.人工管理D.数据项管理33.数据处理的最小单位是( )。(分数:-1.00)A.数据B.数据元素C.数据项D.数据结构34.下列叙述中,不属于结构化程序设计方法的主要原则的是( )。(分数:-1.00)A.自顶向下B.由底向上C.模块化D.限制使用 goto 语句35.下列叙述中,不属于结构化程序设计方法的主要原则的是( )。(分数:-1
14、.00)A.自顶向下B.由底向上C.模块化D.限制使用 goto 语句三、填空题(每空 2 分,共 30 分)(总题数:10,分数:30.00)36.已知程序的结果为 123,请填空。 #includeiostream.h templateclassT classA public: Tx,y,z; voiddisplay( )coutx“y“z; ; voidmain( ) Aintal; 1 2 3 al.display( ); (分数:3.00)填空项 1:_37.下列程序段的输出结果是 1。 coutfixed509.123456789endl; (分数:3.00)填空项 1:_38.常
15、数据成员和静态数据成员在使用前共同的要求是要进行 1。(分数:3.00)填空项 1:_39. 1 是 C+语言程序的入口。(分数:3.00)填空项 1:_40.下列 for 语句的循环次数为 1。 for(int a=0,b=1;b&a填空项 1:_41. 以下程序的输出结果是 1。 #includeiostreamh class object private: int va1; public: object2; object(int i) object3; ; object:Object4 va1=0; cout “Default constructor for object“ end1;
16、object:object(int i) va1=i cout “Constructor for object“ va1 end1; object:object5 cout “Destructor for object“ va1 end1; class container private: object one; object two; int data; public: container6; container(int i,int j,int k); container7; ; container:container8 data=0; cout “Default constructor f
17、or container“ end1; container:container(int i,int j,int k):two(i),one(j) data=k; cout “Constructor for container“ end1; container:container9 cout “Destructor for container“ end1; void main10 container anObj(5,6,10); (分数:3.00)填空项 1:_42.常数据成员和静态数据成员在使用前共同的要求是要进行 1。(分数:3.00)填空项 1:_43.C+语句 const char *
18、const p= “hello“;,所定义的指针 p 和它所指的内容都不能被 1。(分数:3.00)填空项 1:_44.一个 C+语言程序的开发步骤通常包括编辑、 1、链接、运行和调试。(分数:3.00)填空项 1:_45.语句 int * i;i=new int 10;,释放指针 i 的语句是 1。(分数:3.00)填空项 1:_46.当数据的物理结构(存储结构、存取方式等)改变时,不影响数据库的逻辑结构,从而不至于引起应用程序的变化,这是指数据的 1。 (分数:-1.00)填空项 1:_47.数据模型按不同应用层次分成 3 种类型,它们是概念数据模型、 1 和物理数据模型。(分数:-1.0
19、0)填空项 1:_48.在树结构中,树根结点没有 1。(分数:-1.00)填空项 1:_49.数据的逻辑结构有线性结构和 1 两大类。(分数:-1.00)填空项 1:_50.用的黑箱测试有等价分类法、 1、因果图法和错误推测法 4 种。(分数:-1.00)填空项 1:_计算机二级(C+)28 答案解析(总分:1765.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:25,分数:1750.00)1.可以用 p.a 的形式访问派生类对象 p 的基类成员 a,其中 a 是( )。(分数:70.00)A.纵栏式报表 B.表格式报表C.图表报表D.标签报表解析:如
20、果在返回语句中加入了选项 TO MASTER,那么在执行程序嵌套时,它们的返回次序将被改变。子程序 3 中加入选项 TO MASTER,则它们的返回次序将是由子程序 2 直接返回到主程序,并不是按子程序3,2,1 的次序再返回到主程序。2.下面关于运算符重载的描述错误的是( )。(分数:70.00)A.运算符重载不能改变操作数的个数、运算符的优先级、运算符的结合性和运算符的语法结构B.不是所有的运算符都可以进行重载C.运算符函数的调用必须使用关键字 operator D.在 C+语言中不可通过运算符重载创造出新的运算符解析:例如“: :”运算符就不能被重载;通过重载可以创造新的运算方 式,但是
21、不能臆造新的运算符;定义的时候必须使用关键字 operator,而调用时可直接使 用运算符。3.以下都是 C+语言标识符的是( )。(分数:70.00)A.dsfa,df4,f$B.huhj,a,k2C.3k,h,j_9D._ok,jk,k8 解析:C+语言标识符只能由数字,字母和下划线组成,并且只能以字母和下划线为开头。4.对于下面的程序,说法正确的是( )。 #includeiostreamh void main( ) int x=3,y=4,z=2; if(X=y+z) cout “x=y+Z“; else cout“x!=y+Z“; (分数:70.00)A.不能通过编译B.输出 6C.
22、输出 x! =y+zD.输出 x=y+z 解析:解答本题关键是要理解 if 后面的括号里的是赋值语句而并非关系判断,赋完值后 x 不等于零,C+语言里非零都作真处理,所以输出结果为“x=y+z”,故答案为选项 D),注意“=”与“=”的区别。5.若二维数组 a 有 m 列,则计算任一元素 a i j 在数组中相对位置的公式为( )。 (假设 a0)0位于数组的第一个位置上)(分数:70.00)A.i*m+j B.j*m+iC.i*m+j-1D.i*m+j+1解析:oij元素之前有 i 行元素(每行有 m 个元素),在 aij的前面还有 j 个元素,因此 aij之前共有 i * m+j 个元素。
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C28 答案 解析 DOC
