ImageVerifierCode 换一换
格式:DOC , 页数:18 ,大小:52.50KB ,
资源ID:492484      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-492484.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([计算机类试卷]2005年4月国家二级(C++)笔试真题试卷及答案与解析.doc)为本站会员(wealthynice100)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

[计算机类试卷]2005年4月国家二级(C++)笔试真题试卷及答案与解析.doc

1、2005 年 4月国家二级( C+)笔试真题试卷及答案与解析 1 数据的存储结构是指 ( A)存储在外存中的数据 ( B)数据所占的存储空间量 ( C)数据在计算机中的顺序存储方式 ( D)数据的逻辑结构在计算机中的表示 2 下列关于栈的描述中错误的是 ( A)栈是先进后出的线性表 ( B)栈只能顺序存储 ( C)栈具有记忆作用 ( D)对栈的插入与删除操作中,不需要改变栈底指针 3 对于长度为 n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是 ( A)冒泡排序 n/2 ( B)冒泡排序 为 n ( C)快速排序为 n ( D)快速排序为 n(n-1)/2 4 对长度为 n的线

2、性表进行顺序查找,在最坏情况下所需要的比较次数为 ( A) log2n ( B) n/2 ( C) n ( D) n+1 5 下列对于线性链表的描述中正确的是 ( A)存储空间不一定是连续,且各元素的存储顺序是任意的 ( B)存储空间不一定是连续,且前件元素一定存储在后件元素的前面 ( C)存储空间必须连续,且前件元素一定存储在后件元素的前面 ( D)存储空间必须连续,且各元素的存储顺序是任意的 6 下列对于软件测试的描述 中正确的是 ( A)软件测试的目的是证明程序是否正确 ( B)软件测试的目的是使程序运行结果正确 ( C)软件测试的目的是尽可能多地发现程序中的错误 ( D)软件测试的目的

3、是使程序符合结构化原则 7 为了使模块尽可能独立,要求 ( A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强 ( B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱 ( C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 ( D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强 8 下列描述中正确的是 ( A)程序就是软件 ( B)软件开发不受计算机系统的限制 ( C)软件既是逻辑实体,又是物理实体 ( D)软件是程序、数据与相关文档的集合 9 数据独立性是数据库技术的重要特点之一。所谓数据独立性是指 ( A)数据与程序独立存放 ( B)不同的数据被存放在不同的文件中

4、( C)不同的数据只能被对应的应用程序所使用 ( D)以上三种说法都不对 10 用树形结构表示实体之间联系的模型是 ( A)关系模型 ( B)网状模型 ( C)层次模型 ( D)以上三个都是 11 要定义数组 A,使得其中每个元素的数 据依次为: 3、 9、 4、 8、 0、 0、 0,错误的定义语句是 ( A) int A =3,9,4,8,0,0,0; ( B) int A7=3,9,4,8,0,0,0; ( C) int A =3,9,4,8); ( D) int A7=3,9,4,8); 12 在 C+中,实现封装性需借助于 ( A)枚举 ( B)类 ( C)数组 ( D)函数 13

5、下列关于虚函数的描述中,正确的是 ( A)虚函数是一个 static类型的成员函数 ( B)虚函数是一个非成员函数 ( C)基类中采用 virtual说明一个虚函数后,派生类中定义相同原型的函数时可不必加 virtual说明 ( D)派生类中的虚函数与基类中相同原型的虚函数具有不同的参数个数或类型 14 下列关于运算符重载的描述中,正确的是 ( A)运算符重载可以改变操作数的个数 ( B)运算符重载可以改变运算符的优先级 ( C)运算符重载可以改变运算符的结合性 ( D)运算符重载可以使运算符实现特殊功能 15 有如下函数模板声明: template typename T T Max(Ta,T

6、b)return(a =b)?a:b;) 下列对函数模扳 Max的调用中错误是 ( A) Max(3.5,4,5) ( B) Max(3.5,4) ( C) Max double (3.5,4.5) ( D) Max double (3.5,4) 16 若语句: cout setfill( ) setw(5) 3141512 setw(5)“OK!“; 是程序中第一个输出语句,则输出结果是 ( A) 3141512 OK! ( B) 31415120K! ( C) 414150K! ( D) 31415 OK! 17 有如下语句序列; int k=0; dok+=5;couk $;) whil

7、e(k 19); while(k- 0)cout *; 执行上面的语句序列输出字符$和。的个数分别是 ( A) 4和 20 ( B) 5和 20 ( C) 4和 21 ( D) 5和 21 18 针对数组定义 int data10;,下列表述中错误的是 ( A)用 *data可访问到数组的首元素 ( B)用 data9可访问到数组的末元素 ( C)用 data10访问数组元素会超 出数组边界 ( D) data共有 10个元素,其首元素是 data1 19 已知 n是一个 int型变量,下列语句中错误的是 ( A) long *p=new longn; ( B) long pn; ( C) l

