2010计算机二级C  模拟考及答案_第1页
2010计算机二级C  模拟考及答案_第2页
2010计算机二级C  模拟考及答案_第3页
2010计算机二级C  模拟考及答案_第4页
2010计算机二级C  模拟考及答案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

2010 计算机二级 c+模拟考及答案笔试部分一、选择题1.算法的空间复杂度是指A)算法程序的长度B)算法程序中的指令条数C)算法程序所占的存储空间D)执行过程中所需要的存储空间【参考答案】D2.用链表表示线性表的优点是A)便于随机存取B)花费的存储空间较顺序存储少C)便于插入和删除操作D)数据元素的物理顺序与逻辑顺序相同【参考答案】C3.数据结构中,与所使用的计算机无关的是数据的A)存储结构B)物理结构C)逻辑结构D)物理和存储结构【参考答案】C4.结构化程序设计主要强调的是A)程序的规模B)程序的效率C)程序设计语言的先进性D)程序易读性【参考答案】D5.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指A)模块间的关系B)系统结构部件转换成软件的过程描述C)软件层次结构D)软件开发过程【参考答案】B6.检查软件产品是否符合需求定义的过程称为A)确认测试B)集成测试C)验证测试D)验收测试【参考答案】A7.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是 A)控制流B)加工C)数据存储D)源和潭【参考答案】A8.应用数据库的主要目的是A)解决数据保密问题B)解决数据完整性问题C)解决数据共享问题D)解决数据量大的问题【参考答案】C9.在数据库设计中,将E-R图转换成关系数据模型的过程属于A)需求分析阶段B)逻辑设计阶段C)概念设计阶段D)物理设计阶段【参考答案】B10.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是A)数据库系统B)文件系统C)人工管理D)数据项管理【参考答案】A11.下面关于C+语言的描述错误的是A)C+语言支持数据封装B)C+语言中引入友元没有破坏封装性C)C+语言允许函数名和运算符重载D)C+语言支持动态联编【参考答案】B12.设有定义 inta=1;floatf=1 2;charc=a;,则下列表示错误的是 A)+a;B)f-;C)c+;D)8+;【参考答案】D13.下列程序的运行结果为#includevoidmain()inta=2;intb=a+1;coutA)0.66667B)0C)0.7D)0.66666666【参考答案】B14.设 inta=1,b=2;,则(a+)+b 和 a+b 这两个表达式的值分别为A)3,3B)3,4C)4,3D)4,4【参考答案】A15.下面程序的运行结果为#includevoidmain()chara=3;switch(a) case 3:cout“3”;case 2:cout“2”; break;default:cout“1”; A)3 B)321 C)31 D)32【参考答案】D16.有如下数组声明:int num10;,下标值引用错误的是A)num10B)num5C)num3D)num0【参考答案】A17.存在定义 int a10,x,*pa;,若 pa= B)x=*(a+1); C)x=*(pa+1); D)x=a1;【参考答案】A18.下面程序的运行结果为#includevoid swap(int temp=a+;a=b;b=temp; void main() int a=2,b=3;swap(a,b);coutA)2,3 B)3,2 C)2,2 D)3,3【参考答案】D19.一个函数功能不太复杂但要求被频繁调用,应选用A)内联函数B)重载函数C)递归函数D)嵌套函数【参考答案】A20.下面关于 C+语言变量的叙述错误的是A)C+语言中变量分为auto,static,extern和register四种存储类型B)自动变量和外部变量的作用域为整个程序C)内部静态变量的作用域是定义它的函数D)外部静态变量的作用域是定义它的文件【参考答案】B21.为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为A)public B)protected C)private D)static【参考答案】A22.在 C+语言程序中,对象之间的相互通信通过A)继承实现B)调用成员函数实现C)封装实现D)函数重载实现【参考答案】B23.类的析构函数是在什么时候调用的?A)类创建时B)创建对象时C)删除对象时D)不自动调用【参考答案】C24.通常拷贝构造函数的参数是A)某个对象名B)某个对象的成员名C)某个对象的引用名D)某个对象的指针名【参考答案】C25.下面程序的运行结果为#includeclass A static int n;public:A()n=1;A(int num)n=num;void print()coutint A:n=2;void main() A a,b(3);a.print();b.print();coutA)11 B)13 C)23 D)33【参考答案】D26.下列不是描述类的成员函数的是A)构造函数B)析构函数C)友元函数D)拷贝构造函数【参考答案】C27.继承机制的作用是A)信息隐藏B)数据封装C)定义新类D)数据抽象【参考答案】C28.C+语言类体系中,不能被派生类继承的有A)转换函数B)构造函数C)虚函数D)静态成员函数【参考答案】B29.下面程序的运行结果是#includeclass baseprotected:int a;public:base()cout“0”; ;class base1:virtual basepublic:base1()cout“1”; ;class base2:virtual basepublic:base2()cout“2”; ;class derived:public base1,public base2public:derived()cout“3”; ;void main() derived obj;coutA)0123 B)3120 C)0312 D)3012【参考答案】A30.对于类定义class Apublic:virtual void func1()void func2() ;class B:public Apublic:void func1()coutclass B func 1virtual void func2()coutclass B func 2下面正确的叙述是A)A:func2()和B:func1()都是虚函数B)A:func2()和B:func1()都不是虚函数C)B:func1()是虚函数,而A:func2()不是虚函数D)B:func1()不是虚函数,而A:func2()是虚函数【参考答案】C31.下面关于运算符重载的描述错误的是A)运算符重载不能改变操作数的个数、运算符的优先级、运算符的结合性和运算符的语法结构B)不是所有的运算符都可以进行重载C)运算符函数的调用必须使用关键字operatorD)在C+语言中不可通过运算符重载创造出新的运算符【参考答案】C32.与语句 coutA)coutn; B)cout12;C)coutxA; D)cout0;【参考答案】D33.下面程序的运行结果是#includeint fun(int a,int n) int result=1;for(int i=1;iresult=result*ai;return result; void main() int a3=3,4,5;coutA)12 B)15 C)20 D)60【参考答案】 C34.下面程序的运行结果是#includevoid main() int i=1;while(i=8)if(+i%3!=2)continue;else coutA)25 B)36 C)258 D)369【参考答案】C35.下列程序的运行结果为#includetemplateclass FF TT a1,a2,a3;public:FF(TT b1,TT b2,TT b3)a1=b1; a2=b2; a3=b3;TT Sum()return a1+a2+a3; ;void main() FF x(int(1.1),2,3),y(int(4.2),5,6);coutA)6.1 15.2 B)6 15 C)6 15.2 D)6.1 15【参考答案】B二、填空题(1)数据的逻辑结构有线性结构和 【1】 两大类。【参考答案】【1】非线性结构(2)顺序存储方法是把逻辑上相邻的结点存储在物理位置【2】的存储单元中。【参考答案】【2】相邻(3)一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的【3】。【参考答案】【3】可重用性(4)软件工程研究的内容主要包括:【4】技术和软件工程管理。【参考答案】【4】软件开发(5)关系操作的特点是【5】操作。【参考答案】【5】集合(6)C+中封装性、继承性和【6】是面向对象思想的主要特征。【参考答案】【6】多态性(7)下面程序的结果为【7】。#includevoid main() int a=1,b=2;bool c=1;if(ab)|c)cout“true”elsecout“false”【参考答案】【7】true(8)下列for语句的循环次数为【8】。for(int a=0,b=1;ba+);【参考答案】【8】5(9)下面程序的输出结果是【9】。#includevoid main() int a6=1,2,3,4,5,6;for(int i=0;i5;i+)cout【参考答案】【15】*hello上机部分一、改错题使用 VC6打开考生文件夹下的工程 kt13_1,此工程包含一个源程序文件 kt13_1.cpp,但该程序运行有问题,请改正程序中的错误,使该程序的输出结果为:55源程序文件kt13_1.cpp清单如下:#includeclassApublic:/*found*/staticintn=1;A()n+;A()n-; ;/*found*/intn=0;intmain()Aa;Ab3;A*c=newA;c=/*found*/coutcoutreturn0; 【参考答案】(1)将static int n=1;改为:static int n;(2)将int n=0;改为:int A:n=0;(3)将coutn【试题解析】(1)在类的声明中只能对静态数据成员进行引用性声明,不能进行静态数据成员初始化;(2)由于静态数据成员是类的成员,所以在初始化时必须限定它所属的类;(3)c为类的对象指针,访问类成员函数时使用符号“-”,而不能用“。”。二、简单应用题请编写一个函数 sortnum(intnum),参数 num 是一个三位的整数,该函数将 num 的百位、十位和个位的数字进行重排,并返回由上述的三个数字组成的最大的三位数。注意:部分源程序已存在文件 kt13_2.cpp 中。如输入456后,输出结果如下:654请勿修改主函数main和其他函数中的内容,仅在函数sortnum的花括号中填写若干语句。文件kt13_2.cpp的内容如下:#includeintsortnum(intnum)voidmain() intnum;intresult=0;cout“请输入一个三位数”;cinnum;cout【参考答案】int number3,i,j,temp;for(i=0;i3;i+) numberi=num%10;num=num/10; for(i=0;i2;i+) for(j=i+1;j3;j+)if(numberj=numberi) temp=numberj;numberj=numberi;numberi=temp; num=number2*100+number1*10+number0;return num;【试题解析】本题主要考查对基本控制结构和数组的访问,以及根据实际需要建立模型,对数字进行排序的能力,答案中采用的是冒泡排序法。请注意程序中数组下标的范围和两层for循环嵌套中循环变量的取值情况。三、综合应用题使用 VC6打开考生文件夹下的工程 kt13_3。此工程包含一个kt13_3.cpp,其中定义了类 Person,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类Person的私有数据成员forename、surname和money,forename和surname都是char型的指针数据,money是double型的数据。请在注释“/*1*”之后添加适当的语句。(2)完成类Person的带三个参数的构造函数Person(char*f,char*s,doublem),分别为forename和surname申请新的空间来存储参数f和s指针指向的内容,注意空间的大小,最后把参数m的值赋给money,请在注释“/*2*”之后添加适当的语句。(3)完成类Person的析构函数的定义,把forename和surname指向的空间释放,请在注释“/*3*”之后添加适当的语句。(4)完成类Person的成员函数display的定义,使其以格式“fornamesurnamehasmone

温馨提示

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

评论

0/150

提交评论