[计算机类试卷]国家二级C语言程序设计机试(选择题)模拟试卷2及答案与解析.doc
《[计算机类试卷]国家二级C语言程序设计机试(选择题)模拟试卷2及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言程序设计机试(选择题)模拟试卷2及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言程序设计机试(选择题)模拟试卷 2及答案与解析 一、选择题 1 下列叙述中正确的是 ( )。 ( A)一个算法的空间复杂度大,则其时间复杂度也必定大 ( B)一个算法的空间复杂度大,则其时间复杂度必定小 ( C)一个算法的时间复杂度太,则其空间复杂度必定小 ( D)算法的时间复杂度与空间复杂度没有直接关系 2 下列叙述中正确的是 ( )。 ( A)循环队列中的元素个数随队头指针与队尾指针的变化而动态变化 ( B)循环队列中的元素个数随队头指针的变化而动态变化 ( C)循环队列中 的元素个数随队尾指针的变化而动态变化 ( D)以上说法都不对 3 一个栈的初始状态为空。现将元素 1
2、, 2, 3, A, B, C依次入栈,然后再依次出栈,则元素出栈的顺序是 ( )。 ( A) 1, 2, 3, A, B, C ( B) C, B, A, 1, 2, 3 ( C) C, B, A, 3, 2, 1 ( D) 1, 2, 3, C, B, A 4 一棵二叉树中共有 80个叶子结点与 70个度为 1的结点,则该二叉树中的总结点数为 ( )。 ( A) 219 ( B) 229 ( C) 230 ( D) 231 5 对长度为 10的线性表进行冒泡排 序,最坏情况下需要比较的次数为 ( )。 ( A) 9 ( B) 10 ( C) 45 ( D) 90 6 下列各项中,对对象概念
3、描述正确的是 ( )。 ( A)对象间的通信靠消息传递 ( B)对象是名字和方法的封装体 ( C)任何对象必须有继承性 ( D)对象的多态性是指一个对象有多个操作 7 下列各项中,不属于软件设计阶段任务的是 ( )。 ( A)软件总体设计 ( B)算法设计 ( C)制订软件并确认测试计划 ( D)数据库设计 8 一般情况下,当对关系 R和 S进行自然连接时,要求 R和 s含有一个或者多个共有的 ( )。 ( A)记录 ( B)行 ( C)属性 ( D)元组 9 下列各项与栈结构有关联的是 ( )。 ( A)数组的定义域使用 ( B)操作系统的进程调度 ( C)函数的递归调用 ( D)选择结构的
4、执行 10 有两个关系 R和 T如下: 则由关系 R得到关系 T的操作是 ( )。 ( A)选择 ( B)交 ( C)投影 ( D)并 11 有以下定义: struct data int i; char c; double d; x; 以下叙述中错误的是 ( )。 ( A) x的内存地址与 x i的内存地址相同 ( B) struct data是一个类型名 ( C)初始化时,可以对 x的所有成员同时赋初值 ( D)成员 i、 c和 d占用的是同一个存储空间 12 以下函数的功能是计算 a的 n次方并作为函数值返回: double fun(double a, int n) int i; doub
5、le s=1 0; for(i=1; i #include main() char str=“Hello Beijing”; printf(“ d, d n”, strlen(str), sizeof(str); 程序的运行结果是 ( )。 ( A) 13, 13 ( B) 13, 14 ( C) 13, 15 ( D) 14, 15 14 若有说明: typedef struct int a; char c; w; 则以下叙述正确的是 ( )。 ( A)编译后系统为 w分配 5个字节 ( B)编译后系统为 w分配 6个字节 ( C)编译后系统为 w分配 58个字节 ( D)编译后系统不为 w
6、分配存储空间 15 以下叙述中错误的是 ( )。 ( A)同一个数组中所有元素的类型相同 ( B)不可以跳过前面的数组元素,给后面的元素赋初值 0 ( C)定义语句: int a10=0;,给 a数组中所有元素赋 初值 0 ( D)若有定义语句: int a4=1, 2, 3, 4, 5;,编译时将忽略多余的初值 16 若有以下定义: struct tt char name10; char sex; aa=“ aaaa”, F, *P=&aa; 则错误的语句是 ( )。 ( A) scanf(“ C”, aa.sex); ( B) aa.sex=getchar(); ( C) printf(“
7、 c n”, (*P) sex); ( D) printf(“ c n”, P一 sex); 17 C语言编译程序的功能是 ( )。 ( A)执行一个 C语言编写的源程序 ( B)把 C源程序翻译成 ASCI 码 ( C)把 C源程序翻译成机器代码 ( D)把 C源程序与系统提供的库函数组合成一个二进制执行文件 18 有以下程序: #include int fun(int n) if(1n return fun(n一 1)+n; else return 0; main() prinff(“ d n”, fun(3); 程序的运行结果是 ( )。 ( A) 4 ( B) 5 ( C) 6 ( D
8、) 7 19 有以下程序: #include main() int sum=0, x=5; d0sum+=x; while(!一一 x); printf(“ d n”, sum); 程序的运行结果是 ( )。 ( A) 0 ( B) 5 ( C) 14 ( D) 15 20 有以下程序: #include #include typedef struct char name9; char sex; float score2; STU; void f(STU*a) strcpy(a一 name, “Zhao”); a一 sex=m; a一 score1=90 0; main() STU c=“Qi
9、an”, f, 95, 92 0, *d=&c; f(d); prinff(“ s, c, 2 Of, 2 of n”, d一 name, c.ex, c.score0, c.score1); 程序的运行结果是 ( )。 ( A) Qian, f, 95, 92 ( B) Zhao, f, 95, 90 ( C) Zhao, m, 95, 90 ( D) Zhao, f, 95, 92 21 关于 C语言程序的下列说法中,正确的是 ( )。 ( A)函数的定义可以嵌套,但函数的调用不可以嵌套 ( B)函数的定义不可以嵌套,但函数的调用可以嵌套 ( C)函数的定义和调用均不可以嵌套 ( D)函数
10、的定义和调用均可以嵌套 22 执行以下程序段后, s的值为 ( )。 int a=1, 2, 3, 4, 5, 6, 7, 8, 9, s=0, k; for(k=0; k #define M 5 #define f(x, y)x*y+M main() int k; k=f(2, 3)*f(2, 3); printf(“ d n”, k); 程序的运行结果是 ( )。 ( A) 22 ( B) 41 ( C) 100 ( D) 121 24 有以下程序: #include main() char ch=Z; ch=(ch一 A+1) 26+A; putchar(ch); prinff(“ n”
11、); 程序的运行结果是 ( )。 ( A) Z ( B) Y ( C) B ( D) A 25 有以下程序: #include main() int i, j, k, a=5, b=6; i=(a=b)?+a:一一 b; j=a+; k=b; printf(“ d, d, d n”, i, j, k); 程序的运行结果是 ( )。 ( A) 7, 6, 5 ( B) 5, 5, 5 ( C) 7, 5, 5 ( D) 5, 6, 5 26 C语言程序中,若函数无返回值,则应该对函数说明的类型是 ( )。 ( A) int ( B) double ( C) char ( D) void 27 有
12、以下程序: #include main() int k, n=0; char e, str=“teach”; for(k=0; strk; k+) c=strk; switch(k) case 1: case j: case 5: putchar(c); printf(“ d”, +n); break; default: putchar(N); printf(“ n”); 程序的运行结果是 ( )。 ( A) Nel NN ( B) e1 a2e3 ( C) NelNc2N ( D) NalNNNN 28 有以下程序: #include void fun(char(*P)6) int 1; f
13、or(i=0; i #define N 4 void fun(int aN, int b) int i; for(i=0; i main() int i, j, x=0; for(i=0; i main() int k=10; printf(“ 4d, 0, x n”, k, k, k); 程序的运行结果是 ( )。 (口代表一个空格。 ) ( A) 10, 12, a ( B)口口 10, 012, a ( C) 010, 12, a ( D)口口 10, 12, a 36 若有定义: int a=1, b=2, c=3;,则执行表达式 (a=b+c)(+b)后, a, b, c的值依次为
14、( )。 ( A) 1, 2, 3 ( B) 5, 3, 2 ( C) 5, 2, 3 ( D) 5, 3, 3 37 设有: char s5, c;,则调用函数 scanf能正确给 S和 c读入数据的是 ( )。 ( A) scanf(“ s c”, s, c); ( B) scanf(“ d c”, &s, &c); ( C) scanf(“ d c”, s, &c); ( D) scanf(“ s c”, s, &c); 38 若变量已正确定义并赋值,则错误的赋值语句是 ( )。 ( A) a+a+1: ( B) a=sizeof(double); ( C) a=d c; ( D) a+
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
本资源只提供5页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言程序设计 选择题 模拟 答案 解析 DOC