8、ong *p=new long(n); ( D) longpr10; 20 下列函数中对调用它的函数没有起到任何作用的是 ( A) void f1(double) ( C) void f3(double x)-x; ) ( D) double f4(double *x)-*x;retum *x; 21 在下面的类定义中,横线处应填入的内容是 class Fred public: void print()cout data endl; void setData(double d)(data=d; static int count; private: double data; ; count=0;

9、 /静态数据成员的定义 ( A) int ( B) static int ( C) int Fred: ( D) static int Fred: 22 有如下程序: #include iostream using namespace std; class Base protected: in i; public: int j; ; class Derived:public Base int m; public:int n; ; int main() Derived d; d.i=0; /1 d.j=0; /2 d.m=0; /3 d.n=0; /4 retum 0; 其中主函数中有两个赋值语

10、句有错,这两个借误的赋值语句是 ( A) 1和 2 ( B) 1和 3 ( C) 2和 3 ( D) 2和 4 23 在表达式 x-y中, “_”是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符 “_”,这个表达式还可表示为 ( A) x.operator-(y) ( B) operator-(y,x) ( C) y.operator-(x) ( D) operator-(x,y) 24 下面的函数模板定义中错误的是 ( A) template ( B) template Q F(Q x)retum Q+x;) Q F(Q x)return x+x; ( C) templa

11、te classT ( D) template class T TF(T x)return x*x;) Bool F(tx)return x 1;) 25 已知 outfile是一个输出流对象,要想将 outfile的文件指针定位到当前位置之前321字节处,正确的函数调用语句是 ( A) outfile.seekp(321,ios_base:cur); ( B) outfile.seekp(321,ios_base:bge); ( C) outfile.seekp(-321,ios_base:beg); ( D) outfile.seekp(-321,ios_base:cur); 26 有如下

12、的程序: #include cstring #include iostream using namespace std; class MyString public: MyString(const char*s); MyString()deletedata; Protected: unsigned len; char*data; ; MyString:MyString(const char*s) len=strlen(s); data=new charlen+1; strcpy(data,s); int main() MyString a(“C+Programing“); MyString b

13、(a); return 0; 在运行上面的程序时出错,出错的原因是 ( A)构造函数的实参不允许是本类 的对象 ( B)没有定义实现深层复制 (深拷贝 )的拷贝构造函数 ( C)构造对象 a时实参与形参类型不符 ( D)系统不能生成缺省的拷贝构造函数 27 有如下程序: #include iostream using namespace std; class Demo public: Demo() cout “default constructorn“; Demo(const Demo Demo userCode(Demo b)DemoC(b);return c; int main() Dem

14、o a,d; cout “calling userCode()n“; d=userCode(a); return 0; 执行上面程序的过程中,构造函数 Demo()和 Demo(const Demo 与语句 ff=O;的效果完全相同。对于这一现象,下列表述中错误的是 ( A) ff是某个类的数据成员, func是该类的友元函数 ( B) ff是某个类的数据成员, func是该类的成员函数 ( C) this- ff和 ff是同一个变量 ( D) func不是一个静态成员函数 29 有如下程序: #include iostream using namespace std; class Base

15、pubfic: Base()cout “BB“;f(); void f()cout “Bf“: ; class Derived:public Base public: Derived()cout “DD“;) voidf()cout“Df“: ; intmain()Derived d;retum 0; 执行上面的程序将输出 ( A) BBBfDD ( B) BBDfDDDf ( C) DD ( D) DDBBBf 30 下列说法中错误的是 ( A)公有继承时基类中的 public成员在派生类中仍是 public成员 ( B)私有继承时基类中的 protecte成员在派生类中仍是 protect

16、ed成员 ( C)私有继承时基类中的 public成员在派生类中是 private成员 ( D)保护继承时基类中的 public成员在派生类中是 protected成员 31 下面是关于派生类声明的开始部分,其中正确 的是 ( A) class virtual B:public A ( B) virtual class B:public A ( C) class B:public A virtual ( D) class B:virtual public A 32 在重载一个运算符为成员函数时,其参数表中没有任何参数,这说明该运算符是 ( A)后缀一元运算符 ( B)前缀一元运算符 ( C)无

17、操作数的运算符 ( D)二元运算符 33 关于关键字 class和 typename,下列表述正确的是 ( A)程序中所有的 typename都可以替换为 class ( B)程序中所有的 class都可以替换为 typename ( C) A)和 B)都正确 ( D) A)和 B)都不正确 34 有如下程序: #qnclude iostream #include iomanip using namespace std; class CSum int x,y; public: CSum(int x0,int y0):x(xo),y(yo) friend ostream return os; ;

