[计算机类试卷]国家二级C语言机试(选择题)模拟试卷51及答案与解析.doc
《[计算机类试卷]国家二级C语言机试(选择题)模拟试卷51及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言机试(选择题)模拟试卷51及答案与解析.doc(23页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言机试(选择题)模拟试卷 51及答案与解析 一、选择题 1 对长度为 n的线性表作快速排序,在最坏情况下,比较次数为 ( A) n ( B) n-1 ( C) n(n-1) ( D) n(n-1)/2 2 某二叉树共有 12个结点,其中叶子结点只有 1个。则该二叉树的深度为(根结点在第 1层) ( A) 3 ( B) 6 ( C) 8 ( D) 12 3 下列叙述中正确的是 ( A)线性表链式存储结构的存储空间一般要少于顺序存储结构 ( B)线性表链式存储结构与顺序存储结构的存储空间都是连续的 ( C) 线 性表链式存储结构的存储空间可以是连续的,也可以是不连续的 ( D)以上说
2、法均错误 4 下列叙述中正确的是 ( A)算法的效率只与问题的规模有关,而与数据的存储结构无关 ( B)算法的时间复杂度是指执行算法所需要的计算工作量 ( C)数据的逻辑结构与存储结构是一一对应的 ( D)算法的时间复杂度与空间复杂度一定相关 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 以下叙述中错误的是 ( A)数值型常量有正值和负值的区分 ( B)常量可以用一个符号名来代表 ( C)定义符号常量必须用类型名来设定常量的 类型 ( D)常量是在程序运行过程中值不能被改变的量 10 C语言主要是借助以下哪种手段来实现程序模块化 ( A)定义函数 ( B)定义常量和外部变量 ( C)使用丰富的数据类型 ( D)使用三种基本结构语句 11 以下选项中合法的常量是 ( A) 9
4、9 9 ( B) 2.7e ( C) 0Xab ( D) 123E 0.2 12 C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是 ( A)关键字可用作用户标识符,但失去原有含义 ( B)预定义标识符可用作用户标识符,但失去原有 含义 ( C)在标识符中大写字母和小写字母被认为是相同的字符 ( D)用户标识符可以由字母和数字任意顺序组成 13 以下叙述中正确的是 ( A)每个后缀为 .C的 C语言源程序都可以单独进行编译 ( B)每个后缀为 .C的 C语言源程序都应该包含一个 main函数 ( C)在 C语言程序中, main函数必须放在其他函数的最前面 ( D)在 C语
5、言程序中,只有 main函数才可单独进行编译 14 有表示公司和职员及工作的三张表,职员可在多家公司兼职。其中公司 C(公司号,公司名,地址,注册资本,法人代表,员工数),职员 S(职员号,姓名,性别,年龄,学历),工作 W(公司号,职员号,工资),则表 W的键(码)为 ( A)公司号,职员号 ( B)职员号,工资 ( C)职员号 ( D)公司号,职员号,工资 15 若有定义和语句: inta,b; scanf(“%d,%d,“, 以下选项中的输入数据,不能把值 3赋给变量 a、 5赋给变量 b的是 ( A) 3,5,4 ( B) 3,5 ( C) 3,5, ( D) 3,5 16 C语言中
6、char类型数据占字节数为 ( A) 1 ( B) 2 ( C) 3 ( D) 4 17 以下 叙述中正确的是 ( A)程序必须包含所有三种基本结构才能成为一种算法 ( B)我们所写的每条 C语句,经过编译最终都将转换成二进制的机器指令 ( C)如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达 ( D)只有简单算法才能在有限的操作步骤之后结束 18 下列关系表达式中,结果为 “假 “的是 ( A) 3 = 4 ( B) (3 4) = 1 ( C) (3 + 4) 6 ( D) (3 != 4) 2 19 若以下选项中的变量 a,b,y均已正确定义并赋值,则语法正确的 sw
7、itch语句是 ( A) switch( a*a+b*b ) default : break; case 3 : y=a+b; break; 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() inta=-2,b
8、=0; while(a+ printf(“%d,%dn“,a,b); 程序运行后输出结果是 ( A) 0,2 ( B) 0,3 ( C) 1,3 ( D) 1,2 21 设有定义: intx=0,*p; 紧接着的赋值语句正确的是 ( A) *p=NULL; ( B) p=NULL; ( C) p=x; ( D) *p=x; 22 下列叙述中正确的是 ( A)空字符串不占用内存,其内存空间大小是 0 ( B)两个连续的单引号( )是合法的字符常量 ( C)可以对字符串进行关系运算 ( D)两个连续的双引号( “)是合法的字符串常量 23 有以下程序 #include main() chara=H
9、; a=(a =A printf(“%cn“,a); 程序运行后的输出结果是 ( A) H ( B) h ( C) A ( D) a 24 有以下程序 #include intf(intx); main() inta,b=0; for(a=0;a 3;a+=1) b+=f(a);putchar(A+b); intf(intx) returnx*x+1; 程序运行后输出结果是 ( A) ABE ( B) BCD ( C) BDI ( D) BCF 25 设有定义: intx23; 则以下关于二 维数组 x的叙述错误的是 ( A)元素 x0可看作是由 3个整型元素组成的一维数组 ( B)数组 x可
10、以看作是由 x0和 x1两个元素组成的一维数组 ( C)可以用 x0=0;的形式为数组所有元素赋初值 0 ( D) x0和 x1是数组名,分别代表一个地址常量 26 设 p是指针变量,语句 p=NULL;等价于 ( A) p = 0; ( B) p = ; ( C) p = “; ( D) p = 0; 27 有以下程序 #include main() inta=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 有以下程序
11、#include #defineN3 voidfun(intaN,intb) inti,j; for(i=0;i N;i+) bi=ai0; for(j=1;j N;j+) if(bi aij)bi=aij; main() intxNN=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 有以下程序( strcpy为字符串复制函数, strcat为字符串连接函数 )
12、 #include #include main() chara10=“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; str2 = str1; ( C) char name10; name = “china“; ( D) char str4
13、; str4 = “hello world“; 31 有以下程序 #include main() char*s=“12134“; intk=0,a=0; while(sk+1) k+; if(k%2=0) a=a+(sk-0+1); continue; a=a+(sk-0); printf(“k=%da=%dn“,k,a); 程序运行后的输出结果是 ( A) k=5 a=15 ( B) k=4 a=12 ( C) k=6 a=11 ( D) k=3 a=14 32 有以下程序 #include main() chara510=“one“,“two“,“three“,“four“,“five“;
14、 inti,j; chart; for(i=0;i 2;i+) for(j=i+1;j 5;j+) if(ai0 aj0) t=ai0; ai0=aj0; aj0=t; puts(a1); 程序运行后的输出结果是 ( A) owo ( B) fwo ( C) two ( D) fix 33 有以下程序 #include inta=1,b=2; voidfun1(inta,intb) printf(“%d%d“,a,b); voidfun2() a=3;b=4; main() fun1(5,6);fun2(); printf(“%d%dn“,a,b); 程序运行后的输出结果是 ( A) 5 6
15、1 2 ( B) 3 4 5 6 ( C) 1 2 5 6 ( D) 5 6 3 4 34 有以下程序 #include voidfunc(intn) staticintnum=1; num+=n; printf(“%d“,num); main() func(3); func(4); printf(“n“); 程序运行后的输出是 ( A) 4 5 ( B) 4 8 ( C) 3 5 ( D) 3 4 35 有以下程序 #include #include voidfun(int*p1,int*p2,int*s) s=(int*)calloc(1,sizeof(int); *s=*p1+*p2;
16、free(s); main() inta2=1,2,b2=40,50,*q=a; fun(a,b,q); printf(“%dn“,*q); 程序运行后的输出结果是 ( A) 42 ( B) 41 ( C) 1 ( D) 0 36 有以下程序 #include structSTUcharname9;charsex;intscore2; voidf(structSTUa) structSTUb=“Zhao“,m,85,90; a1=b; main() structSTUc2=“Qian“,f,95,92,“Sun“,m,98,99; f(c); printf(“%s,%c,%d,%d,“,c0.
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 选择题 模拟 51 答案 解析 DOC
