[计算机类试卷]国家二级C语言机试(选择题)模拟试卷31及答案与解析.doc
《[计算机类试卷]国家二级C语言机试(选择题)模拟试卷31及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言机试(选择题)模拟试卷31及答案与解析.doc(23页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言机试(选择题)模拟试卷 31及答案与解析 一、选择题 1 下列叙述中正确的是 ( A)算法的效率只与问题的规模有关,而与数据的存储结构无关 ( B)算法的时间复杂度是指执行算法所需要的计算工作量 ( C)数据的逻辑结构与存储结构是一一对应的 ( D)算法的时间复杂度与空间复杂度一定相关 2 下列叙述中正确的是 ( A)线性表链式存储结构的存储空间一般要少于顺序存储结构 ( B)线性表链式存储结构与顺序存储结构的存储空间都是连续的 ( C) 线性表链式存储结构的存储空间可以是连续的,也可 以是不连续的 ( D)以上说法均错误 3 某二叉树共有 12个结点,其中叶子结点只有 1个。
2、则该二叉树的深度为(根结点在第 1层) ( A) 3 ( B) 6 ( C) 8 ( D) 12 4 对长度为 n的线性表作快速排序,在最坏情况下,比较次数为 ( A) n ( B) n-1 ( C) n(n-1) ( D) n(n-1)/2 5 结构化程序设计中,下面对 goto语句使用描述正确的是 ( A)禁止使用 goto语句 ( B)使用 goto语句程序效率高 ( C)应避免滥用 goto语句 ( D)以上说法均错误 6 下面不属于软件测试实施步骤的是 ( A)集成测试 ( B)回归测试 ( C)确认测试 ( D)单元测试 7 下面不属于软件需求分析阶段主要工作的是 ( A)需求变更
3、申请 ( B)需求分析 ( C)需求评审 ( D)需求获取 8 一般情况下,当对关系 R和 S进行自然连接时,要求 R和 S含有一个或者多个共有的 ( A)记录 ( B)行 ( C)属性 ( D)元组 9 有三个关系 R、 S和 T如下: 则由关系 R和 S得到关系 T的操作是 ( A)选择 ( B)差 ( C)交 ( D)并 10 有表示公司和职员及 工作的三张表,职员可在多家公司兼职。其中公司 C(公司号,公司名,地址,注册资本,法人代表,员工数),职员 S(职员号,姓名,性别,年龄,学历),工作 W(公司号,职员号,工资),则表 W的键(码)为 ( A)公司号,职员号 ( B)职员号,工
4、资 ( C)职员号 ( D)公司号,职员号,工资 11 以下叙述中正确的是 ( A)每个后缀为 .C的 C语言源程序都可以单独进行编译 ( B)每个后缀为 .C的 C语言源程序都应该包含一个 main函数 ( C)在 C语言程序中, main函数必须放在其他函数的最前面 ( D)在 C语 言程序中,只有 main函数才可单独进行编译 12 C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是 ( A)关键字可用作用户标识符,但失去原有含义 ( B)预定义标识符可用作用户标识符,但失去原有含义 ( C)在标识符中大写字母和小写字母被认为是相同的字符 ( D)用户标识符可以由字母
5、和数字任意顺序组成 13 以下选项中合法的常量是 ( A) 9 9 9 ( B) 2.7e ( C) 0Xab ( D) 123E 0.2 14 C语言主要是借助以下哪种手段来实现程序模块化 ( A) 定义函数 ( B)定义常量和外部变量 ( C)使用丰富的数据类型 ( D)使用三种基本结构语句 15 以下叙述中错误的是 ( A)数值型常量有正值和负值的区分 ( B)常量可以用一个符号名来代表 ( C)定义符号常量必须用类型名来设定常量的类型 ( D)常量是在程序运行过程中值不能被改变的量 16 若有定义和语句: int a, b; scanf(“%d,%d,“, 以下选项中的输入数据,不能把
6、值 3赋给变量 a、 5赋给变量 b的是 ( A) 3,5,4 ( B) 3,4,5 ( C) 3,5, ( D) 3 ,5 17 C语言中 char类型数据占字节数为 ( A) 1 ( B) 2 ( C) 3 ( D) 4 18 下列关系表达式中,结果为 “假 “的是 ( A) 3 = 4 ( B) (3 4) = 1 ( C) (3 + 4) 6 ( D) (3 != 4) 2 19 若以下选项中的变量 a, b, y均已正确定义并赋值,则语法正确的 switch语句是 ( A) switch( a*a+b*b ) default : break; case 3 : y=a+b; brea
7、k; case 2 : y=a-b; break; ( B) switch( a+b ) case1 : case3 : y=a+b; break; case0 : case4 : y=a-b; ( C) switch (a+9) case a : y=a-b; case b : y=a+b; ( D) switch a*b case 10 : y=a+b; default : y=a-b; 20 有以下程序 #include main() int a = -2, b = 0; while (a+ printf(“%d,%dn“, a, b ); 程序运行后输出结果是 ( A) 0,2 ( B
8、) 0,3 ( C) 1,3 ( D) 1,2 21 设有定义: int x=0, *p; 紧接着的赋值语句正确的是 ( A) *p=NULL; ( B) p=NULL; ( C) p=x; ( D) *p=x; 22 下列叙述中正确的是 ( A)空字符串不占用内存,其内存空间大小是 0 ( B)两个连续的单引号( )是合法的字符常量 ( C)可以对字符串进行关系运算 ( D)两个连续的双引号( “)是合法的字符串常量 23 有以下程序 #include main() char a=H; a = ( a =A printf(“%cn“, a ); 程序运行后的输出结果是 ( A) H ( B)
9、 h ( C) A ( D) a 24 有以下程序 #include int f( int x ); main() int a, b=0; for ( a=0; a 3; a+=1 ) b += f (A); putchar(A+b); int f( int x ) return x*x+1; 程序运行后输出结果是 ( A) ABE ( B) BCD ( C) BDI ( D) BCF 25 设有定义: int x23; 则以下关于二维数组 x的叙述错误的是 ( A)元素 x0可看作是由 3个整型元素组成的一维数组 ( B)数组 x可以看作是由 x0和 x1两个元素组成的一维数组 ( C)可以
10、用 x0=0;的形式为数组所有元素赋初值 0 ( D) x0和 x1是数组名,分别代表一个地址常量 26 设 p是指针变量,语句 p = NULL;等价于 ( A) p = 0; ( B) p = ; ( C) p = “; ( D) p = 0; 27 有以下程序 #include main() int a = 10,20,30,40 , *p=a, i ; for( i=0; i =3; i+ ) ai = *p; p+; printf(“%dn“, a2 ); 程序运行后的输出结果是 ( A) 10 ( B) 20 ( C) 30 ( D) 40 28 有以下程序 #include #d
11、efine N3 void fun( int aN, int b ) int i, j; for( i=0; i N; i+ ) bi = ai0; for( j=1; j N; j+ ) if ( bi aij ) bi = aij; main() int xNN = 1, 2, 3, 4, 5, 6, 7, 8, 9, yN ,i; fun( x, y ); for ( i=0; i N; i+ )printf( “%d,“, yi ); printf( “n“ ); 程序运行后的输出结果是 ( A) 3,5,7 ( B) 1,3,5, ( C) 2,4,8, ( D) 3,6,9, 29
12、 有以下程序( strcpy为字符串复制函数, strcat为字符串连接函数 ) #include #include main() char a10 = “abc“, b10 = “012“, c10 = “xyz“; strcpy( a+1, b+2 ); puts( strcat( a, c+1 ) ); 程序运行后的输出结果是 ( A) a12xyz ( B) bc2yz ( C) a2yz ( D) 12yz 30 以下选项中,没有编译错误的是 ( A) char str3 = d, e, b, u, g, 0; ( B) char str15 = “pass“, str26; str
13、2 = str1; ( C) char name10; name = “china“; ( D) char str4; str4 = “hello world“; 31 有以下程序 #include main() char *s=“12134“; int k=0, a=0 ; while( s k +1 ) k+; if ( k % 2 =0 ) a = a + ( s k - 0 +1 ) ; continue; a = a + ( s k - 0 ); printf (“ k=%d a=%dn“, k, a ); 程序运行后的输出结果是 ( A) k=5 a=15 ( B) k=4 a=1
14、2 ( C) k=6 a=11 ( D) k=3 a=14 32 有以下程序 #include main() char a510 = “one“, “two“, “three“, “four“, “five“ ; int i, j; char t; for ( i=0; i 2; i+ ) for ( j=i+1; j 5; j+ ) if ( ai0 a j0 ) t=ai0; ai0=aj0; aj0=t; puts(a1); 程序运行后的输出结果是 ( A) owo ( B) fwo ( C) two ( D) fix 33 有以下程序 #include int a=1, b=2; vo
15、id fun1( int a, int b ) printf( “%d %d “ ,a, b ); void fun2() a=3; b=4; main() fun1(5,6); fun2( ); printf( “%d %dn“,a, b ); 程序运行后的输出结果是 ( A) 5 6 1 2 ( B) 3 4 5 6 ( C) 1 2 5 6 ( D) 5 6 3 4 34 有以下程序 #include void func( int n ) static int num = 1; num += n; printf(“%d “, num); main() func(3); func(4);
16、printf(“n“); 程序运行后的输出是 ( A) 4 5 ( B) 4 8 ( C) 3 5 ( D) 3 4 35 有以下程序 #include #include void fun( int *p1, int *p2, int *s) s=( int*)calloc(1,sizeof(int); *s=*p1+*p2; free(s); main() int a2=1,2, b2=40,50,*q=a; fun(a,b,q); printf(“%dn“, *q); 程序运行后的输出结果是 ( A) 42 ( B) 41 ( C) 1 ( D) 0 36 有以下程序 #include s
17、truct STU char name9; char sex; int score2; ; void f( struct STU a ) struct STU b = “Zhao“, m, 85, 90; a1 = b; main() struct STU c2= “Qian“, f, 95, 92, “Sun“, m, 98, 99 ; f(c); printf( “%s,%c,%d,%d,“, c0.name, c0.sex, c0.score0, c0.score1 ); printf( “%s,%c,%d,%dn“, c1.name, c1.sex, c1.score0, c1.sco
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 选择题 模拟 31 答案 解析 DOC
