【计算机类职业资格】二级C语言笔试-444及答案解析.doc
《【计算机类职业资格】二级C语言笔试-444及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-444及答案解析.doc(31页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-444 及答案解析(总分:105.00,做题时间:90 分钟)一、选择题(总题数:40,分数:69.00)1.下列关于栈叙述正确的是_。A) 栈顶元素最先能被删除 B) 栈顶元素最后才能被删除C) 栈底元素永远不能被删除 D) 以上三种说法都不对(分数:2.00)A.B.C.D.2.下列叙述中正确的是 A) 在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化 B) 在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化 C) 在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化 D) 上述三种说法都不对(分数:2.00)A.B.C.D.3.已知二叉树后序遍历序列是 C
2、DABE,中序遍历序列是 CADEB,它的前序遍历序列是( )。 A) ABCDE B) ECABD C) EACDB D) CDEAB(分数:2.00)A.B.C.D.4.下列数据结构中,能够按照“先进后出”原则取数据的是A) 循环队列 B) 栈C) 队列 D) 二叉树(分数:2.00)A.B.C.D.5.下列描述中,不是线性表顺序存储结构特征的是( )。A) 不便于插入和删除B) 需要连续的存储空间C) 可随机访问D) 需另外开辟空间来保存元素之间的关系(分数:2.00)A.B.C.D.6.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是A) 编辑软件
3、B) 操作系统C) 教务管理系统 D) 浏览器(分数:2.00)A.B.C.D.7.算法的有穷性是指A) 算法程序的运行时间是有限的B) 算法程序所处理的数据量是有限的C) 算法程序的长度是有限的D) 算法只能被有限的用户使用(分数:2.00)A.B.C.D.8.需求分析阶段的任务是( )。A) 软件开发方法 B) 软件开发工具 C) 软件开发费用 D) 软件系统功能(分数:2.00)A.B.C.D.9.有以下程序:main()char a,b,c,d;scanf(“%c,%c,%d,%d“,a,printf(“%c,%c,%c,%c/n“,a,b,c,d);若运行时从键盘上输入:6,5,65
4、,66回车,则输出结果是 _。A) 6,5,A,B B) 6,5,65,66 C) 6,5,6,5 D) 6,5,6,6(分数:2.00)A.B.C.D.以下有 4组用户标识符,其中合法的一组是( )。AFOr-subCaseB4dDOSizeCf2_G3IFabcDWORDvoiddefine(分数:3.00)A.B.C.D.A.B.C.D.10.下列叙述中错误的是_。(A) 在数据库系统中,数据的物理结构必须与逻辑结构一致(B) 数据库技术的根本目标是要解决数据的共享问题(C) 数据库设计是指在已有数据库管理系统的基础上建立数据库(D) 数据库系统需要操作系统的支持(分数:2.00)A.B
5、.C.D.11.以下叙述中正确的是_。A) C程序中注释部分可以出现在程序中任何合适的地方B) 花括号“”和“”只能作为函数体的定界符C) 构成 C程序的基本单位是函数,所有函数名都可以由用户命名D) 分号是 C语句之间的分隔符,不是语句的一部分(分数:2.00)A.B.C.D.12.以下选项中不属于字符常量的是_。(A) C(B) “C“(C) /xCC(D) /072(分数:1.00)A.B.C.D.13.可在 C程序中用作用户标识符的一组标识符是A) and2007B) Datey-m-dC) HiDr.TomD) caseBigl(分数:1.00)A.B.C.D.14.有以下程序:#i
6、ncludestdio.hmain()int x=1,y=0,a=0,b=0;switch(x)case 1:switch(y)case 0:a+;break;case 1: b+;break;case 2:a+;b+;break;case 3:a+;b+;printf(“a=%d,b=%d/n“,a,b);程序的运行结果是_。A) a=1,b=0 B) a=2,b=2 C) a=1,b=1 D) a=2,b=1(分数:2.00)A.B.C.D.15.以下程序的功能是:建立一个带有头结点的单向链表,并将存储在数组中的字符依次转存到链表的各个结点中,请为下划线处选择正确的选项。#include
7、stdlib. h stuct nodechar data; struct node * next; ;( ) CreatList(char * s)struet node * h, * p, * q;h = (struet node * ) maloc(sizeof(struct node) );p=q=h;while( * s! =/0)p = ( struct node * ) maloc ( sizeof( struct node) );p- data= *s; q- next=p; q=p;s+;p- next =/0;return hmain( )char str = “link
8、list“;struet node * head;head = CreatList (str);A) char * B) struet node C) struct node * D) char(分数:1.00)A.B.C.D.16.下列程序的输出结果是_。#define A 100main()int i=0,sum=0;do if(i(i/2)*2)continue;sum+=i;while(+iA);print(“%d/n“,sum);A) 2500 B) 2050 C) 4 D) 0(分数:1.00)A.B.C.D.17.有以下程序:#includestdio.hmain( )char
9、a, b, c, d;scanf(“%c%c“, c=getchar(); d=getchar();printf(“%c%c%c%c/n“, a, b, c, d);当执行程序时,按下列方式输入数据(从第一列开始,CR代表回车,注意:回车也是一个字符):12CR34CR则输出结果是A) 1234B) 12C) 123D)1234(分数:1.00)A.B.C.D.若变量均已正确定义并赋值,以下合法的 C语言赋值语句是( )。Ax=y=5; Bx=n%2.5;Cx+n=i: Dx=5=4+1;(分数:2.00)A.B.C.D.A.B.C.D.18.请读程序:#include stdio.h#def
10、ine SUB(X,Y) (X)*Ymain()int a=3,b=4;printf(“%d/n“,SUB(a+,b+);上面程序的输出结果是( )。A) 12 B) 15 C) 16 D) 20(分数:1.00)A.B.C.D.19.假定所有变量均已正确说明,下列程序段运行后 x的值是( )。a=b=c=0;x=12;if(!A) x-;else x=5;if(C) x=3;else x=4;A) 11 B) 4 C) 12 D) 3(分数:2.00)A.B.C.D.20.有以下程序main()int a=666 , b=888 ;printf(“%d/n“,a,b);程序运行后的输出结果是
11、_。A) 错误信息 B) 666 C) 888 D) 666,888(分数:1.00)A.B.C.D.21.数字字符 0的 ASCII值为 48,若有以下程序main()char a=1,b=2;printf(“%c,“,b+);printf(“%d/n“,b-a);程序运行后的输出结果是_。(A) 3,2(B) 50,2(C) 2,2(D) 2,50(分数:2.00)A.B.C.D.22.下列条件语句中,功能与其他语句不同的是( )。A) if(a) printf(“%d /n“ ,x); else printf(“% d /n“ ,y);B) if(a =0) printf( “% d /
12、n“ ,y); else printf( “% d /n“ ,x);C) if (a! =0) printf(“%d /n“,x); else printf(“%d /n“,y); ,D) if(a=O) printf(“%d /n“,x); else printf(“%d /n“,y);(分数:1.00)A.B.C.D.23.判断 char型变量 c1是否为小写字母的正确表达式为( )。A) a=c1=zB) (c1=A) (c1=z)C) (a=c1(z=c1)D) (c1=a)c=a(b2) ;执行后,C 的值为( )。A) 6 B) 7 C) 8 D) 9(分数:2.00)A.B.C.
13、D.26.以下程序输出正确的是_。amovep(int *pint(*a) 3int n)int i,j;for(i=0;in;i+)for(j=0;jn;j+) *p=aij;p+;main()int *p,a33=1,3,5,2,4,6;p=(int*)malloc(100);amovep(p,a,3);printf(“%d%d/n“,p2p5;free(p);A) 56 B) 25 C) 34 D) 程序错误(分数:2.00)A.B.C.D.27.字符(char)型数据在微机内存中的存储形式是_。A) 反码 B) 补码 C) EBCDIC 码 D) ASC码(分数:2.00)A.B.C.
14、D.28.有以下函数:fun(char *a, char *b) while(*a!=/0)b+;return(*a-*b);该函数的功能是_。A) 计算 a和 b所指字符串的长度之差B) 将 b所指字符串连接到 a所指字符串中C) 将 b所指字符串连接到 a所指字符串后面D) 比较 a和 b所指字符串的大小(分数:2.00)A.B.C.D.29.设有定义:char p1,2,3,*qp;,以下不能计算出一个 char型数据所占字节数的表达式是_。A) sizeof(p) B) sizeof(char) C) sizeof(*q) D) sizeof(p0)(分数:2.00)A.B.C.D.3
15、0.字符串“/“ABCDEF/“/“的长度是( )。A) 15 B) 10 C) 7 D) 8(分数:1.00)A.B.C.D.31.下列能正确进行字符串赋值的是( )。A) char s5=“ABCDE“; B) char s5=A,B,C,D,E;C) char*s;s=“ABCDE“; D) char*s; printf(“%s“,s);(分数:2.00)A.B.C.D.32.下列程序的运行结果是( )。#includestdio.hvoid fun(int*s,int*p)static int t=3;*p=st;t-;void main()int a=2,3,4,5,k;int x;
16、for(k=0;k4;k+)fun(a, int num1; double num2; t1, t2;,若变量均已正确赋初值,则以下语句中错误的是_。A) t1=t2; B) t2.num1=t1.num1;C) t2.mark=t1.mark; D) t2.num2=t1.num2;(分数:1.00)A.B.C.D.34.设有如下的程序段:char str=“Hello“;char *ptr;ptr=str;执行完上面的程序段后,*(ptr+5)的值为( )。A) o B) /0 C) 不确定的值 D) o的地址(分数:1.00)A.B.C.D.35.假定 int类型变量占用两个字节,若有定
17、义:int x100,2,4;,则数组 x在内存中所占字节数是_。A) 3 B) 6 C) 10 D) 20(分数:2.00)A.B.C.D.36.以下程序运行后的输出结果是#includestdio.hmain()int a=5, b=1, t;t=(a2)|b); printf(“%d/n“, t);A) 21 B) 11 C) 6 D) 1(分数:2.00)A.B.C.D.37.设有说明语句如下:static char str=“Beijing“;若执行下列输出语句:printf(“%d/n“,strlen(strcpy(str,“China“);则输出结果为( )。A) 5 B) 7
18、C) 12 D) 14(分数:1.00)A.B.C.D.38.若要用函数 fopen打开一个新的二进制文件,该文件要既能读也能写,则应以哪种方式打开文件( )。A) “wb“ B) “wb+“ C) “rb+“ D) “rb/(分数:2.00)A.B.C.D.二、填空题(总题数:15,分数:36.00)39.栈中允许进行插入和删除的一端叫做 1。(分数:2.00)填空项 1:_40.在两种基本测试方法中, 1 测试的原则之一是保证所测模块中每一个独立路径至少执行一次。(分数:2.00)填空项 1:_41.数据库系统的三级模式分别为U /U模式、内部级模式与外部级模式。(分数:2.00)填空项
19、1:_42.与结构化需求分析方法相对应的是U /U方法。(分数:2.00)填空项 1:_43.软件是程序、数据和 1 的集合。(分数:2.00)填空项 1:_44.若有定义语句:int a=5;,则表达式 a+的值是 1。(分数:2.00)填空项 1:_45.用以下语句调用库函数 malloc,使字符指针 st指向具有 11字节的动态存储空间,请填空。st=(char*)_。(分数:4.00)填空项 1:_46.有以下程序:#includestdio.hmain()int a=1,b=2,c=3,d=0;if(a=1)if(b1=2)if(c=3) d=1;else d=2;else if(c
20、!=3) d=3;else d=4;else d=5;printf(“%d/n“,d);程序运行后的输出结果是_。(分数:4.00)填空项 1:_47.下列程序的输出结果是_。main()int a=1,b=2,c=3,t=0;if(aB) t=a;a=b;b=t;if(aC) t=a;a=c;c=t;printf(“%d,%d,%d/n“,a,b,c);(分数:2.00)填空项 1:_48.下列程序的运行结果是_。#includestdio.hmain()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“,
21、 B) ;(分数:2.00)填空项 1:_49.下列程序的输出结果是U /Uint t(intx,inty,int cp,int dp)cp=x*x+y*y;dp=x*x-y*y;main()int, a=4,b=3,c=5,d=6;t(a,b,c,d);printf(“%d %d/n“,c,d);(分数:2.00)填空项 1:_50.有以下程序:#includestdio.hmain()int f,f1,f2,i;f1=0;f2=1printf(“%d%d“,f1,f2);for(i=3;i=5;i+)f=f1+f2;printf(“%d“,f);f1=f9;f2=f;printf(“/n“
22、);程序运行后的输出结果是_。(分数:4.00)填空项 1:_51.设有定义:struct personint ID;char name12;p;请将 scanf(“%d“,_);语句补充完整,使其能够为结构体变量 p的成员 ID正确读入数据。(分数:2.00)填空项 1:_52.下列程序的输出结果是_。#includeStdio.hint fun(int x)int p;if(x=0x=1)return 3;elsep=x-fun(x-2);return p;void main()printf(“/n%d“,fun(11);(分数:2.00)填空项 1:_53.若给 fun函数的形参 s传送
23、字符串“6354abc“(其中表示空格字符),则函数的返回值是U /U。long fun(char s)long n; int sign;for(;isspace(*s);s+);sign=(*s=-)? -1:1;if(*s=+|*s=-) s+;for(n=0;isdigit(*s);s+)n=10*n+( *s-0);return sign*n;(分数:2.00)填空项 1:_二级 C语言笔试-444 答案解析(总分:105.00,做题时间:90 分钟)一、选择题(总题数:40,分数:69.00)1.下列关于栈叙述正确的是_。A) 栈顶元素最先能被删除 B) 栈顶元素最后才能被删除C)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 444 答案 解析 DOC
