[计算机类试卷]国家二级(C语言)笔试模拟试卷207及答案与解析.doc
《[计算机类试卷]国家二级(C语言)笔试模拟试卷207及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)笔试模拟试卷207及答案与解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)笔试模拟试卷 207 及答案与解析 1 结构化分析方法是面向 ( )的自顶向下、逐步求精进行需求分析的方法。 ( A)对象 ( B)数据结构 ( C)数据流 ( D)目标 2 对线性表进行二分法检索,其前提条件是 ( )。 ( A)线性表以顺序方式存储,并按关键码值排好序 ( B)线性表以顺序方式存储,并按关键码的检索频率排好序 ( C)线性表以链式方式存储,并按关键码值排好序 ( D)线性表以链式方式存储,并按关键码的检索频率排好序 3 结构化程序设计的 3种结构是 ( )。 ( A)顺序结构、选择结构、转移结构 ( B)分支结构、等价结构、循环结构 ( C)多分支结构、
2、赋值结构、等价结构 ( D)顺序结构、选择结构、循环结构 4 已知数据表 A中每个元素距其最终位置不远,为了节省时间,应采用的算法是( )。 ( A)堆排序 ( B)直接插入排序 ( C)快速排序 ( D)直接选择排序 5 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是 ( )。 ( A)数据库系统 ( B)文件系统 ( C)人工管理 ( D)数据项管理 6 设有如图所示二叉树,对此二叉树后序遍历的结果为 ( )。( A) ZBTYCPXA ( B) ATBZXCYP ( C) TZBACYXP ( D) ATBZXCPY 7 链表不具
3、有的特点是 ( )。 ( A)不必事先估计存储空间 ( B)可随机访问任意元素 ( C)插入、删除不需要移动元素 ( D)所需空间与线性表长度成正比 8 在数据库设计中,将 E-R图转换为关系模式的过程属于 ( )。 ( A)需求分析阶段 ( B)逻辑设计阶段 ( C)概念设计阶段 ( D)物理设 计阶段 9 C语言可执行程序的开始执行点是 ( )。 ( A)包含文件中的第一个函数 ( B)程序中第一个函数 ( C)程序中的 main()函数 ( D)程序中第一条语句 10 在 C语言程序中可用做用户标识符的是 ( )。 ( A) void 123 BBN ( B) aa _abc cas (
4、 C) as+b3 -123 If ( D) 6f Do SIG 11 下列叙述中正确的是 ( )。 ( A) break语句只能用于 switch语句体中 ( B) continue语句的作用是使程序的 执行流程跳出包含它的所有循环 ( C) break语句只能用在循环体内和 switch语句体内 ( D)在循环体内使用 break语句和 continue语句的作用相同 12 已知大写字母 A的 ASCII码是 65,小写字母 a的 ACSII码是 97。下列能将变量 c中的大写字母转换为对应小写字母的语句是 ( )。 ( A) c=(c-A) 26+A ( B) c=c+32 ( C) c
5、=c-A+A ( D) c=(A+C) 26-a 13 下列叙述中正确的是 ( )。 ( A)在赋值表达式中 ,赋值号的左边既可以是变量,也可以是任意表达式 ( B)实型变量中允许存放整型数 ( C)若 a和 b类型相同,在执行赋值 a=b后, b中的值将放入 a中,但 b中的值不变 ( D)在 c程序中,求余算符 “ ”两边的类型相同时才能进行运算 14 若有说明 “char s130=“abc“, s2=“defghi“; ”,则在使用函数 stcat(s1, s2)后,结果是 ( )。 ( A) s1的内容更新为 abedefghi ( B) s1的内容更新为 defghi 0 ( C)
6、 s1的内容更新为 defghiabc 0 ( D) s1的内容更新为 abcdefghi 0 15 已知 i、 j、 k为 int型变量,若要从键盘输入 2、 3、 4,使 i、 j、 k的值分别为 2、 3、 4,下列正确的输入语句是 ( )n ( A) seanf(“ 3d, 3d, 3d“, &i, &i, k); ( B) scanf(“ d, d, d“, &i, &j, &k); ( C) scanf(“ d d d“, &i, &j, &k); ( D) scanf(“i= d, i= d, k= d“, &i, &j, &k); 16 下列程序的执行结果是 ( )。 #inc
7、lude main() int a, b, C; a=b=2, c=1; c=(a+)-1; printf(“ d, d“, a, c); c+=-a+(+b); printf(“ d, d“, a, c); ( A) 3, 14, 1 ( B) 3, 14, 2 ( C) 2, 04, 1 ( D) 2, 14, 1 17 有以下程序: main() int a=0, b=0; a=10; *给 a赋 值 b=20; 给 b赋值 * printf(“a十 b= d n“, a+b);输出计算机结果 程序运行后的输出结果是 ( )。 ( A) a+b=10 ( B) a+b=30 ( C) 3
8、0 ( D)出错 18 有以下程序: int fun(int x, int y)return(x+y); main() int a=1, b=2, c=3, sum; sum=fun(a+, b+, a+b), c+); printf(“ d n“, sum); 执行后的输出结果是 ( )。 ( A) 6 ( B) 7 ( C) 8 ( D) 9 19 有以下程序: main() int a=0, b=10, c=0, d=0; if(a=1)b=1; c=2; else d=3; printf(“ d, d, d, d n“, a, b c, d); 程序输出 ( )。 ( A) 0, 1,
9、 2, 0 ( B) 0, 0, 0, 3 ( C) i, 1, 2, 0 ( D)编译有错 20 在 16位编译系统上,若有定义 “int a=10, 20, 30, *p=&a; ”,当执行“p+; ”后,下列说法错误的是 ( )。 ( A) p向高地址移了一个字节 ( B) p向高地址移了一个存储单元 ( C) p向高地址移了两个字节 ( D) p与 a+1等价 21 执行下面的程序后, a的值为 ( )。 main() int a, b; for(a=1, b=1, a =10; a+) if(b 3=1) b+=3; continue; b-=5; ( A) 7 ( B) 8 ( C
10、) 9 ( D) 10 22 下列叙述中正确的是 ( )。 ( A)用 ER图能够表示实体集之间一对一的联系、一对多的联系、多对多的联系 ( B)用 ER图只能表示实体集之间一对一的联系 ( C)用 ER图只能表示实体集之间一对多的联系 ( D)用 ER图表示的概念数据模型只能转换为关系数据模型 23 若有运算符:、 =、 sizeof,则它们按优先级 (由高至低 )的正确排列顺序为 ( )。 ( A)、 sizeof、 = ( B) sizeof、 =、 ( C) sizeof、 = ( D) sizeof、 = 24 若变量 a, b已正确定义,且 b已正确赋值,则合法的语句是 ( )。
11、( A) b=double(b); ( B) (int)a=(int)b; ( C) a=a+=5; ( D) a=double(b); 25 执行下列程序中的输出语句后, a的值是 ( )。 main() int a; printf(“ d n“, (a=2*3, a*5, a+7); ( A) 17 ( B) 37 ( C) 6 ( D) 13 26 运行下列程序时,若输入的数据为 “1, 2, 3”,则输出结果是 ( )。 main() float a, b, c, t; scanf(“ f, f, f“, &a, &b, &c); if(a b) t=a; a=b; b=t; if(a
12、 c) t=a; a=c; c=t; it(b c) t=b; b=c; c=t; ) printf(“ f n f n f n“, a, b, c); ( A) 1 00 2 00 3 00 ( B) 1 00 3 00 2 00 ( C) 1 3 2 ( D) 3 00000 2 00000 1 00000 27 设有程序段: int k=12: while(k=1) k=k-1; 则下列描述中正确的是 ( )。 ( A) while循环执行 10次 ( B)循环是无限循环 ( C)循环体语句一次也不执行 ( D)循环体语句执行一次 28 在执行完下列的 C语句段之后,则 B的值是 ( )
13、。 char a=A; int b; B=(34&56)&(a b); ( A) 0 ( B) 1 ( C) TRUE ( D) FALSE 29 有下列函数定义: fun(float h) printf(“ f, f n“, h, h*h); 该函数的类型是 ( )。 ( A) int类型 ( B) float类型 ( C) vold类型 ( D)函数无类型说明,定义有错 30 有下列程序段: int n, t=1, S=0; scanf(“ d“, &n); dos=s+t; t=t-2; while(t!=n); 为使此程序段不陷入循环,从键盘输入的数据应该是 ( )。 ( A)任意正奇
14、数 ( B)任意负偶数 ( C)任意正偶数 ( D)任意负奇数 31 若有说明语句: double*p, a;则通过 scanf语句正确给输入项读入数据的程序段是 ( )。 ( A) *p=&a; scanf(“ if“, p); ( B) *p=&a; scanf(“ f“, p); ( C) p=&a; scanf(“ 1f“, *p); ( D) p=&a; scanf(“ 1f“, p); 32 下列程序的输出结果是 ( )。 #include main() int a23=1, 2, 3), 4, 5, 6, (*p)3, i; p=a: for(i=0; i 3; i+) if(i
15、 2) p1i=p1i-1; else p1i=1; printf(“ d n“, a01+a11+a12); ( A) 8 ( B) 7 ( C) 12 ( D) 9 33 执行下列程序后,输出的结果是 ( )。 #include #define S(X) X*X void main() int a=9, k=3, m=2; a =S(k+m) S(k+m): printf(“ d“, a); ( A) 1 ( B) 4 ( C) 9 ( D) 0 34 设 x=015,则 x=x 017的值是 ( )。 ( A) 00001111 ( B) 11111101 ( C) 00000010 (
16、 D) 11000000 35 若 fp是指向某文件的指针,且尚未读到文件末尾,则函数 feof(fp)的返回值是( )。 ( A) EOF ( B) -1 ( C)非零值 ( D) 0 36 设变量 a、 b、 c、 d和 y都已正确定义并赋值。若有以下 if语句: if(a b) if(c=d) y=0; else y=1; 该语句所表示的含义是 ( )。 ( A) y=0, a b且 c=d y=1, ab ( B) y=0, a b且 c=d y=1, ab且 cd ( C) y=0, a b且 c=d y=1, a b且 cd ( D) y=0, a b且 c=d y=1, cd 3
17、7 下列程序的运行结果是 ( )。 #inelude void main() int s=0, k; for(k=7; k 1; k-) switch(k) case 1: case 4: case 7: s+; break; case 2: case 3: case 6: break; case 0: case 5: s+=2; break; printf(“s= d“, s); ( A) s=3 ( B) s=4 ( C) s=5 ( D)无输出结果 38 若 i、 j已定义成 int型,则下列程序段中内循环体的总执行次数 是 ( )。 for(i=6; i 0; i-) for(j=0;
18、 j 4; j+) ( A) 20 ( B) 24 ( C) 25 ( D) 30 39 下列叙述中正确的是 ( )。 ( A)只能在循环体内和 switch语句体内使用 break语句 ( B) cotinue语句的作用是结束整个循环的执行 ( C)在循环体内使用 break语句或 continue语句的作用相同 ( D)从多层循环嵌套中退出时,只能使用 goto语句 40 有以下程序: #include void WriteStr(char*fn, char*str) FILE*fp; fp=fopen(fn, “w“); fputs(str, fp); fclose(fp); main(
19、) WriteStr(“t1 dat“, “start“); WriteStr(“t1 dat“, “end“); ) 程序运行后,文件 t1 dat中的内容是 ( )。 ( A) start ( B) end ( C) startend ( D) endrt 41 全面支持软件开发过程的软件工具集合称为 _。 42 数据模型分为格式化模型与非格式化模型,层次模型与网状模型属于_。 43 冒泡排序算法在最好的情况下元素交换次数为 _次。 44 若想通过以下输入语句给 a赋予 1,给 b赋予 2,则输入数据的形式应该是_。 int a, b; scanf(“a= d, b= d“, &a, &b
20、); 45 数据的独立性分为逻辑独立性与 _。 46 在关系运算中, _运算是在指定的关系中选取所有满足给定条件的元组,构成一个新的关系,而这个新的关系是原关系的一个子集。 47 在以下程序运行时若从键盘输入: 10 20 30,输出结果是 _。 #include main() (int i=0, j=0, k=0; scanf(“ d *d d“, &i, &j, &k); printf(“ d d d n“, i, j, k); 48 以下程序运行后的输出结果是 _。 main() int i=10, j=0; do j=j+i; i-; while(i 2): printf(“ d n“
21、, j); 49 以下程序的输出结果是 _。 #include int fun(int x, int y) static int m=0, i=2: i=i+1: m+=i+x+y; return m main() int j=4, m=1, k; k=fun(j, m); printf(“ d, “, k); k=fun(j, m); printf(“ d n“, k) 50 执行下列语句段后, x的值是 _。 int*p, x: x=100; p=&x; x=*p+50; 51 设有下列宏定义: #define A 2 #define B (A+3) 则执行赋值语句 “k=B*20; ”(
22、k为 int型变量 )后, k的值是 _。 52 下列程序运行后的输出结果是 _。 main() int x, a=1, b=2, c=3, d=4: x=(a b)?a: b; x=(x c)?x: c; x=(d x)?x: d; printf(“ d n“, x): 53 下列程序的功能是将输入的正整数按逆序输出。例如,若输入 135,则输入531,请填空。 #include main() int n, s; printf(“Enter a number: “); scanf(“ d“, &n): printf(“Output: “); do s=n 10; printf(“ d“, s
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 笔试 模拟 207 答案 解析 DOC
