[计算机类试卷]国家二级(C++)笔试模拟试卷140及答案与解析.doc
《[计算机类试卷]国家二级(C++)笔试模拟试卷140及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C++)笔试模拟试卷140及答案与解析.doc(25页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C+)笔试模拟试卷 140及答案与解析 1 下列选项中不属于软件生命周期开发阶段任务的是 ( )。 ( A)软件测试 ( B)概要设计 ( C)软件维护 ( D)详细设计 2 下列叙述中正确的是 ( )。 ( A)一个逻辑数据结构只能有一种存储结构 ( B)数据的逻辑结构属于线性结构,存储结构属于非线性结构 ( C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 ( D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率 3 软件设计包 括软件的结构、数据接口和过程设计,其中软件的过程设计是指( )。 ( A)模块间的关系 ( B)系统结构
2、部件转换成软件的过程描述 ( C)软件层次结构 ( D)软件开发过程 4 下列关于顺序存储结构叙述中错误的是 ( )。 ( A)存储密度大 ( B)逻辑上相邻的结点物理上不必邻 ( C)可以通过计算直接确定第 i个结点的存储地址 ( D)插入、删除运算操作不方便 5 ( )复审应该把重点放在系统的总体结构、模块划分、内外接口等方面。 ( A)详细设计 ( B)系统设计 ( C)正式 ( D)非正式 6 下列叙述中正确的是 ( )。 ( A)黑箱 (盒 )测试方法完全不考虑程序的内部结构和内部特征 ( B)黑箱 (盒 )测试方法主要考虑程序的内部结构和内部特征 ( C)白箱 (盒 )测试不考虑程
3、序内部的逻辑结构 ( D)上述三种说法都不对 7 关于数据库系统三级模式的说法,下列 ( )是正确的。 ( A)外模式、概念模式、内模式都只有一个 ( B)外模式有多个,概念模式和内模式只有一个 ( C)外模式只有一个,概念模式和内模式有多个 ( D) 3个模式中,只有概念模式才是真正存在的 8 以下不使用线性结构表示实体之间联系的模型的是 ( )。 ( A)线性表 ( B)栈和队列 ( C)二叉树 ( D)以上三个都不是 9 具有 3个结点的二叉树有 ( )。 ( A) 2种形态 ( B) 4种形态 ( C) 7种形态 ( D) 5种形态 10 算法具有五个特性,以下选项中不属于算法特性的是
4、 ( )。 ( A)有穷性 ( B)简洁性 ( C)确定性 ( D)输入输出性 11 面向对象程序设计将数据和 ( )放在一起,作为一个相互依存、不可分割的整体来处理。 ( A)对数据的操作 ( B)信息 ( C)数据隐藏 ( D)数据抽象 12 设 a和 b均为 double型变量,且 a=5.5、 b=2.5,则表达式 (int)a+b/b的值是 ( A) 6.500000 ( B) 6 ( C) 5.500000 ( D) 6.000000 13 for(int x=0, y=0; !xint a;int fun ();int main () extern int a; int b; a
5、 = 100; b = fun(); cout b end1; return 0;int fun) extern int a; return (10*a ; 其程序运行后的输出结果是 ( A) 100 ( B) 10 ( C) 1000 ( D) 10000 20 以下函数实现的功能是 void fun (char *s) char *p,*q,temp; p=s; q=s+ strlen(s)-1; while (p q) temp=*p; *p=*q; *p=temp; p+; q-; ( A)将一个字符串首尾颠倒 ( B)计算字符串的长度 ( C)统计字符串中的空格个数 ( D)将字符串
6、中的小写字母变成大写字母 21 有如 下类的定义。空格处的语句是 class MyClass _ int x, y;public: MyClass(int a=0, int b=0) x=a; y=b; static void change() x-=10; y-=10; ; ( A) static ( B) const ( C) private ( D)不需要填入内容 22 设有以下定义和程序: #include iostream.h class A1public: void show1() cout “class A1“ endl; ;class A2 : public A1public:
7、 void show2() cout “class A2“ end1 ;class A3 : protected A2public: void show3() cout “class A1“ endl; ;void main() A1 obj1; A2 obj2; A3 obj3; 则以下不合语法的调用语句是 ( A) obj1. showl(); ( B) obj2. showl(); ( C) obj3. showl(); ( D) obj2. show2(); 23 如果算符函数调用格式的表达式: x.operator-(operator+(y, 0)中的 “”是作为成员函数重载的, “
8、+”是作为友元函数重载的,那么该表达式还可以表示为: () ( A) x-y+ ( B) x-(+y) ( C) (x+)-y ( D) +x-y 24 有以下程序: #include iostream #include math using namespace std;class pointprivate: double x; double y;public: point(double a, double b x=a; y=b; friend double distance (point a, point b ; ;double distance(point a, point b retur
9、n sqrt(a. x-b. x )*(a. x -b. x )+ (a. x -b. x)*(a. x-b. x);int main () point p1 (1,2); point p2(5,2); cout distance (p1, p2) end1; return 0; 程序运行后的输出结果是 ( A) 1 ( B) 5 ( C) 4 ( D) 6 25 在进行了任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态,其中只能用于检测刚进行的操作是否失败函数名是 ( A) fail ( B) eof ( C) bad ( D) good 26 下列有关拷贝构造函数的描述中错
10、误的是 ( A)拷贝构造函数是一种构造函数 ( B)拷贝构造函数与一般的构造函数一样,可以设置多个形参 ( C)每一个类中都必须有一个拷贝构造函数 ( D)拷贝构造函数的功能是用一个已知对象去初始化一个正在创建的对象。 27 带有虚基类的多层次派生类构造函数的成员初始化列表中都要列出虚基类的构造函数,这样对虚基类的子对象初始化 ( A)与虚基类下面的派生类个数有关 ( B)多次 ( C)二次 ( D)一次 28 下列关于 this指针的叙述中,正确的是 ( A) this指针是一个隐含指针,它隐含于类的成员函数中 ( B)只有在使用 this时,系统才会将对象的地址赋值给 this ( C)类
11、的友元函数也有 this指针 ( D) this指针表示了成员函数当前操作的数据所属的对象 29 有以下程序 #include iostream using namespace std:class Baseprivate: char c;public: Base(char n) :c(n) Base ( ) cout c; ; class Derived : public Baseprivate: char c;public: Derived(char n):Base (n+1),c(n) Derived() cout c; ;int main() Derived obj(x); return
12、 0; 执行后的输出结果是 ( A) xy ( B) yx ( C) x ( D) y 30 以下程序的输出结果是 #include iostream using namespace std;int main() cout.fill(*); cout.width(5); cous hex 100 end1; return 0; ( A) *100 ( B) *64 ( C) 100* ( D) 64* 31 若有以下程序 : # include iostream using namespace std;class Basepublic: Base ( ) x=0; int x;class De
13、rived1 : virtual public Basepublic: Derived1 ( ) x=10; ; class Derived2 : virtual public Basepublic: Derived2 () x=20; ;class Derived : public Derived1,protected Derived2 ;int main() Derived obj; cout obj.x end1; return 0; 该程序运行后的输出结果是 ( A) 10 ( B) 20 ( C) 30 ( D) 0 32 有如下程序: #include iostream using
14、 namespace std;class Baseprivate: char c;public: Base(char n) :c(n) Base() cout c; ;class Derived: public Baseprivate: char c; public: Derived(char n):Base(n+1),c(n) Derived() cout c; ;int main () Derived obj (x); return 0;执行上面的程序净输出 ( A) xy ( B) yx ( C) x ( D) y 33 关于在调用模板函数时实参的使用,下列表述中正确的是 ( A)对于虚
15、拟类型参数所对应的模板实参,如果能从模板函数的实参中获得相同的信息,则都可以省略 ( B)对于虚拟类型参数所对应的模板实参,如果它们是参数表中的最后的若干个参数,则都可以省略 ( C)对于虚拟类型参数所对应的模板实参,若能够省略则必须省略 ( D)对于常规参数所对应的模板实参,任何情况下都不能省略 34 有如下程序: #include iostream using namespace std;class point int x, y;public: point( int vx, int vy ) x = vx; y = vy; point ( ) x = 0; y= 0; point oper
16、ator+( point p1 ) point p; int px = x+ p1.x; int py = y + p1.y; return point( px, py ); point operator-( point p1 ) point p; int px = x -p1.x; int py = y - p1.y; return point ( px, py ); void print() cout x “ , “ y end1; ;int main () point p1(10, 10 ), p2( 20, 20 ); p1 = p1 - p2; p1.print (); return
17、 0; 执行后的输出结果是 ( A) 10, 10 ( B) 20, 20 ( C) 10, 20 ( D) 30, 30 35 有如下程序 #include iostream using namespace std;class basepublic: virtual void f1() cout “F1Base “; virtual void f2() cout “F2Base “; ;class derive: public base void f1() cout “F1Derive “; void f2( int x ) cout “F2Derive “; ;int main() bas
18、e obj1, * p; derive obj2; p = p - f1(); p - f2(); return 0; 执行后的输出结果是 ( A) F1Derive F2Base ( B) F1Derive F2Derive ( C) F1Base F2Base ( D) F1Base F2Derive 36 数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是 _。 37 在面向对象方法中,允许作用于某个对象上的操作称为 _。 38 若按 功能划分,软件测试的方法通常分为白盒测试方法和 _测试方法。 39 在数据库的概念结构设计中,常用的描述工具是 _
19、。 40 数据结构分为逻辑结构和存储结构,循环队列属于 _结构。 41 设有定义语句: int a=12;,则表达式 a*=2+3的运算结果是 _。 42 设在主函数中有以下定义和函数调用语句,且 fun()函数为 void类型,请写出fun()函数的首部 _。 int main() double s1022; int n: . fun (s): . return 0; 43 下列程序的输出结果是 _。 #include iostream.h #include cstring.h using namespace std; void fun(const char*s,char int main
20、) char str =“ABCDE“; char ch=str1; fun(str,sh); cout Ch; return 0; 44 请按下面注释的提示,将类 B的构造函数定义补充完整。 classA int a; public: Aint aa=0) (a=aa; class B:public A int b; A c; public: /用 aa初始化基类 A,用 aa+1初始化类对象成员 c B(int aa): b=aa+2 ; 45 以下程序运行后的输出结果是 _。 #include iostream #include string using namespace std; c
21、lass Y; class X int x; char *strx; public: X(int a, char *str) x=a; strx=new charstrlen(str)+1 strcpy (strx,str); void show(Y ; class Y prlvate: int y; char *stry; public: Y(int b,char *str) y=b; stry=new charstrlen(str)+1; strcpy(stry,str); friend void X:show(Y ; void X:showY int main X a (10, “str
22、ingX“); Y b (20, “stringY“); a. show (b); renurn 0; 46 在下面横线上填上适当的语句,完成程序。 #include iostream using namespace std; class Base int x: public: Base (int i)x=i; Base() ; class Derived : public Base public: _ /完成类 Derive构造函数的定义 ; int main ( Derived Obi; return 0; 在横线外应填入的语句是 _。 47 下面是用来计算 n的阶乘的递归函数,请将该函数
23、的定义补充完整。 (注:阶乘的定义是 ) n!=n*(n-1)*.*2*1) unsigned fact(unsigned n) if (n =1) return 1; return_; 48 下列程序的输出结果是 _。 #include iostream using namespace std; template typename T T fun(T a,T b) return (a =b)?a:b;) int main() cout fun(3, 6) , fun(3.14F,6.28F) end1; return 0; 49 下面是 “二维向量 ”vector2D的定义,其中作为成员函数
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 笔试 模拟 140 答案 解析 DOC