18、 int main() CSum y(3.5; cout setfill(*) 8 cout y; return0; 执行上面程序的输出是 ( A) 88 ( B) *88 ( C) *8*8 ( D) 8*8 35 有如下程序: #nclude iostremn using namespace std; class Stack public: Stack(unsigned n=10:size(n)rep_=new intsize;top=O; Stack(Stack for(int i=0;i size;i+)rep_i=s.rep_i; top=s.top; Stack()deletere

19、p_; void push(int a)rep_top=a; top+; int opo()-top;return rep_top; bool is Empty()constreturn top=O; pavate: int*rep_; unsigned size,top; ; int main() Stack s1; for(int i=1;i5;i+) s1.push(i); Stack s2(s1); for(i=1;i 3;i+) cout s2.pop() ,; s2.push(6); s1.push(7); while(!s2.isEmpty() cout s2.pop(),; r

20、eturn 0; 执行上面程序的输出是 ( A) 4, 3, 2, 1 ( B) 4, 3, 6, 7, 2, 1 ( C) 4, 3, 6, 2, 1 ( D) 1, 2, 3, 4 36 某二叉树中度为 2的结点有 18个,则该二叉树有【 】个叶子结点。 37 在面向对象方法中,类的实例称为【 】。 38 诊断和改正程序中错误的工作通常称为【 】。 39 在关系数据库中,把数据表示成二维表,每一个二维表称为【 】。 40 问题处理方案的正确而完整的描述称为【 】。 41 下列程序的输出结果是【 】。 #include iostream #include cstring using name

21、space std; void fun(const char *s,char int main() char str=“ABCDE“; char ch=str1; fun(str,ch); cout ch; return 0; 42 Staff类含有 int型数据成员 ID,两个 Staff对象相等是指它们的 ID相同。下面的函数重载了运算符 =,它用来判断两个 Staff对象是否相等,相等时返回 true,否则返回 false。请将横线处缺失部分补充完整。 bool Staff:Staff=(const Staff for(int i=1;i n;i+) if(ai m)【 】 ; retu

22、rn m; 44 下面程序的执行结果是【 】。 #include iostream #include iomanip using namespace std; void main() cout setfill(x) setw(10); cout “Hello“ endl; 45 在下面函数的横线处填上适当的内容,使该函数能够利用递归方法求解字符串sb的长度 (不得使用系统提供的字符串处理函数 )。 int GetLen(char*str) it(【 】 )return【 】; else return 1+GetLen(str+1); 46 在下面程序的横线处填上适当的内容,使程序执行后的输出结

23、果果为 1/2005。 #include iostmam using namespace std; class Date public: Date(int m=1,int y=0):month(m),year(y) void Print()cout month “/“ year endl; operator+(const Date private: int month,year; ; operator+(const Date year=d1.year+d2.year; month=d1.month+d2.month; year+=(month-1)/12; month=(month-1)%12

24、+1; return Date(month,year); void main() Date d1(3,2004),d2,d3(10); d2=d3+d1; d2.Print(); 47 在下面程序的横线处填上适当的内容,使程序执行后的输出结果为 ABCD。 #include iostream using namespace std; class A public: A()cout A; ; class B:【 】 public:B()cout B;) ; class C:【 】 public;C()cout C; ; class D:public B,public C public:D()co

25、ut D; ; void main()D obi; 2005 年 4月国家二级( C+)笔试真题试卷答案与解析 1 【正确答案】 D 2 【正确答案】 B 3 【正确答案】 D 4 【正确答案】 C 5 【正确答案】 A 6 【正确答案】 C 7 【正确答案】 B 8 【正确答案】 D 9 【正确答案】 D 10 【正确答案】 C 11 【正确答案】 C 12 【正确答案】 B 13 【正确答案】 C 14 【正确答案】 D 15 【正确答案】 B 16 【正确答案】 A 17 【正确 答案】 A 18 【正确答案】 D 19 【正确答案】 B 20 【正确答案】 C 21 【正确答案】 C

26、22 【正确答案】 B 23 【正确答案】 D 24 【正确答案】 A 25 【正确答案】 D 26 【正确答案】 B 27 【正确答案】 C 28 【正确答案】 A 29 【正确答案】 A 30 【正确答案】 B 31 【正确答案】 D 32 【正确答案】 B 33 【正确答案】 A 34 【正确答案】 B 35 【正确答案】 C 36 【正确答案】 19 37 【正确答案】 对象 38 【正确答案】 程序调试 39 【正确答案】 关系 40 【正确答案】 算法 41 【正确答案】 C 42 【正确答案】 this.ID=s.ID 43 【正确答案】 m=ai 44 【正确答案】 xxxxxHello 45 【正确答案】 *str=/0 0 46 【正确答案】 friend Date Date 47 【正确答案】 virtual public A virtual public A

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1