2015年全国计算机等级二级C上机考试冲刺试题1_第1页
2015年全国计算机等级二级C上机考试冲刺试题1_第2页
2015年全国计算机等级二级C上机考试冲刺试题1_第3页
2015年全国计算机等级二级C上机考试冲刺试题1_第4页
2015年全国计算机等级二级C上机考试冲刺试题1_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

A 、 1:1联系 B 、 1:m联系 C 、 m:1联系 D 、 m:n联系 A 、 25 B 、 36 C 、 258 D 、 369 A 、 各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 B 、 各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续 C 、 进行插入与删除时,不需要移动表中的元素 D 、 以上说法均不正确 A 、 如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数 B 、 如果没有定义缺省的构造函数,编译器一定将生成一个缺省的构造函数 C 、 如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数 D 、 如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数 全真机考、在线考试、每日一练、评估报告,最专业全面的题库,尽在233网校题库! 2015年全国计算机等级二级年全国计算机等级二级C+上机考试冲刺试题上机考试冲刺试题(1) 一、选择题一、选择题(每小题每小题1分,共分,共40分分) 1、 一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是( )。 2、Tilil程序的运行结果是( )。 #include void main() int i=1: while(i=8) if(+i%3 1=2)continue: else couti; 3、 下列关于线性链表的叙述中,正确的是( )。 4、 对于一个类定义,下列叙述中错误的是( )。 答案: D 解析: 因为一个教师可讲授多门课程,而一门课程又能由多个老师讲授,所以他们之问是多对多的关系,可以表示为m:n。 答案: C 解析:应该先做+运算,然后进行运算,最后比较不等式,实际上最后输出的结果就是被3除,余数为2的不大于8的数。 答案: C 解析: 一般来说,在线性表的链式存储结构中,各数据结点的存储序号是不连续的,并且各结点在存储空间中的位置关系与逻辑关系也不一致。线性 链表中数据的插入和删除都不需要移动表中的元素,只需改变结点的指针域即nr。 答案: B 解析: 本题考查构造函数和复制构造函数,如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数,如果已经定义了构造函 数和拷贝构造函数,编译器不会生成任何构造函数。如果没有定义拷贝构造函数,编泽器将生成一个拷贝构造函数。 A 、 public B 、 protected C 、 private D 、 static A 、 运算符函数的名称总是以operator为前缀 B 、 运算符函数的参数可以是对象 C 、 运算符函数只能定义为类的成员函数 D 、 在表达式中使用重载的运算符相当予调用运算符重载函数 A 、 12345ABCDE B 、 EDCBA54321 C 、 ABCDEl2345 D 、 5432lEDCBA A 、 人工管理阶段 B 、 文件系统阶段 C 、 数据库系统阶段 D 、 三个阶段相同 5、 为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为( )。 6、下列关于运算符函数的描述中,错误的是( )。 7、 一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是( )。 8、 在数据管理技术发展的三个阶段中,数据共享最好的是( )。 9、 下面程序的运行结果为( )。 #include void main() char a=3: switch(8) case 3:cout”3”: case 2:cout”2”;break; default:cout”l”; 答案: A 解析: 本题考查点为类成员的访问权限,public关键字修饰的类成员可以被类的对象通过成员操作符“”直接访问,protected和private则不能,而static 不能单独修饰类的成员, 答案: C 解析:运算符函数可以定义为类的友元函数所以C选项错误。 答案: B 解析: 栈是先进后出的原则组织数据,所以入栈最早的最后出栈,所以选择B。 答案: C 解析: 数据管理发展至今已经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。其中最后一个阶段结构简单,使用方便逻辑性强物理 性少,在各方面的表现都最好,一直占据数据库领域的主导地位,所以选择c。 A 、 3 B 、 321 C 、 31 D 、 32 A 、 内模式 B 、 概念模式 C 、 外模式 D 、 设计模式 A 、 16 B 、 10 C 、 6 D 、 4 A 、 Nol B 、 N01 C 、 12345 D 、 int A 、 有的运算符可以作为非成员函数重载 B 、 所有的运算符都可以通过重载而被赋予新的含义 C 、 不得为重载的运算符函数的参数设置默认值 D 、 有的运算符只能作为成员函数重载 10、 数据库设计中反映用户对数据要求的模式是( )。 11、一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为( )。 12、 下列( )是C+语言的有效标识符。 13、 下列关于运算符重载的叙述中,错误的是( )。 答案: D 解析: 本题主要考查的是switeh语句的使用,在第一个ease处,因为满足条件所以输出字符3,但这个分支没有break语句终1E,所以会继续执行下面的 分支语句,即输出字符2,这时出现break语句,结束整个语句,即输出32。 答案: C 解析: 数据库系统的三级模式是概念模式、外模式和内模式。概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。外模式 也称予模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述,所以选择C。内模式又称物理模式,它给出了数据库物理存储结构与 物理存取方法。 答案: A 解析:根据二叉树的性质3:在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个,所以本题中度为2的结点是5-1=4个,所以度为1的结 点的个数足2554=16个。 答案: A 解析: 标识符是一个以字母或下画线开始的,由字母、下画线和数字组成的字符串,标识符不能与任意关键字同名。 答案: B 解析: 重载运算符的规则如卜:c+不允许用户自己定义新的运算符,只能对已有的c+运算符进行重载:c+不能重载的运算符只有5个;莺 载不能改变运算符运算对象的个数;重载不能改变运算符的优先级和结合性;霞载运算符的函数不能有默认的参数;重载的运算符必须和用户 定义的自定义类型的对象一起使用至少应有一个是类对象,即不允许参数全部是c+的标准类型。所以答案为B。 A 、 栈按“先进先出”组织数据 B 、 栈按“先进后出”组织数据 C 、 只能在栈底插入数据 D 、 不能删除数据 A 、 市场调研 B 、 需求分析 C 、 软件测试 D 、 软件维护 A 、 静态数据成员是类的所有对象共享的数据 B 、 类的每个对象都有自己的静态数据成员 C 、 类的不同对象有不同的静态数据成员值 D 、 静态数据成员不能通过类的对象调用 A 、 编译程序 B 、 操作系统 C 、 教务管理系统 D 、 汇编程序 A 、 软件测试的目的是发现错误并改正错误 B 、 对被调试的程序进行“错误定位”是程序调试的必要步骤 C 、 程序调试通常也称为Debug D 、 软件测试应严格执行测试计划,排除测试的随意性 A 、 己录长度 14、 F列关于栈的叙述正确的是( )。 15、 软件生命周期中的活动不包括( )。 16、 下面对静态数据成员的描述中,正确的是( )。 17、 软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。 18、下面叙述中错误的是( )。 19、 层次型、网状型和关系型数据库划分原则是( )。 答案: B 解析: 栈是按“先进后出”的原则组织数据的,数据的插入和删除都在栈顶进行操作。 答案: A 解析: 软件生命周期可以分为软件定义、软件开发与软件运行维护三个阶段。主要活动阶段是:可行性研究与计划阶段,需求分析,软件设计,软件 实现,软件测试,运行和维护,所以选择A。 答案: A 解析: 静态数据成员是类的所有对象中共享的成员,而不是某个对象的成员。 答案: C 解析: 编泽软件、操作系统、汇编程序都属于系统软件,只有c教务管理系统才是应用软件。 答案: A 解析:软件测试的目的是为了发现错误而执行程序的过程,并不涉及改正错误所以选项A错误。程序调试的基本步骤有:错误定位、修改设计和代 码,以排除错误、进行回归测试,防止引进新的错误。程序调试通常称为Debug,即排错。软件测试的基本准则有:所有测试都应追溯到需求、严格执 行测试计划,排除测试的随意性、充分注意测试中的群集现象、程序员应避免检查自己的程序、穷举测试不可能、妥善保存测试计划等文件。 B 、 文件的大小 C 、 联系的复杂程度 D 、 数据之间的联系方式 A 、 2,3 B 、 3,2 C 、 2,2 D 、 3,3 A 、 val=10 Const:val=20 B 、 Const:val=10 Const:val=20 C 、 Const:val=10 val=20 D 、 val=10 val=20 A 、 一对一 B 、 一对多 C 、 多对多 D 、 多对一 20、 下面程序的运行结果为( )。 #include void swap(inta,int B int temp; temp=a+: a=b: b=temp; void main() im a=2,b=3; swap(a,B; eouta”,”bendl; 21、 有如下程序: #inClude using namespaCe std; Class MyClass publiC: MyClass(int X):val(X) void Print()Consttout”Const:val=”valt; void Print()tout”val=”valt; private: int val; ; int main() Const MyClass objl(10); MyClass obj2(20); objlPrint(); obj2Print(); retum 0; 执行这个程序的输出结果是( )。 22、 一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间 的联系是( )。 答案: D 解析: 层次模型的基本结构是树形结构,网状模型是一个不加任何条件限制的无向图,关系模型采用二维表来表示,所以三种数据库的划分原则是数 据之间的联系方式。 答案: D 解析: 本题考查的是引用调用,因为函数swap01用调用参数a,所以在swap函数中a的变化会改变主函数中a的值,即a自加l,但b的值并未改变。 答案: C 解析: 本题考查常对象、常成员函数及构造函数。常对象只能调用常成员函数,普通对象调用普通成员函数。所以本题中obj1为常对象,执行 obj1print()后,会执行常构造函数,输出const:val=10;而obj2为普通对象,执行obj2print()时,会执行默认构造函数,输出va1=20。放答案为C。 A 、 5 0 6 4 B 、 0 0 6 4 C 、 5 0 6 2 D 、 0 0 6 2 A 、 11 23、下列程序的运行结果是( )。 #include class Loeation private: int X,Y; public: void init(int=0,int=0); void valueX(int val)X=val; int valueX()returnx; void valueY(int val)Y=val; int valueY()return Y; void Location:init(int initX,int initY) X=initX; Y=initY4 void main(X Location A,B; A.init(); B.value X(5); coutAvalue X()endlA.value Y()endl; B.init(6,2); B.value Y(4); eoutBvalue X()endlB.value Y()endl; 24、 下面程序的运行结果为( )。 #include class A static int n; public: A()n=1; A(int num)n=hum; void print()coutn; : int A:n=2; void main() A a,b(3); aprint(); bprint(); coutendl: 答案: C 解析: 因为一个人可以操作多个计算机,而一台计算机又可以被多个人使用,所以两个实体之问是多对多的关系。 答案: B 解析:本题中有成员函数和它的重载函数,要注意它们的不同,在本题中先调用了init函数,初始化了x、Y,都为0,valueX(5);又将x变为5,所以输出 5和0,然后初始化init(6,2),接着又valueY(4);将x、Y设为6和4,所以输出6和4。 B 、 13 C 、 23 D 、 33 A 、 数据定义语言 B 、 数据管理语言 C 、 数据操纵语言 D 、 数据控制语言 A 、 枚举常量YELLOW的值为1 B 、 枚举常量RED的值为6 C 、 枚举常量BLACK的值为10 D 、 枚举常量WHITE的值为1 25、 负责数据库中查询操作的数据库语言是( )。 26、 已知枚举类型声明语句为: enum COl,ORWHITE,YELLOW,GREEN=5,RED,BLACK=10; 则下列说法中错误的是( )。 27、 有如下程序: #include using namespace std; class Base public: void funl()cout”Basen”; virtual void fun2()eout”Basen”; ; class Derived:public Base public: void funl()eout”Derived、n”; void fura()eout(istream&is,MyClass&A; B 、 friend istream&operator(istream&is,MyClass A; C 、 istream&operator(istream&is,MyClass&A; D 、 istream&operator(istream&is,MyClass A; 31、 在公有继承的情况下,允许派生类直接访问的基类成员包括( )。 32、 有三个关系R、S和T如下: 由关系R和S通过运算得到关系T,则所使用的运算为( )。 33、有如下类定义: class MyClass public: private: _ int data; ; 若要为MyClass类重载流输入运算符“”,使得程序中可以“cinobj;”的形式改变MyClass类的对象0bj中数据成员data的值,则横线 处的声明语句应为( )。 答案: C 解析: 本题考查公用继承和保护继承对基类成员的访问属性。公用继承中,基类的公用成员和保护成员在派生类中保持原有访问属性,其私有成员仍 为基类私确、保护成员不能被类外访问,但是可以被派生类的成员函数访问。Type 成为派生类的保护成员,可以被派生类访问,title仍为基类私有, 派生类不能直接访问。所以答案为c。 答案: B 解析: 本题考查公用继承对基类成员的访问属性。在公用继承中,基类的公用成员和保护成员在派生类中保持原有的访问属性,其私有成员仍为基类 私有。所以本题答案为B。 答案: D 解析: 自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,所以根据T关 系中的有序组可知R与s进行的是自然连接操作。 答案: A 解析:本题考查重载流运算符“”,根据重载规则,本题答案为A。 A 、 120 B 、 16 C 、 154 D 、 34 A 、 Char*Category( ); B 、 Char*Category( )Const; C 、 virtual Char*Category( )Const; D 、 virtual Char*Category( )Const=0; 34、 有如下程序: #inClude using namespaCe std; Class Sample friend long fun(Sample S); publiC: Sample(10ng Ax=a; private: long X; ; long fun(Sample S) if(Sx2)return l; return SX*fun(Sample(sx-1); int main( ) int sum=0; for(int i=0;i6;i+) sum+=fun(Sample(i); Coutsum: return 0; 执行这个程序的输出结果是( )。 35、 有如下程序: #inClude using namespaCe std; Class Book publiC: Book(Char*t=”)strCpy(title,t); private: Char titlel40; ; Class Novel:publiC Book publiC: Novel(Char*t=”):Book(t) Char*Category( )Constreturn”文学”; ; int main( ) Book * pb; pb=new Novel( ); CoutpbCategory( ); delete pb; return 0; 若程序运行时输出结果是“文学”,则横线处缺失的语句是( )。 36、 有如下头变件: int f1() StatiCintf2( ); Class MA publiC: intf3(); 1statiC int f4(); ; 在所描述的函数中,具有隐含的this指针的是( )。 答案: C 解析: 本题考查默认构造函数,当i=0、1时,fun(Sample(i)为1;当i=2时,fun(Sample(i)1为2;当i=3时,fun(Sample(i)为6;当i=4时,fun(Sample(i)为 24;当i=5时,fun(Sample(i)为120。所以总和为l54 答案: D 解析: 本题考查纯虚函数和抽象类,纯虚函数是在声明虚函数时被“初始化”为0的函数,包含纯虚函数的类为抽象类,抽象类足不能被实例化的,但是 可以定义指向抽象类数据的指针变量,当派生类成为具体类后,就可以用这种指针指向派生类的对象,然后通过该指针调用虚函数,实现多态性的操 作。所以本题答案为D。 A 、 fl B 、 f2 C 、 B D 、 f4 A 、 静态数据成员可以在类体内进行初始化 B 、 静态数据成员不可以被类的对象调用 C 、 静态数据成员不能受private控制符的作用 D 、 静态数据成员可以直接用类名调用 A 、 2 B 、 0 C 、 -2 D 、 1 A 、 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方 B 、 内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方 C 、 类的内联函数必须在类体内定义 D 、 类的内联函数必须在类体外通过加关键字inline定义 A 、 友元函数的实现必须在类的内部定义 B 、 友元函数是类的成员函数 C 、 友元函数破坏了类的封装性和隐藏性 D 、 友元函数不能访问类的私有成员 37、下面对静态数据成员的描述中,正确的是( )。 38、 设int a=10,b=11,C=12;,表达式(a+BC&b=C的值是( )。 39、 下列说法正确的是( )。 40、 下面对于友元函数描述正确的是( )。 二、基本操作题二、基本操作题(18分分) 41、请使用VC6或使用【答题】菜单打开考生文件夹projl下的工程projl,此工程中含有一个源程碍文件 projlepp。其中位于每个注 释“/ERROR *found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: ConstruCtor Called The value is 10 答案: C 解析: 只有类的非静态成员函数才隐禽this指针,其作用域是类内部,当类的非静态成员函数中访问类的非静态成员时,编译器会自动将对象本身的地 址作为一个隐含参数传递给函数,而不必一定写上this。所以本题答案为c。 答案: D 解析:静态数据成员必须在类体外初始化,它是类的所有对象的共有成员,需要使用类名调用,静态数据成员的初始化与权限控制无关。 答案: B 解析: 本题考查的是运算符的优先级,应该先计算a+b的值为21,然后与C比较大小的值为0,根据“”的运算规则,整个表达式的值为0。 答案: B 解析: 本题考查的是内联函数的定义,引入内联函数是为了解决程序中函数调用的效率问题,是以目标代码的增加为代价换取时间的节省;一般函数 在运行时被调用,而调用的内联函数在编译时就被替代了,如果不加inline关键字,则编译器会将在类说明部分定义的任何函数都被认定为内联函数。 答案: C 解析: 友元函数的定义既可以在类内部进行,也可以在类外部进行。它提高了程序的运行效率,但破坏了类的封装性和隐藏性,使得类的非成员函数 可以访问类的私有成员。 Copy ConstruCtor Called The value is 10 DestruCtor Called DestruCtor Called 注意:只修改注释“/ERROR *found*”的下一行语句,不要改动程序中的其他内 容。 /pwjlCpp #inClude using namespaCe std; Class MyClass publiC: /ERROR*found* MyClass(int i) value=i;Cout”ConstruCtor Called” endl; /ERROR*found* MyClass(eonst MyClass P) value = Pvalue; eout”Copy ConstruCtor Called”endl; void Print() Cout”The value is” valueendl; /ERROR*found* void-MyClass() Cout”DestruCtor Called”name,nanle); /*found* const char*getName()constreturn name;/返回部门名称 /*found* const char*getOffice()const_ /返回办公室房号 void changeOfficeTo(const char*office) /改换为指定房号的另一个办公室 strcpy(this一office,office); private: char name20;/部门名称 char office20;/部门所在办公室房号 ; class staff/“职工”类 public: /*found* Staff(const char*myid,const char木my_name,Department&my_dept): strcpy(this一staff id,my_id); strcpy(this一name,my_name); const char*getlD()constreturn staff_id; const char*getName()conslreturn name; Department getDepartment()constreturn dept; char staff=id10;/职工号 char name20;/姓名

温馨提示

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

评论

0/150

提交评论