[计算机类试卷]国家二级(C++)笔试模拟试卷80及答案与解析.doc
《[计算机类试卷]国家二级(C++)笔试模拟试卷80及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C++)笔试模拟试卷80及答案与解析.doc(23页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C+)笔试模拟试卷 80及答案与解析 1 假设线性表的长度为 n,则在最坏情况下,冒泡排序需要的比较次数为 ( A) log2n ( B) n2 ( C) O(n1.5) ( D) n(n-1)/2 2 算法分析的目的是 ( A)找出数据结构的合理性 ( B)找出算法中输入和输出之间的关系 ( C)分析算法的易懂性和可靠性 ( D)分析算法的效率以求改进 3 线性表 L=(a1, a2, a3, ai , an) ,下列说法正确的是 ( A)每个元素都有一个直接前件和直接后件 ( B)线性表中至少要有一个 元素 ( C)表中诸元素的排列顺序必须是由小到大或由大到小 ( D)除第一个
2、元素和最后一个元素外,其余每个元素都有一个且只有一个直接前件和直接后件 4 在单链表中,增加头结点的目的是 ( A)方便运算的实现 ( B)使单链表至少有一个结点 ( C)标识表结点中首结点的位置 ( D)说明单链表是线性表的链式存储实现 5 软件工程的出现是由于 ( A)程序设计方法学的影响 ( B)软件产业化的需要 ( C)软件危机的出现 ( D)计算机的发展, 6 软件开发离不开系统环境资源的支持,其中必要的测试数 据属于 ( A)硬件资源 ( B)通信资源 ( C)支持软件 ( D)辅助资源 7 在数据流图 (DFD) 中,带有名字的箭头表示 ( A)模块之间的调用关系 ( B)程序的
3、组成成分 ( C)控制程序的执行顺序 ( D)数据的流向 8 分布式数据库系统不具有的特点是 ( A)数据分布性和逻辑整体性 ( B)位置透明性和复制透明性 ( C)分布性 ( D)数据冗余 9 关系表中的每一横行称为一个 ( A)元组 ( B)字段 ( C)属性 ( D)码 10 下列数据模型中,具有坚实理论基础的是 ( A)层次模型 ( B)网状模型 ( C)关系模型 ( D)以上 3个都是 11 C+语言中标点符号中表示一条预处理命令开始的是 ( A) # ( B) ; ( C) * ( D) 12 每个 C+程序中都必须有且仅有一个 ( A)类 ( B)预处理命令 ( C)主函数 (
4、D)语句 13 sizeof(float)是 ( A)一个双精度型表达式 ( B)一个整型表达式 ( C)一种函数调用 ( D)一个不合法的表达式 14 设有 int x=11;,则表达式 (x+*2/3)的值是 ( A) 7 ( B) 8 ( C) 11 ( D) 12 15 设有程序段 int k=10; while(k=0)k=k 1; 则下面描述中正确的是 ( A)循环执行 10次 ( B)无限循环 ( C)循环体语句一次也不执行 ( D)循环体语句执行一次 16 对表达式 for(表达式 1;表达式 3)可理解为 ( A) for(表达式 1;0;表达式 3) ( B) for(表达
5、式 1;1;表达式 3) ( C) for(表达式 1;表达式 3;) ( D) for(;表达式 3) 17 以下不正确的定 义语句是 ( A) double x5=2.0, 4.0, 6.0, 8.0, 10.0; ( B) int y5=0, 1, 3, 5, 7, 9; ( C) char c1 =1, 2, 3, 4, 5; ( D) char c2 =x10, xa, x8; 18 有如下说明 int a10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10, *p=a; 则数值为9的表达式是 ( A) *p+9 ( B) *(p+8) ( C) *p+=9 ( D) p
6、+8 19 下列函数的运行结果是 #include iostream.h int f(int a, int B) int c; if(a b) c=1 else if(a b) c=0; else c=-1; return(c) ; void main( ) int i=2, j=3; int p=f(i,j); cout p; ( A) -1 ( B) 1 ( C) 2 ( D)编译出错,无法运行 20 以下对 C+语言函数的有关描述中,正确的是 ( A)在 C+语言中调用函数时,只能把实参的值传给形参,形参的值不能传送给实参 ( B) C+语言函数既可以嵌套定义又可以递归调用 ( C)函数
7、必须无返回值,否则不能使用函数 ( D)函数必须有返回值,返回值类型不定 21 关于静态数据成员的描述中正确的是 ( A)类的静态数据成员不是类的所有对象共享的数据 ( B)类的静态数据成员不能被类的成员函数调用 ( C)类的静态 数据成员不能被类的构造函数调用 ( D)类的静态数据成员必须进行初始化 22 拷贝构造函数的参数一般是 ( A)某对象名 ( B)某对象成员名 ( C)某对象的引用名 ( D)指向对象的指针名 23 下表正确的是 在父类中的访问属性 访问修饰符 在子类中的访问属性 ( A) public private 不能直接访问 ( B) protect public publ
8、ic ( C) private public 不能直接访问 ( D) protect private protect 24 下面这个程序的结果是 #include iostream.h class A private: int a; public: void seta( ); int geta( ); ; void A:seta( ) a = 1; int A:geta( ) return a; class B private: int a; public: void seta( ); int geta( ); void B:seta( ) a=2; int B:geta( ) return
9、a; class C: public A, public B private: int b; public: void display( ); ; void C:display( ) int b=geta( ); cout b; void main( ) C c; c.seta( ); c.display( ); ( A) 1 ( B) 2 ( C)随机输出 1或 2 ( D)程序有错 25 下列运算符中全都可以被友元函数重载的是 ( A) =, +, - , ( B) , +, ( ), new ( C) - ,+ , * , ( D) , , +, * 26 对于模板定义关键字 class
10、和 typename说法不正确的是 ( A)程序中的 class并不能都替换为 typename ( B) class和 typename都可互相替换 ( C)程序中的 typename都能替换为 class ( D)程序中的部分 class可以替换为 typename 27 对于下面的程序 ifstream fin(c: test.txt); if(fin) cout “ok“; else cout “wrong“; 对于 if语句中的内容可以换为 ( A) fin.fail( ): ( B) fin.bad( ); ( C) fin.good( ); ( D) fin.eof( ); 28
11、 以下程序的输出结果是 #include iostream.h long fun(int n) long s; if(n=1|n=2)s=2; else s=n-fun(n-1); return s; void main( ) cout fun(3); ( A) 1 ( B) 2 ( C) 3 ( D) 4 29 不合法的 main函数命令行参数表示形式是 ( A) main(int a, char*c ) ( B) main(int arc, char*arv) ( C) main(int argc, char*argv) ( D) main(int argv, char*argc ) 30
12、 有如下程序 #include iostream.h void main( ) char ch25=“6937“, “8254“,*p2; int i,j,s=0; for(i=0;i2;i+)pi=chi; for(i=0; i 2;i+) for(j=0; pij 0;j+=2) s=10*s+pij 0; cout s; 该程序的输出结果是 ( A) 69825 ( B) 63825 ( C) 6385 ( D) 693825 31 下面叙述不正确的是 ( A)基类的保护成员在派生类中仍然是保护的成员 ( B)基类的保护成员在公有派生类中仍然是保护的 ( C)基类的保护成员在私有派生类中
13、仍然是私有的 ( D)对基类成员的访问必须是无二义性 32 以下程序的输出结果是 #include iostream.h void main( ) char x=040; cout (X 1) ; ( A) 100 ( B) 80 ( C) 64 ( D) 32 33 下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,在划线处应填入的选项是 #include iostream.h void main( ) int a, b, t; cin a b; f while(_) if(a b) t=a; a=b; b=t; cout a “ “ b end1; cin
14、 a b; ( A) !a=b ( B) a!=b ( C) a=b ( D) a=b 34 对以下说明语句的正确理解是 int a10=6, 7, 8, 9, 10; ( A)将 5个初值依次赋给 s 1至 a 5 ( B) 将 5个初值依次赋给 a 0至 a 4 ( C)将 5个初值依次赋给 a 6至 a l0 ( D)因为数组长度与初值的个数不相同,所以此语句不正确 35 类 A是类 B的友元,类 B是类 C的友元,则下列说法正确的是 ( A)类 B是类 A的友元 ( B)类 C是类 A的友元 ( C)类 A是类 C的友元 ( D)以上都不对 36 设一棵完全二叉树共有 700个结点,则
15、在该二叉树中有【 】个叶子结点。 37 在面向对象方法中,类之间共享属性和操作的机制称为【 】。 38 在结构化分析方法中,用于描述系统中 所用到的全部数据和文件的文档称为【 】。 39 在数据库的概念结构设计中,常用的描述工具是【 】。 40 数据库系统中实现各种数据管理功能的核心软件称为【 】。 41 假设 a、 b均是整型变量,则表达式 a=2, b=5, a+, b+, a+b值为【 】。 42 设在主函数中有以下定义和函数调用语句,且 fun()函数为 void类型,请写出fun()函数的首部【 】。 int main() double s1022; int n; fun(s); r
16、eturn 0; 43 若有以下程序段: #include iostream using namespace std; int main() char*p=“abcdefgh“,*r; long*q; q=(long*)p;q+; r=(char*)q; cout r end1; return 0; 该程序的输出结果是【 】。 44 表达式 c3=c1.operator+(c2)或 c3=operator+(c1,c2)还可以表示为【 】。 45 下列程序的输出结果是【 】。 #include iostream using namespace std; void fun(int int mai
17、n() int num= 500; fun(num); cout num end1; return 0; 46 在下面程序的横线处填上适当的语句,使该程序的输出为 12。 #include iostream using namespace std; class Base public: int a; Base(int i)a=i; ; class Derived: public Base int a; public: Derived(int x): Base(x),b(x+l) void show() 【 】; 输出基类数据成员 a的值。 cout b end1; ; int main() D
18、erived d(1); d.show(); return 0; 47 假定 A为一个类,则语句 A(A if(x y) a=x; x=y; y=a; if(y z) a=y; y=z; z=a; if(x y) a=x; x=y; y=a; 49 派生类构造函数的执行顺序是先执行【 】的构造函数,然后执行成员对象的构造函数,最后执行【 】的构造函数。 50 已知程序的结果为 1 2 3,请填空。 #include iostream.h template class T class A public: T x, y, Z; void display( ) cout x “ “ y “ “ z;
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 笔试 模拟 80 答案 解析 DOC
