【计算机类职业资格】二级C语言笔试-169及答案解析.doc
《【计算机类职业资格】二级C语言笔试-169及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-169及答案解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-169 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.有以下程序viod fun(int a, int b, int c)a=456; b=567; c=678; )main()int x=10, y=20, z=30;fun(x, y, z);printf(“%d, %d, %d/n“, x, y, z);输出的结果是( )。(分数:2.00)A.30,20,10B.10,20,30C.456,567,678D.678,567,4562.有以下结构说明和变量定义,指针 p、q、r 分别指向链表中的 3 个连续结点。s
2、truct nodeint data; struct node*next; ) *p, *q, *r; 现要将 q 所指结点从链表中删除,同时要保持链表的连续,以下不能按要求完成操作的语句是( )。(分数:2.00)A.p-next=q-next;B.p-next=p-next-next;C.p-next=r;D.p=q-next;3.下列程序的输出结果是( )。int f1(int x, int y)return xy? x: y; int f2(int x, int y)return xy? y: x; main()int a=4, b=3, c=5, d=2, e, f, g;e=f2(
3、f1(a, b), f1(c, d);f=f1(f2(a, b), f2(c, d);g=a+b+c+d-e-f;printf(“%d, %d, %d/n“, e, f, g);(分数:2.00)A.4,3,7B.3,4,7C.5,2,7D.2,5,74.设有二元关系 R 和三元关系 S,下列运算合法的是( )。(分数:2.00)A.RSB.RSC.R-SD.RS5.有下列程序:main()int k=5, n=0;while(k0)switch(k)default: break;case 1: n=n+k;case 2:case 3: n+=k;k-;printf(“%d/n“, n);程序
4、运行后的输出结果是( )。(分数:2.00)A.0B.4C.6D.76.栈和队列的共同特点是( )。(分数:2.00)A.都是先进先出B.都是先进后出C.只允许在端点处插入和删除元素D.没有共同点7.在单链表中,增加头结点的目的是( )。(分数:2.00)A.方便运算的实现B.使单链表至少有一个结点C.标识表结点中首结点的位置D.说明单链表是线性的链式存储实现8.语句 int(*ptr)()的含义是( )。(分数:2.00)A.ptr 是一个返回值为 int 的函数B.ptr 是指向 int 型数据的指针变量C.ptr 是指向函数的指针,该函数返回一个 int 型数据D.ptr 是一个函数名,
5、该函数的返回值是指向 int 型数据的指针9.要求通过 while 循环不断读入字符,当读入字母 N 时结束循环。若变量已正确定义,下列正确的程序段是( )。(分数:2.00)A.while(ch=getchar()!=N)printf(“%c“, ch);B.while(ch=getchar()!=N)printf(“%c“, ch);C.while(ch=getchar()=N)printf(“%c“, ch);D.while(ch=getchar()=N)printf(“%c“, ch);10.下述程序的输出结果是( )。#includestdio.hmain()im a23=1, 2,
6、 3, 4, 5, 6, (*p)3, i;p=a;for(i=0; i3; i+)if(i2)p1i=p1i-1;elsep1i=1; printf(“%d/n“, a01+a11+a12); (分数:2.00)A.8B.7C.12D.911.设 fun()函数的定义形式为( )。void fun(char ch,float x)则下列对函数 fun 的调用语句中,正确的是(分数:1.00)_12.已知有如下结构体:struct skint a;float b;data, *p;若有 p=data, 则对 data 的成员 a 引用正确的是( )。(分数:1.00)A.(*p). dataa
7、B.(*p). a;C.p-data. aD.data. a13.下述程序的输出结果是( )。#includestdio.hvoid main()int b6=2, 4, 6, 8, 10, 12;int *p=b,*q=p;printf(“%d,“, *(p+); printf(“%d,“, *q);(分数:1.00)A.4,4B.2,2C.4,5D.2,414.两个或两个以上模块之间联系的紧密程度称为( )。(分数:1.00)A.耦合性B.内聚性C.复杂性D.数据传输特性15.下列程序的输出结果是( )。#includestdio.hmain()int a=3, b=2, c=1;if(a
8、b)if(b0)c=0;else c+;printf(“%d/n“, c); (分数:1.00)A.2B.0C.1D.不确定的值16.关系数据库管理系统能实现的专门关系运算包括( )。(分数:1.00)A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表17.下述程序的输出结果是( )。#includestdio.hmain()char ch25=“1234“, “5678“), *p2;int i, j, s=0;for(i=0; i2; i+)pi=chi;for(i=0: i2; i+)s=pij=0;printf(“%d“, s);(分数:1.00)A.63
9、57B.6135C.1357D.69135718.设 a=1, b=2, c=3, d=4,则表达式:“ab?a: bb?a: cd?a: d”的结果为( )。(分数:1.00)A.4B.3C.2D.119.有以下程序:main()int a=2, 4, 6, 8, 10), y=0, X, *p;p=a1;for(x=1; x3; x+) y+=px;printf(“%d/n, y“);程序运行后的输出结果是( )。(分数:1.00)A.10B.11C.14D.1520.有以下程序:#includestdio.hStruct stuint num;char name-10;int age;
10、void fun(struct stu *p)printf(“%s/n“, (*p). name); main()struct stu students3=9801, “Zhang“, 20, 9802, “Wang“, 19, 9803, “ Zhao“, 18fun(students+2); 输出的结果是( )。(分数:1.00)A.ZhangB.ZhaoC.WangD.1821.有以下程序:#includestdio.hint abc(int u, int v);main()int a=24, b=16, c;c=abc(a, b);printf(“%d/n“, c);int abc(i
11、nt u, int v)int w;while(v)w=u%v; u=v; v=w; return;输出结果是( )。(分数:2.00)A.6B.7C.8D.922.以下程序的输出结果是( )。main()int a=7, b=8,*p, *q, *r;p=a; q=b;r=P; p=q; q=r;printf(“%d, %d, %d, %d/n“, *p, *q, a, b);(分数:2.00)A.8,7,8,7B.7,8,7,8C.8,7,7,8D.7,8,8,723.执行下述程序后,输出的结果是( )。#includestdio.h#define S(X)X*Xvoid main()in
12、t a=9, k=3, m=2;a/=S(k+m)/S(k+m);printf(“%d“, a);(分数:2.00)A.1B.4C.9D.024.下列说法不正确的是( )。(分数:2.00)A.调用函数时,实参可以是表达式B.调用函数时,实参与形参可以共用内存单元C.调用函数时,将实参的值复制给形参,使实参变量和形参变量在数值上相等D.调用函数时,实参与形参的类型必须一致25.有定义:“int a=2, b=3, c=4;”,则下列选项中值为 0 的表达式是( )。(分数:2.00)A.(!a=1)(!b=0)B.(ab)!c|1C.abD.a|(b+b)(c-a)26.以下能正确定义二维数组
13、的是( )。(分数:2.00)A.int a3;B.int a3=2*3;C.int a3=;D.int a23=1, 2, 3, 4;27.下列程序的运行结果为( )。#includestdio.hmain()struct dateint year, month,day;today;printf(“%d/n“, size of(struct date);(分数:2.00)A.8B.6C.10D.1228.若有以下说明,则( )不是对 strcpy 库函数正确的涮用。strcpy 库函数用于复制一个字符串:char*str1=“abcd“, str210, *str3=“hijklmn“, *
14、str42, *str5=“aaaa“;(分数:2.00)A.strcpy(str2, str1)B.strcpy(str3, str1)C.strcpy(str1, str2)D.strcpy(str5, str1)29.若有定义:“int a=4, b=5; float x=3.4, y=2.1;”,则下列表达式的值为( )。(float)(a+b)/2+(int)x%(int)y;(分数:2.00)A.5.5B.55C.5.500000D.55.0000030.若已包括头文件string.h且已有定义 char s118, s2=“ABCDE“和 int i,现要将字符串”ABCDE”赋
15、给 s1,下列语句错误的是( )。(分数:2.00)A.strcpy(s1, s2)B.strcpy(s1, “ABCDE“);C.s1=“ABCDE“;D.for(i=0; i6; i+)s1i=s2i31.下列选项中不是字符常量的是( )。(分数:2.00)A./vB./x2aC.aD.“/0“32.数据的存储结构是指( )。(分数:2.00)A.数据所占的存储空间B.数据的逻辑结构在计算机中的存放形式C.数据在计算机中的顺序存储方式D.存储在计算机外存中的数据33.在位运算中,操作数每左移两位,其结果相当于( )。(分数:2.00)A.操作数乘以 2B.操作数除以 2C.操作数除以 4D
16、.操作数乘以 434.已知二叉树后序遍历序列是 dabec,中序遍历序列是 debac,它的前序遍历序列是( )。(分数:2.00)A.acbedB.decabC.deabcD.cedba35.以下叙述中不正确的是( )。(分数:2.00)A.在不同的函数中可以使用相同名字的变量B.函数中的形式参数是局部变量C.在一个函数内定义的变量只在本函数范围内有效D.在一个函数内的复合语句中定义的变量在本函数范围内有效36.有下列程序:void sort(int a, int n)int i, j, t;for(i=0; in=1; i+)for(j=i+1; jn; j+)if(aiaj)t=ai;
17、ai=aj; aj=t; )main()int aa10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10), i;sort(aa+2, 5);for(i=0; i10; i+)printf(“%d, “, aai);printf(“/n“);程序运行后的输出结果是( )。(分数:2.00)A.1,2,3,4,5,6,7,8,9,10,B.1,2,7,6,3,4,5,8,9,10,C.1,2,7,6,5,4,3,8,9,10,D.1,2,9,8,7,6,5,4,3,1037.有下列程序:main()char p=a, b, c), q=“abc“;printf(“%d%d/n“, s
18、izeof(p), sizeof(q);程序运行后的输出结果是( )。(分数:2.00)_38.有下列程序:fun(int x, int y)static int m=0, i=2;i+=+m;m=i+x+y; return m;main()int j=1, m=1, k;k=fun(j, m); printf(“%d,“ , k); k=fun(j, m);printf(“%d/n“, k); 执行后的输出结果是( )。(分数:2.00)A.5,5B.5,11C.11,11D.11,539.以下程序的输出结果是( )。main()int i, k, a10, p3;k=5;for(i=0;
19、i10; i+)ai=i;for(i=0; i3; i+)pi=ai*(i+1);for(i=0; i3; i+)k+=pi*2;printf(“%d/n“, k);(分数:2.00)A.20B.21C.22D.2340.下列程序的输出结果是( )。main()int a, b, d=25;a=d/10%9; b=a(-1);printf(“%d, %d/n“, a, b); (分数:2.00)A.6,1B.2,1C.6,0D.2.0二、填空题(总题数:14,分数:30.00)41.在一个容量为 32 的循环队列中,若头指针 front=3,尾指针 rear=2,则该循环队列中共有 1 个元素
20、。(分数:2.00)填空项 1:_42.一棵二叉树第 6 层(根结点为第一层)的结点最多为 1 个。(分数:2.00)填空项 1:_43.度为 10 的线性表进行冒泡排序,最坏情况下需要比较的次数为 1。(分数:2.00)填空项 1:_44.数据库管理系统常见的数据模型有层次模型、网状模型和 13 种。(分数:2.00)填空项 1:_45.在面向对象的程序设计中,类描述的是具有相似性质的=组 1。(分数:2.00)填空项 1:_46.数据管理技术发展经过人工管理、文件系统和数据系统 3 个阶段,其中数据独立性最高的阶段是 1。(分数:2.00)填空项 1:_47.已有定义:“double *p
21、;”,请写出完整的语句,利用 malloc 函数使 p 指出一个双精度型的动态存储单位 1。(分数:2.00)填空项 1:_48.若 a=1,b=2,则表达式!(x=a)|(y=b)0 的值是 1。(分数:2.00)填空项 1:_49.在循环中,continue 语句与 break 语句的区别是: 1 语句只是结束本次循环,然后进行循环的条件判定。(分数:2.00)填空项 1:_50.下列程序的运行结果是_。#define POWER(x) (x)*(x)main()int i=1; printf(“%d, %d“, POWER(i+), i);(分数:2.00)填空项 1:_51.下列程序的
22、输出结果是_。#includestdio.hfun()static int a=0;a+=3; printf(“%d“, a); main()int cc; for(cc=1; cc5; cc+)fun();printf(“/n“);(分数:2.00)填空项 1:_设有以下程序:main()int a, b, k=4, m=8, *p1=. k, *p2=m;a=m;b=(*p1)/(*p2)+7;printf(“a=%d/n“, a);printf(“b=%d/n“, b);执行该程序后,a 的值为_,b 的值为_。(分数:4.00)填空项 1:_填空项 1:_52.以下程序运行后的输出结果
23、是_。main()int a=0;a+=(a=8);printf(“%d/n“, a);(分数:2.00)填空项 1:_53.设有如下程序:main()int n1, n2;scanf(“%d“, n2);while(n2 !=0)n1=n2%10;n2=n2/10;printf(“%d“, n1);程序运行后,如果从键盘上输入 1298,则输出结果为_。(分数:2.00)填空项 1:_二级 C 语言笔试-169 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.有以下程序viod fun(int a, int b, int c)a=456;
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 169 答案 解析 DOC
