[计算机类试卷]国家二级(C语言)机试模拟试卷110及答案与解析.doc
《[计算机类试卷]国家二级(C语言)机试模拟试卷110及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)机试模拟试卷110及答案与解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)机试模拟试卷 110及答案与解析 一、选择题 1 有以下程序: #include main() int a=5, b=1, t; t=(a 2) b; printf(“ d n“, t); 程序运行后的输出结果是 ( )。 ( A) 21 ( B) 11 ( C) 6 ( D) 1 2 设函数中有整型变量 n,为保证其在未赋值的情况下初值为 0,应选择的存储类别是 ( )。 ( A) auto ( B) register ( C) static ( D) auto或 register 3 若有以下定义: int x10, *pt=x; 则对 x数组元素的正确引用是 ( )。
2、 ( A) *&x10 ( B) *(x+3) ( C) *(pt+10) ( D) pt+3 4 有以下程序: #include struet ord int x, y; dt2=1, 2, 3, 4; main() struet ord*p=dt; printf(“ d“, +p x); printf(“ d“, +P- y); 程序运行后的输出结果是 ( )。 ( A) 1, 2 ( B) 2, 3 ( C) 3, 4 ( D) 4, 1 5 以下函数按每行 8个输出数组中的数据: void fun(int*w, int n) int i: for(i=0; i n; i+) print
3、f(“ d“, wi); printf(“ n“); 下划线处应填入的语句是 ( )。 ( A) if(i 8=0)printf(“ n“); ( B) if(i 8=0)continue; ( C) if(i 8=0)printf(“ n“); ( D) if(i 8=0)continue; 6 有以下程序: #include int b=2; int fun(int*k) b=*k+b; return(b); main() int a10=1, 2, 3, 4, 5, 6, 7, 8, i; for(i=2; i 4; i+)b=fun(&ai)+b; printf(“ d“, b); p
4、rintf(“ n“); 程序运行后的输出结果是 ( )。 ( A) 1012 ( B) 810 ( C) 1028 ( D) 1016 7 有以下程序: #include void fun(char*s) while(*s) if(*s 2=0)printf(“ c“, *s); s+: main() char a=(“good“); fun(a); printf(“ n“); 注意:字母 a的 ASCII码值为 97,程序运行后的输出结果是 ( )。 ( A) d ( B) go ( C) god ( D) good 8 有以下程序: #include main() FILE*f; f=f
5、open(“filea txt“, “W“); fprintf(f, “abe“); fclose(f); 若文本文件 filea txt中原有内容为: hello,则运行以上程序后,文件 filea txt中的内容为 ( )。 ( A) helloabe ( B) abelo ( C) abe ( D) abchello 9 有以下程序: #include int f(int x, int y) return(y x)*x); main() int a=3, b=4, c=5, d; d=f(f(a, b), f(a, c); printf(“ d n“, d); 程序运行后的输出结果是 (
6、 )。 ( A) 10 ( B) 9 ( C) 8 ( D) 7 10 有以下程序: #include #define PT 3 5 #define S(x)PT*x*x main() int a=1, b=2; printf(“ 4 1f n“, S(a+b); 程序运行后的输出结果是 ( )。 ( A) 14 0 ( B) 31 5 ( C) 7 5 ( D)程序有错无输 出结果 11 有以下程序: #include main() int a1, a2; char c1, c2; scanf(“ d c d c“, &a1, &c1, &a2, &c2); printf(“ d, c, d
7、, e“, a1, c1, a2, c2); 若想通过键盘输入,使得 a1的值为 12, a2的值为 34, c1的值为 a, c2的值为b,程序输出结果是: 12, a, 34, b,则正确的输人格式是 (以下一代表空格,代表回 车 )( )。 ( A) 12a34b ( B) 12 a 34 b ( C) 12, a, 34, b ( D) 12 a34 b 12 设有宏定义: #define IsDIV(k, n)(k n=1)?1: 0)且变量 m已正确定义并赋值,则宏调用: IsDIV(m, 5)&IsDIV(m, 7)为真时所要表达的是 ( )。 ( A)判断 m是否能被 5或者
8、7整除 ( B)判断 m是否能被 5和 7整除 ( C)判断 m被 5或者 7整除是否余 1 ( D)判断 m被 5和 7整除是否都余 1 13 支 持子程序调用的数据结构是 ( )。 ( A)栈 ( B)树 ( C)队列 ( D)二叉树 14 将 E-R图转换为关系模式时,实体和联系都可以表示为 ( )。 ( A)属性 ( B)键 ( C)关系 ( D)域 15 有以下程序: #include void fun(int*p, int*q) main() int m=1, n=2, *r=&m; f(r, &n); printf(“ d, d“, m, n); void f(int*P, in
9、t*q) p=p+1; *q=*q+1; 程序运行后的输出结果是 ( )。 ( A) 1, 3 ( B) 2, 3 ( C) 1, 4 ( D) 1, 2 16 有两个关系 R, S如下: 由关系 R通过运算得到关系S,则所使用的运算为 ( )。 ( A)选择 ( B)投影 ( C)插入 ( D)连接 17 设有定义: char s81; int i=0;,以下不能将一行 (不超过 80个字符 )带有空格的字符串正确读入的语句或语句组是 ( )。 ( A) gets(s); ( B) while(si+=getchar()! = n); si= 0; ( C) scanf(“ s“, s);
10、( D) doseanf(“ c“, &si); while(si+! = n) si= 0; 18 若有定义语句: double x, y, *px, *py;执行了 px=&x; py=&y;之后,正确的输入语句是 ( )。 ( A) seanf(“ f f“, x, y); ( B) seanf(“ f &x, &y); ( C) seanf(“ 1f 1f“, px, py); ( D) seanf(“ 1f 1f“, x, y); 19 以下选项中正确的语句组是 ( )。 ( A) char s; s=“BOOK! “; ( B) char*s; s=“BOOK! “; ( C) c
11、har s10; s=“BOOK! “; ( D) char*s; s=“BOOK! “; 20 有以下程序: #include void fun(int*a, int*b) int*c; c=a; a=b; b=c; main() int x=3, y=5, *p=&x, *q=&y; fun(p, q); printf(“ d, d“, *p, *q); fun(&x, &y); printf(“ d, d n“, *p, *q); 程序运行后的输出结果是 ( )。 ( A) 3, 5, 5, 3 ( B) 3, 5, 3, 5 ( C) 5, 3, 3, 5 ( D) 5, 3, 5,
12、3 21 以下选项中,能用作数据常量的是 ( )。 ( A) 0115 ( B) 0118 ( C) 1-5e1 5 ( D) 115L 22 数据库应用系统中的核心问题是 ( )。 ( A)数据库设计 ( B)数据库系统设计 ( C)数据库维护 ( D)数据库管理员培训 23 某二叉树有 5个度为 2的结点,则该二叉树中的叶子结点个数是 ( )。 ( A) 10 ( B) 8 ( C) 6 ( D) 4 24 以下是 if语句的基本形式: if(表达式 )语句 其中 “表达式 ”( )。 ( A)必须是逻辑表达式 ( B)必须是关系表达式 ( C)必须是逻辑表达式或关系表达式 ( D)可以是
13、任意合法的表达式 25 下列排序方法中, 最坏情况下比较次数最少的是 ( )。 ( A)冒泡排序 ( B)简单选择排序 ( C)直接插入排序 ( D)堆排序 26 下面叙述中错误的是 ( )。 ( A)软件测试的目的是发现错误并改正错误 ( B)对被调试的程序进行 “错误定位 ”是程序调试的必要步骤 ( C)程序调试通常也称为 Debug ( D)软件测试应严格执行测试计划,排除测试的随意性 27 下列叙述正确的是 ( )。 ( A)栈是 “先进先出 ”的线性表 ( B)队列是 “先进后出 ”的线性表 ( C)循环队列是非线性结构 ( D)有 序线性表既可以采用顺序存储结构,也可以采用链式存储
14、结构 28 以下程序段中的变量已正确定义: for(i=0; i 4; i+, i+) for(k=1; k 3; k+); printf(“*“); 程序段的输出结果是 ( )。 ( A) * ( B) * ( C) * ( D) * 29 有以下程序: #include main() int x; seanf(“ d“, &x); if(x =3); else if(x! =10) printf(“ d n“, x); 程序运行时,输入的值在哪个范围内才会有输出结果 ( )。 ( A)不等于 10的整数 ( B)大于 3且不等于 10的整数 ( C)大于 3或等于 10的整数 ( D)小于
15、 3的整数 30 若函数中有定义语句: int k;,则 ( )。 ( A)系统将自动给 k赋初值 0 ( B)这时 k中的值无定义 ( C)系统将自动给 k赋初值 1 ( D)这时 k中无任何值 31 设变量已正确定义,以下不能统 计出一行中输入字符个数 (不包含回车符 )的程序段是 ( )。 ( A) n=0; while(ch: getchar()! =” n”)n+; ( B) n=0; while(getchar()! =” n”)n+; ( C) for(n=0; getchar()! =” n”; n+); ( D) 13: O; for(ch=getchar()! =” n”;
16、 n+); 32 软件按功能可以分为:应用软件、系统软件、支撑软件 (或工具软件 ),下面属于应用软件的是 ( )。 ( A)编译程序 ( B)操作系统 ( C) 教务管理系统 ( D)汇编程序 33 有以下程序: #include main() int a=1, b=2, c=3, d=0; if(a=1&b+=2) if(b! =2 c-! =3) printf(“ d, d, d n“, a, b, c); else printf(“ d, d, d n“, a, b, c); else printf(“ d, d, d n“, a, b, c); 程序运行后的 输出结果是 ( )。 (
17、 A) 1, 2, 3 ( B) 1, 3, 2 ( C) 1, 3, 3 ( D) 3, 2, 1 34 有以下程序: #include main() char*s=“ABC“; do printf(“ d“, *s 10); s+: while(*s); 注意:字母 A的 ASCII码值为 65,程序运行后的结果是 ( )。 ( A) 5670 ( B) 656667 ( C) 567 ( D) ABC 35 以下选项中合法的标识符是 ( )。 ( A) 1 1 ( B) 1-1 ( C) 11 ( D) 1 36 有以下程序: #include main() char*a=“abed“,
18、 “ef“, “gh“, “ijk“; int i; for(i=0; i 4; i+)printf(“ c“, *ai); 程序运行后的输出结果是 ( )。 ( A) aegi ( B) dfhk ( C) abed ( D) abedefghijk 37 耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是 ( )。 ( A)提高耦合性降低内聚性有利于提高模块的独立性 ( B)降低耦合性提高内聚性有利于提高模块的独立性 ( C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度 ( D)内聚性是指模块间互相连接的紧密程度 38 程序段: int x=12; double y=3
19、141593; printf(“ d 8 6f, x, y);输出结果是 ( )。 ( A) 123 141593 ( B) 123 141493 ( C) 12, 3 141593 ( D) 123 1415930 39 设有定义: int x=2;,以下表达式中,值不为 6的是 ( )。 ( A) x*=x+1 ( B) x+, 2*x ( C) x*=(1+x) ( D) 2*x, x+=2 40 有以下程序: #include int fun(int x, int y) if(x=y)return(x); else return(x+y) 2); main() int a=4, b=5
20、, c=6; printf(“ d n“, fun(2*a, fun(b, c); 程序运行后的输出结果是 ( )。 ( A) 3 ( B) 6 ( C) 8 ( D) 12 二、程序填空题 41 给定程序中,函数 fun的功能是:调用随机函数产生 20个互不相同的整数放在形参 a所指数组中 (此数组在主函数中已置 0)。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意: 部分源程序在文件 BLANK1 C中。不得增行或删行,也不得更改程序的结构! 【试题源程序】 #include #include #define N 20 void fun(int*a) int
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 模拟 110 答案 解析 DOC
