[计算机类试卷]国家二级(C语言)笔试模拟试卷206及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷206及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷206及答案与解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 206 及答案与解析 1 算法的空间复杂度是指 ( )。 ( A)算法程序的长度 ( B)算法程序中的指令条数 ( C)算法程序所占的存储空间 ( D)算法执行过程中所需要的存储空间 2 下列叙述中正确的是 ( )。 ( A)一个逻辑数据结构只能有一种存储结构 ( B)逻辑结构属于线性结构,存储结构属于非线性结构 ( C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 ( D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的 效率 3 简单的交换排序方法是 ( )。 ( A)快速排序 ( B)选择排序 ( C)堆排序 (
2、 D)冒泡排序 4 关于结构化程序设计原则和方法的描述错误的是 ( )。 ( A)选用的结构只准许有一个入口和一个出口 ( B)复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现 ( C)不允许使用 GOTO语句 ( D)语言中若没有控制结构,应该采用前后一致的方法来模拟 5 相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和 ( )。 ( A)可重用性差 ( B)安全性差 ( C)非持久性 ( D)冗余性 6 面向对象的设计方法与传统的面向过程的方法有本质不同,它的基本原理是( )。 ( A)模拟现实世界中不同事物之间的联系 ( B)强调模拟现实世界中的算法而不强调概念 ( C
3、)使用现实世界的概念抽象地思考问题从而自然地解决问题 ( D)不强调模拟现实世界中的算法而强调概念 7 对如下二叉树进行后序遍历的结果为 ( )。 ( A) ABCDEF ( B) DBEAFC ( C) ABDECF ( D) DEBFCA 8 软件设计包括软件的结构、数据接口和过程设计,其中软 件的过程设计是指( )。 ( A)模块间的关系 ( B)系统结构部件转换成软件的过程描述 ( C)软件层次结构 ( D)软件开发过程 9 两个或两个以上模块之间关联的紧密程度称为 ( )。 ( A)耦合度 ( B)内聚度 ( C)复杂度 ( D)数据传输特性 10 下列描述错误的是 ( )。 ( A
4、)继承分为多重继承和单继承 ( B)对象之间的通信靠传递消息来实现 ( C)在外面看不到对象的内部特征是基于对象的 “模块独立性好 ”这个特征 ( D)类是具有共同属性、共同方法的对象的集合 11 以下所列的 C语言常量中,错误的是 ( )。 ( A) 0xFF ( B) 1 2e0 5 ( C) 2L ( D) 72 12 若变量 a、 i已正确定义,且 i已正确赋值,合法的语句是 ( )。 ( A) a=1 ( B) +i ( C) a=a+=5 ( D) a=int(i) 13 若 a为 int类型,且其值为 3,则执行完表达式 a+=a-=a*a后, a的值是 ( )。 ( A) -3
5、 ( B) 9 ( C) -12 ( D) 6 14 若有定义 “int a=5, b=7; ”,则表达式 a =(b 2)运算后, a的值为 ( )。 ( A) 0 ( B) 1 ( C) 11 ( D) 3 15 若执行以下程序时从键盘上输入 9,则输出结果是 ( )。 main() int n; scanf(“ d“, &n); if(n+ 10)printf(“ d n“, n); else printf(“ d n“, n-); ( A) 11 ( B) 10 ( C) 9 ( D) 8 16 设 a、 b、 c、 d、 m、 n均为 int型变量,且 a=5、 b=6、 c=7、
6、d=8、 m=2、 n=2,则逻辑表达式 (m=a b)&(n=c d)运算后, n的值是 ( )。 ( A) 0 ( B) 1 ( C) 2 ( D) 3 17 有如下程序: main() int x=23; do printf(“ d“, x-); while(!x); 该程序的执行结果是 ( )。 ( A) 321 ( B) 23 ( C)不输出任何内容 ( D)陷入死循环 18 下列程序的输出结果是 ( )。 #include main() int a=2, b=3, p; P=f(a, b): printf(“ d“, p); int f(a, b) int c; if(a b)c=
7、1; else if(a=b)c=0; else c=-1; return(c); ( A) -1 ( B) 0 ( C) 1 ( D) 2 19 有下列程序: fun(int x, int y) i+=m+1; m=i+x+y; return m; k=fun(j, m); printf(“ d, “, k): k=fun(j, m); printf(“ d n“, k); 执行后的输出结果是 ( )。 ( A) 5, 5 ( B) 5, 11 ( C) 11, 11 ( D) 11, 5 20 下列字符数组初始化语句中,不正确的是 ( )。 ( A) char c=goodmorning
8、( B) char c20=“goodmorning“; ( C) char c=a, b, c, d; ( D) char c=“ffgoodmorning“; 21 下列程序执行后的输出结果是 ( )。 main() char x=0xFFFF; printf(“ d n“, x-); ( A) -32767 ( B) FFFE ( C) -1 ( D) -32768 22 下面的函数调用语句中 func甬数的实参个数是 ( )。 func(f2v1, v2), (v3, v4, v5), (v6, max(v7, v8) ( A) 3 ( B) 4 ( C) 5 ( D) 8 23 语句
9、 “printf(“a bre“ hi y bou n“)”;的输出结果是 ( )。 ( A) a bre hi y bou ( B) a bre hi y bou ( C) rehiyou ( D) abrehiy bou 24 下面程序输出的是 ( )。 main() int t=1; fun(fun(t); fun(int h) static int a3=1, 2, 3); int k; for(k=0; k 3; k+)ak+=ak-h; for(k=0; k 3; k+)printf(“ d“, ak); printf(“ n“); return(ah); ( A) 1, 2, 3
10、, 1, 5, 9, ( B) 1, 3, 5, 1, 3, 5, ( C) 1, 3, 5, 0, 4, 8, ( D) 1, 3, 5, 1, 3, 7, 25 以下叙述中正确的是 ( )。 ( A)预处理命令行必须位于 C源程序的起始位置 ( B)在 C语言中,预处理命令行都以 “#”开头 ( C)每个 C程序必须在开 头包含预处理命令行: #include ( D) C语言的预处理不能实现宏定义和条件编译的功能 26 为了避免在嵌套的条件语句 if else中产生二义性, C语言规定, else子句总是与( )配对。 ( A)缩排位置相同 if ( B)其前面最近的 if ( C)其后
11、面最近的 if ( D)同一行上的 if 27 设有下列程序段: char str=“HelloWorld“; char*ptr; ptr=str; 执行上面的程序段后, *(ptr+10)的值为 ( )。 ( A) 0 ( B) 0 ( C)不确定的值 ( D) 0的地址 28 有以下程序: void swap(char*x, char*y) char t; t=*x; *x=*y; *y=t; main() char*s1=“abc“, *s2=“123“; swap(s1, s2); printf(“ s, s n“, s1, s2); 程序执行后的输出结果是 ( )。 ( A) 123
12、, abc ( B) abc, 123 ( C) 1bc, a23 ( D) 321, cba 29 下列程序的运行结果是 ( )。 #include main() static char a=“Languagef“, b=“programe“; char*p1, *p2; int k; p1=a; p2=b; for(k=0; k =8; k+) if(*(p1+k)=*(p2+k) printf(“ c“, *(p1+k); ( A) gae ( B) ang ( C) program ( D)有语法错 30 下列程序的运行结果为 ( )。 #define MAX(x, y) (x) (y
13、)?(x): (y) main() int a=2, b=3, c=1, d=3, t; printf(“ d n“, (MAX(a+b, c+d)*100); ( A) 500 ( B) 5 ( C) 4 ( D) 400 31 下列说法正确的是 ( )。 ( A)在 C语言中,可以使用动态内存分 配技术定义元素个数可变的数组 ( B)在 C语言中,数组元素的个数可以不确定,允许随机变动 ( C)在 C语言中,数组元素的数据类型可以不一致 ( D)在 C语言中,定义一个数组后,就确定了它所容纳的元素的个数 32 表达式 “0x11”的值是 ( )。 ( A) 0xFFEE ( B) 0x71
14、 ( C) 0x0071 ( D) 0xFFE1 33 下列程序的输出结果是 ( )。 main() int p8=11, 12, 13, 14, 15, 16, 17, 18, i=0, j=0; while(i+ 7) if(pi 2)j+=pi; printf(“ d n“, j); ( A) 42 ( B) 45 ( C) 56 ( D) 60 34 下列程序的输出结果是 ( )。 #include #include void fun(int b) static int i=0; do bi+=bi+1; while(+i 2); main() int k, a5=1, 3, 5, 4
15、, 9; fun(a); for(k=0; k 5; k+)printf(“ d“, ak); ( A) 13579 ( B) 48579 ( C) 48549 ( D) 48999 35 有以下程序: main() int a=1, b=3, c=5, *p; int*p1=&a, *p2=&b, *p3=&c; *p=*p1*(*p2); printf(“ d n“, *p); 执行后的 输出结果是 ( )。 ( A) 1 ( B) 2 ( C) 3 ( D) 4 36 有以下程序: fun(int x) int P; if(x=0x=1)return(3); p=x-fun(x-2);
16、return P; main() print(“ d n“, fun(7); 程序执行后的输出结果是 ( )。 ( A) 7 ( B) 3 ( C) 2 ( D) 0 37 下述程序的运行结果是 ( )。 #include #include main() char*s1=“abDuj“; char*s2=“ABdUG“: int t; t=strcmp(s1, s2); printf(“ d“, t); ( A)正数 ( B)负数 ( C)零 ( D)不确定的值 38 下列程序中 c的二进制值是 ( )。 char a=2, b4, c; c=a b 2; ( A) 00000011 ( B)
17、 00010100 ( C) 11100 ( D) 11000 39 函数 fseek()的正确调用形式是 ( )。 ( A) fseek(位移量,起始点,文件类型指针 ); ( B) fseek(文件类型指针,位移量,起始点 ); ( C) fseek(文件类型指针,起始点,位移量 ); ( D) fseek(起始点,位移量,文件类型指针 ): 40 下列叙述正确的是 ( )。 ( A) C语言中的文件是流式文件。因此只能顺序存取数据 ( B)打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖 ( C)在一个程序中当对文件进了写操作后,必须先关闭该文件然后再打开,才能读到第
18、 1个数据 ( D)当对文件的 读 (写 )操作完成之后,必须将它关闭,否则可能导致数据丢失 41 有以下程序: main() int num44; =1, 2, 3, 4, 5, 6, 7, 8), 9, 10, , 12, , 13, 14,15, 16), i, j; for(i=0; i 4; i+) for(j=0; j i; j+)printf(“ 4c“, ”); for(j=_; j 4; j+)printf(“ 4d“, numij); printf(“ n“); 若要按以下形式输出 数组右上半三角 1 2 3 4 6 7 8 11 12 16 则在程序下划线处应填入的是 (
19、 )。 ( A) i-1 ( B) i ( C) i+1 ( D) 4-i 42 若希望下列的程序运行后输出 25,程序空白处的正确选项是 ( )。 main() int i, j=50 a=7, 4, 10, 5, 8; for( ) j+=ai; printf(“ d“, j-40); ( A) i=1; i 4; +i ( B) i=1; i 3; +i ( C) i=4; i 2; i- ( D) i=2; i 4; +i 43 在面向对象方法中,类之间共享属性和操作的机制称为 _。 44 数据的基本单位是 _。 45 常用的软件结构设计工具是结构图 (SC),也称程序结构图。其中,用
20、矩形表示_,用带空心圆的箭头表示传递的是数据。 46 函数 pi的功能是根据以下近似公式求 值: (*) 6=1+1 (2*2)+1 (3*3)+i (n*n) 现在请你在下面的函数中填空,完成求 的功能。 #include double pi(long n) double s=0, 0; long i; for(i=1; i =n; i+)s=s+_; return(sqrt(6*s); 47 x和 y都是 double型变量, x的初值为 4 0, y的初值为 2 0,则表达式pow(y, fabs(x)的 值为 _。 48 在关系模型中,二维表的行称为 _。 49 下列程序的输出结果是
21、_。 main() int a=2, b=4, c=6; int p1=&a, *p2=&b, *p; *(p=&c)=*p1*(*p2); printf(“ d n“, c); 50 下面程序的输出是 _。 main() enum em em1=3, em2=1, em3; char*aa“AA“, “BB“, “CC“, “DD“; printf(“ s s s n“, aaem1, aaem2, aaem3); 51 若 a是 int型变量,且 a的初值为 5,则计算 a+=a-=a*a表达式后 a的值为_。 52 下列程序的循环次数是 _。 x=2; do x=x*x; ) while
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 206 答案 解析 DOC
