[计算机类试卷]国家二级(C语言)笔试模拟试卷147及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷147及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷147及答案与解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 147及答案与解析 1 按照 “先进后出 ”原则组织数据的数据结构是 ( )。 ( A)队列 ( B)栈 ( C)双向链表 ( D)二叉树 2 线性表常采用的两种存储结构是 ( )。 ( A)顺序存储结构和链式存储结构 ( B)散列方法和索引方式 ( C)链表存储结构和数组 ( D)线性存储结构和非线性存储结构 3 树是结点的集合,它的根结点的数目是 ( )。 ( A)有且只有 1个 ( B) 1或多于 1 ( C) 0或 1 ( D)至少有 2个 4 已知一个有序 线性表为 (13,18,24,35,47,50,62,83,90,115,134),当用二分法
2、查找值为 90的元素时,查找成功的比较次数为 ( )。 ( A) 1 ( B) 2 ( C) 3 ( D) 9 5 结构化程序设计主要强调的是 ( )。 ( A)程序的规模 ( B)程序的效率 ( C)程序设计语言的先进性 ( D)程序的易读性 6 结构化程序设计的核心和基础是 ( )。 ( A)结构化分析方法 ( B)结构化设计方法 ( C)结构化设计理论 ( D)结构化编程方法 7 在面向对象的方法 中, ( )描述的是具有相似属性与操作的一组对象。 ( A)属性 ( B)事件 ( C)方法 ( D)类 8 需求分析阶段的任务是 ( )。 ( A)软件开发方法 ( B)软件开发工具 ( C
3、)软件开发费用 ( D)软件系统功能 9 有下列二叉树,对此二叉树前序遍历的结果为 ( )。 ( A) ACFXDBEYZ ( B) ABEFXYZCD ( C) ABCDEFXYZ ( D) ABDYECFXZ 10 设 R是一个二元关系, S是一个三元关系,则下列运算中正确的是 ( )。 ( A) R-S ( B) RS ( C) RNS ( D) RUS 11 下列说法不正确的是 ( )。 ( A)一个 C语言源程序可以由一个函数组成也可以由多个函数组成 ( B) main()中的 “()”是函数的参数部分,括号内可为空,但括号不能省略 ( C) C语言程序是以函数为基本单位的 ( D)
4、在 C语言程序中,注释行只能位于一条语句的后面 12 sizeof(float)是 ( )。 ( A)一种函数调用 ( B)一种函数定义 ( C)一个浮点表达式 ( D)一个整型表达式 13 下列合法的声明语句是 ( )。 ( A) int_abc 50; ( B) double int 3+5e2.5; ( C) long do 1L; ( D) float 3_asd 3e-3; 14 下列叙述中正确的是 ( )。 ( A)在赋值表达式中,赋值号的左边既可以是变量,也可以是任意表达式 ( B)实型变量中允许存放整型数 ( C)若 a和 b类型相同,在执行了赋值 a b后, b中的值将放入
5、a中,但 b中的值不变 ( D)在 c程序中,求余运算符 “%”两边的类型相同时才能进行运算 15 设 x、 y和 z是 int型变量,且 x 4,y 6,z 8,则下列表达式中值为 0的是( )。 ( A) x ( B) charc 32; ( C) float f f+1.1; ( D) doublex 12.3E2.5; 18 若 ch为 char型变量, k为 int型变量 (已知字符 a的 ASCII码是 97),则执行下列语句后输出的结果为 ( )。 ch b; k 10; printf(“%x,%o,“,ch,ch,k); printf(“k %dn“,k); ( A)因变量类型
6、与格式描述符的类型不匹配,输出无定值 ( B)输出项与格式描述符个数不符,输出为 0值或不定值 ( C) 62,142,k %d ( D) 62,142,k %10 19 有下列程序: fun(int x,inty)retum(x+y); main() int a 1,b 2,c 3,sum; stun fun(a+,b+,a+b) ,c+); printf(“%dn“,sum); 执行后的输出 结果是 ( )。 ( A) 6 ( B) 7 ( C) 8 ( D) 9 20 main() int a 4,b 5,c; ifa B) c a*b;printf(“%d,%d,%dn“,b,a,c)
7、; else c b/a;printf(“%d,%d,%dn“,b,a,c); ( A) 4,5,12 ( B) 20 ( C) 5,4,20 ( D) 12 21 下列程序的输出结果是 ( )。 main() int i 1,j 2,k 3; if(i+ 1 ( A) 1 2 3 ( B) 2 3 4 ( C) 2 2 3 ( D) 2 3 3 22 下列程序的输出结果是 ( )。 #include stdio.h main() int a 0,i; for(i 1;i 5;i+) Switch(i) case 0: case 3:a+ 1; case 1: case 2:a+ 2; def
8、ault:a+ 3; printf(“%d“,a) : ( A) 19 ( B) 18 ( C) 6 ( D) 8 23 在 C语言中, while和 dowhile 循环的主要区别是 ( )。 ( A) dowhile 的循环体不能是复合语句 ( B) dowhile 允许从循环体外转到循环体内 ( C) while的循环体至少被执行一次 ( D) dowhile 的循环体至少被执行一次 24 若各选项中所用变量己正确定义, fun()函数中通过 return语句返回一个函数值,下列选项中错误的程序是 ( )。 ( A) main() x fun(2,10); float fun(int a
9、,int b) ( B) float fun(int a,int b) main() x fun(i,j); ( C) float fun(int,int); main() x fun(2,10); float fun(int a,int B) ( D) main() float fun(int I,intj); x fun(i,j); float fun(int a,int b) 25 判断 char型变量 c1是否为小写字母的正确表达式为 ( )。 ( A) a c1 Z ( B) (c1 A) c1 z) ( C) (a c1(“z“ c1) ( D) (c1 a) while(-k)
10、printf(“%d“,k- 3); printf(“n“); 执行后的输出结果是 ( )。 ( A) 1 ( B) 2 ( C) 4 ( D)死循环 27 若函数调用时,参数为基本数据类型的变量,下列叙述中正确的是 ( )。 ( A)实参与其对应的形参共占存储单元 ( B)只有当实参与其 对应的形参同名时才共占存储单元 ( C)实参与其对应的形参分别占用不同的存储单元 ( D)实参将数据传递给形参后,立即释放原先占用的存储单元 28 在 C语言程序中,下列说法正确的是 ( )。 ( A)函数的定义和函数的调用均可以嵌套 ( B)函数的定义不可以嵌套,但函数的调用可以嵌套 ( C)函数的定义可
11、以嵌套,但函数的调用不可以嵌套 ( D)函数的定义和函数的调用均不可以嵌套 29 下列说法中不正确的是 ( )。 ( A)指针是一个变量 ( B)指针中存放的是数值 ( C)指针可以进行加、 减等算术运算 ( D)指针变量占用存储空间 30 若有定义和语句: int*pp,*p,a 20,b 10; pp p p printf(“%d,%dn“,*p,*pp); 则输出结果是 ( )。 ( A) 20,10 ( B) 20,20 ( C) 10,20 ( D) 10,10 31 下列二维数组的说明中,不正确的是 ( )。 ( A) floata4 0,1,8,5,9; ( B) inta34;
12、 ( C) #define N 5 ( D) inta29.5; float aN3; 32 若有定义: “inta2 3; ”则对 a数组的第 i行第 j列元素的正确引用为 ( ) ( A) *(a+i)+j) ( B) (a+i)j ( C) *(a+i+j) ( D) *(a+i)+j 33 下列能正确进行字符串赋值的是 ( )。 ( A) chars5 “ABCDE“; ( B) char s5+A,B,C,D,E), ( C) char*s;s “ABCDE“; ( D) char*s;printf(“%SS); 34 若有说明 chars130 “abc“,s2 “defghi“;
13、,则在使用函数 strcat(s1,s2)后,结果是 ( ) ( A) s1的内容更新为 abcdefghi ( B) s1的内容更新为 defghi0 ( C) s1的内容更新为 defghiabc0 ( D) s1的内容更新为 abcdefghi0 35 设有变量说明 int(*p)m,其中的标识符 p是 ( )。 ( A) m个指向整型变量的指针 ( B)指向 m个整型变量的指针 ( C)一个指向具有 m个整型元素的一维数组的指针 ( D)具有 m个指针元素的一维指针数组,每个元素都指向整型变量 36 下列描述中正确的是 ( )。 ( A)在 C语言程序中预处理是指完成宏替换和文件包含指
14、定的文件的调用 ( B)预处理指令只能位于 C源程序文件的首部 ( C)预处理命令可以放在程序中的任何位置 ( D)预处理命令结尾需要加分号 37 若有结构体定义: struct stuint num; char sex; int age; al,a2; 则下列 语句中错误的是 ( )。 ( A) printf(“%d,%C,%d“,a1); ( B) a2.age a1.age; ( C) a1.age+; ( D) a1.num 5; 38 C语言结构体类型变量在程序执行期间 ( )。 ( A)所有成员一直驻留在内存中 ( B)没有成员驻留在内存中 ( C)部分成员驻留在内存中 ( D)只
15、有一个成员驻留在内存中 39 在位运算中,操作数每右移两位,其结果相当于 ( )。 ( A)操作数乘以 2 ( B)操作数除以 2 ( C)操作数除以 4 ( D)操作数乘以 4 40 在 “文件包含 ”预处理语句的使用形式中,当 #include后面的文件名用 “(双撇号 )括起时,寻找被包含文件的方式是 ( )。 ( A)直接按系统设定的标准方式搜索目录 ( B)先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜索 ( C)仅仅搜索源程序所在目录 ( D)仅仅搜索当前目录 41 在数据的存储结构中,不仅需要存储各数据元素的信息,还要存放各元素之间_的信息。 42 按照 “先进先出
16、 ”的原则组织数据的结构是 _。 43 深度为 5的满二叉树中,叶子结点的个数为 _。 44 在面向对象的方法中, _描述的是具有相似属性与操作的一组对象。 45 Jackson方法是一种面向 _的结构化方法。 46 若 x和 a均是血型变量,则计算完 x=(a=4,6*2) 后的 x值为 _。 47 若 a是 int型变量,则下列表达式的值为 _。 (a=2*3,a*2) ,a+4 48 下列程序段是从键盘输入的字符中统计小写字母的个数,用换行符结束循环。请填空。 int n=0,c; c=getchar(); while(c!=n) if(_) n+; 49 下列程序的运行结果是 _。 #
17、include stdio.h main() int a,b,c,n; a=2;b=0;C=1;n=1; while(n =3) C=C*a;b=b+C;+n; printf(“b=%d“,B) ; 50 下列程序的输出结果是 _。 main() int i=0,a=0; while(i 20) for(;) if(i%10) =0) break; else i-; i+=11; a+=i; printf(“%dn“,A) ; 51 下列程序的运行结果是 _。 #include stdio.h longfunc(int x) long p; if(x=0x=1) return(1) ; p=x
18、*func(x-1) ; return(p); main() printf(“%dn“,func(4) ); 52 下列程序将二维数组 a的行和列元素互换后存放到另一个二维数组 b中。请填空。 main() int a23=1,2,3,4,5,b32,i,j; for(i=0;i 2;i+) for(j=0;j 3;j+) _, 53 下列程序的运行结果是 _。 #include stdio.h main() int fun(); fun(); fun() static int a4=1,2,3,4; int i; for(i=0;i 4;i+)ai+=ai; for(i=0;i 4;i+)p
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 147 答案 解析 DOC
