您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 2007年计算机等级考试二级C++笔试模拟试题(2)
全国计算机等级考试历年真题2007年计算机等级考试二级C++笔试模拟试题(2)一、选择题(每题2分,共计70分)1.已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历为A)GEDHFBCAB)DGEBHFCAC)ABCDEFGHD)ACBFEDHGABCD2.树是节点的集合,它的根节点数目是A)有且只有1B)1或多于1C)0或1D)至少2ABCD3.如果进栈序列为el,e2,e3,e4,则可能的出栈序列是A)e3,el,e4,e2B)e2,e4,e3,elC)e3,e4,e1,e2D)任意顺序ABCD4.在设计程序时,应采纳的原则之一是A)不限制goto语句的使用B)减少或取消注解行C)程序越短越好D)程字结构应有助于读者理解ABCD5.程序设计语言的基本成分是数据成分、运算成分、控制成分和A)对象成分B)变量成分C)语句成份D)传输成分ABCD6.下列叙述中,不属于软件需求规格说明书的作用的是A)便于用户、开发人员进行理解和交流B)反映出用户问题的结构,可以作为软件开发工作的基础和依据C)作为确认测试和验收的依据D)便于开发人员进行需求分析ABCD7.下列不属于软件工程的3个要素的是A)工具B)过程C)方法D)环境ABCD8.单个用户使用的数据视图的描述称为A)外模式B)概念模式C)内模式D)存储模式ABCD9.将E-R图转换到关系模式时,实体与联系都可以表示成A)属性B)关系C)键D)域ABCD10.SQL语言又称为A)结构化定义语言B)结构化控制语言C)结构化查询语言D)结构化操纵语言ABCD11.下面关于类和对象的描述中,错误的是A)类就是C语言中的结构体类型,对象就是C语言中的结构体变量B)类和对象之间的关系是抽象和具体的关系C)对象是类的实例,一个对象必须属于一个已知的类D)类是具有共同行为的若干对象的统一描述体ABCD12.以下各选项组中,均是C++语言关键字的组是A)publicoperatorthisB)shodstringstaticC)itwhile=D)privatecoutprintfABCD13.设inta=10,b=11,c=12;,表达式(a+b)c&&b==c的值是A)2B)0C)-2D)1ABCD14.下列描述正确的是A)表示mn为true或mn为true的表达式为mn&&mnB)switch语句结构中必须有default语句C)if语句结构中必须有else语句D)如果至少有一个操作数为true,则包含“‖”运算符的表达式为trueABCD15.下列语句中不是死循环的是A)inti=10;B)for(inti=1:i10;i++)while(1){}i--;i--;}if(i==1)break;}C)inti=0;D)inti=1;do{for(;;)i=i+1;i++;}while(i=0):ABCD16.下面关于break语句的描述中,不正确的是A)break可以用于循环体内B)break语句可以在for循环语句中出现多次C)break语句可以在switch语句中出现多次D)break语句可用于if条件判断语句内ABCD17.下面关于数组的描述错误的是A)在C++语言中数组的名字就是指向该数组第一个元素的指针B)长度为n的数组,下标的范围是0-n-1C)数组的大小必须在编译时确定D)数组只能通过值参数和引用参数两种方式传递给函数ABCD18.下面程序错误的语句是①#includeiostream.h②voidmain()③{④int*p=newint[1];⑤p=9;⑥cout*peddl;⑦delete[]p⑧}A)④B)⑤C)⑥D)⑦ABCD19.下面的哪个选项不能作为函数的返回类型?A)voidB)intC)newD)longABCD20.不能作为重载函数的调用的依据是A)参数个数B)参数类型C)函数类型D)函数名称ABCD21.下列程序的输出结果为#includeiostream.hintfunc(intn){if〔n1)return1;elsereturnn+tune(n-1):return0;}voidmain(){coutfunc(5)endl;A)0B)10C)15D)16ABCD22.在C++语言中,数据封装要解决的问题是A)数据的规范化B)便于数据转换C)避免数据丢失D)防止不同模块之间数据的非法访问ABCD23.以下程序中,错误的行是①#includeiostream.h②classA③{④public:⑤intn=2:⑥A(intval){coutvalendl;}⑦~A(){};⑧};⑨voidmain()⑩{⑩Aa(0);⑩}A)⑤B)⑥C)⑦D)⑩ABCD24.对类的构造函数和析构函数描述正确的是A)构造函数可以重载,析构函数不能重载B)构造函数不能重载,析构函数可以重载C)构造函数可以重载,析构函数也可以重载D)构造函数不能重载,析构函数也不能重载ABCD25.下面程序的运行结果为#include(iostream.hclassA{intnum;public:A(inti){num=i;}A(A&a){num=a.num++;}voidprint(){coutnum;}};voidmain(){Aa(1),b(a);a.print();b.print();A)11B)12C)21D)22ABCD26.下面对静态数据成员的描述中,正确的是A)静态数据成员是类的所有对象共享的数据B)类的每个对象都有自己的静态数据成员C)类的不同对象有不同的静态数据成员值D)静态数据成员不能通过类的对象调用ABCD27.如果类A被说明成类B的友元,则A)类A的成员即类B的成员B)类B的成员即类A的成员C)类A的成员函数不得访问类B的成员D)类B不一定是类A的友元ABCD28.可以用p.a的形式访问派生类对象P的基类成员a,其中a是A)私有继承的公有成员B)公有继承的私有成员C)公有继承的保护成员D)公有继承的公有成员ABCD29.建立派生类对象时,3种构造函数分别是a(基类的构造函数)、b(成员对象的构造函数)、c(派生类的构造函数)这3种构造函数的调用顺序为A)abcB)acbC)cabD)cbaABCD30.下面关于虚函数的描述,错误的是A)在成员函数声明的前面加上virtual修饰,就可把该函数声明为虚函数B)基类中说明了虚函数后,派生类中对应的函数也必须说明为虚函数C)虚函数可以是另一个类的友元函数,但不能是静态成员函数D)基类中说明的纯虚函数在其任何派生类中都必须实现ABCD31.下面关于模板的描述,错误的是A)函数模板和类模板的参数可以是任意的数据类型B)类模板不能直接使用,必须先实例化为相应的模板类.然后定义了模板类的对象后才能使用C)函数模板不能直接使用,需要实例化为模板函数后才能使用D)类模板的成员函数都是模板函数ABCD32.语句ofstreamf(”SALARY.DAT,ios::appiios::binary);的功能是建立流对象f,试图打开文件SAL:aRY.DAT并与之连接,并且A)若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件B)若文件存在,将其置为空文件;若文件不存在,打开失败C)若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件D)若文件存在,打开失败;若文件不存在,建立一个新文件ABCD33.下面程序的运行结果是#includeiostream.hvoidmain(){intnum=1;int&ref=num:ref=ref+2;cout(num;num=num+3;coutrefendl;}A)13B)16C)36D)33ABCD34.下面程序的运行结果是#includeiostream.hvoidfun(int*a,int*b){intx=*a*a=,b;*b=x;cout*a*b””;}voidmain(){intx=1,y=2;fun(&x,&y);coutxyendl;}A)1212B)1221C)2112D)2121ABCD35.下列程序的运行结果为#includeiostream.hinti=0;classA{public:A()}i++;}};voidmain(){Aa,b[3],*c;c=b:coutiendl;}A)2B)3C)4D)5ABCD二、填空题(每空2分,共计30分)1.数据结构分为逻辑结构与存储结构,线性链表属于【1】。输入答案,中间不含空格:2.在面向对象方法中,类之间共享属性和操作的机制称为【2】。输入答案,中间不含空格:3.耦合和内聚是评价模块独立性的两个主要标准.其中【3】反映了模块内各成份之间的联系。输入答案,中间不含空格:4.一个项目具有一个项目主管一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于【4】的联系。输入答案,中间不含空格:5.数据库设计分为以下6个设计阶段:需求分析阶段、【5】、逻辑设计阶段、物理设设计阶段、实施阶段、运行和维护阶段。输入答案,中间不含空格:6.开发一个C++语言程序的步骤通常包括编辑、【6】、链接、运行和调试。输入答案,中间不含空格:7.假设inta=1,b=2;则表达式a+++--b的值为【7】。输入答案,中间不含空格:8.下面程序的输出结果为【8】。#includeiostream.hvoidmain(){intnum=0,i=8;do{i--;num++;}while(--i):coutnumendl;}输入答案,中间不含空格:9.通过使用new和delete两个运算符进行的分配为【9】存储分配。输入答案,中间不含空格:10.下面程序的运行结果为【10】。#include(iostream.hvoidfun(intx=0,inty=0){coutxy;}voidmain(){fun(5);}输入答案,中间不含空格:11.在C++语言中,访问一个对象的成员所用的运算符是【11】,访问一个指针所指向的对象的成员所用的运算符是【12】。输入答案,中间不含空格:12.上一题【12】输入答案,中间不含空格:13.C++语言支持的两种多态性分别是编译时的多态性和【13】的多态性。输入答案,中间不含空格:14.重载的运算符保持其原有的【14】、优先级和结合性不变。输入答案,中间不含空格:15.cout.put('A');,还可以表示为【15】。输入答案,中间不含空格:序号您的答案正确答案得分1B02A03B04D05D06D07D08A09B010C011A012A013B014D015A016D017D018B019C020C021D022D023A024A025C026A027D028D029A030B031A032A033C034D035C036存储结构037继承038内聚039一对多040数据库概念设计阶段041编译04220434044动态04550046成员选择运算符(或”.”)047成员访问运算符(或”-”)048运行时049操作符个数050cout‘A’;0
本文标题:2007年计算机等级考试二级C++笔试模拟试题(2)
链接地址:https://www.777doc.com/doc-3080798 .html