【计算机类职业资格】二级C语言笔试-272及答案解析.doc

上传人:lawfemale396 文档编号:1326074 上传时间:2019-10-17 格式:DOC 页数:25 大小:71KB
下载 相关 举报
【计算机类职业资格】二级C语言笔试-272及答案解析.doc_第1页
第1页 / 共25页
【计算机类职业资格】二级C语言笔试-272及答案解析.doc_第2页
第2页 / 共25页
【计算机类职业资格】二级C语言笔试-272及答案解析.doc_第3页
第3页 / 共25页
【计算机类职业资格】二级C语言笔试-272及答案解析.doc_第4页
第4页 / 共25页
【计算机类职业资格】二级C语言笔试-272及答案解析.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、二级 C 语言笔试-272 及答案解析(总分:104.00,做题时间:90 分钟)一、选择题(总题数:30,分数:60.00)1.软件工程的结构化生命周期方法,通常是将软件生命周期划分为计划、开发和运行 3 个时期,下列选项中的_工作应属于软件开发期的内容。需求分析 可行性研究 总体设计 问题定义(分数:2.00)A.和B.和C.、和D.全部2.以下程序执行后,sum 的值是_。main()int i, sum;for(i=1;i6;i+) sum+=i;printf(“%d/n“,sum);(分数:2.00)A.15B.14C.不确定D.03.在以下术语中,与数据的逻辑结构无关的是_。(分数

2、:2.00)A.线性结构B.链式结构C.树型结构D.网状结构4.若 a、b、c1、c2、x、y 均是整型变量,则正确的 switch 语句是_。(分数:2.00)A.swich(a+b);case 1:y=a+b;break;case 0:y=a-b;break;case 3:y=b-a, break;B.switch(a*a+b*b)case 3:case 1:y=a+b;break;C.switch acase c1:y=a-b;break;case c2:x=a*d;break;default:x=a+b;D.switch(a-b)default:y=a*b;break;case 3:c

3、ase 4:x=a+b;break;case 10:case 11:y=a-b;break;5.下列程序语句中,不正确的是_。(分数:2.00)A.maia()float a,b,c;scanf(“%f,%f“,(分数:2.00)A.26B.30C.18D.820.以下程序运行后,输出结果是_。#includestdio.hss (char *s)char *p=s;while(*p)p+;return(p-s);main()char *a=“abded“;int i;i=ss(A);print (“%d/n“,i);(分数:2.00)A.8B.7C.6D.521.下列叙述中,正确的一条是_。

4、(分数:2.00)A.putchar 函数可以输出一个字符串B.在 printf(“%c“,c)函数中,两个 c 是一样的C.语句 printf(“%d%“,1)的输出结果为 1%D.用 scar 函数输入数据时可以规定精度,例如 scanf(“%7.2f“,int i;for(i=0;i3;i+) pi=chi;for(i=0;i3;i+) printf(“%s“,pi);(分数:2.00)A.123456780B.123456780C.12345678D.14724.设 x、y、t 均为 int 型变量,执行以下语句后,y 的值为_。x=y=3;t=+x|+y;(分数:2.00)A.不定值

5、B.4C.3D.125.假定所有变量均已正确说明,以下程序段运行后,x 的值是_。a=b=c=0;x=35;if(!(分数:2.00)A.x-;else if(B.;if(C.x=3;else x=4;A34 B26.执行下列语句后的输出结果为_。enum x1=3,b=4,C,d,edata;printf(“%d“,data=d);(分数:2.00)A.6B.7C.8D.927.以下程序段的 while 循环执行的次数是_。int k=0;while(k=1)k+;(分数:2.00)A.无限次B.有语法错,不能执行C.一次也不执行D.执行 1 次28.若输入 173253,则以下程序的运行结

6、果为_。main()unsigned a;int n1,n2;scanf(“%o“,int s4;double ave;a,*p;(分数:4.00)填空项 1:_35.如果输入1、2、3、4,则以下程序的运行结果为 【6】 。#include stdio.hmain()char c;int i,k;k=0;for (i=0;i4;i+)while(1)c=getchar();if(c=0(分数:2.00)A.26B.30 C.18D.8解析:20.以下程序运行后,输出结果是_。#includestdio.hss (char *s)char *p=s;while(*p)p+;return(p-s

7、);main()char *a=“abded“;int i;i=ss(A);print (“%d/n“,i);(分数:2.00)A.8B.7C.6D.5 解析:21.下列叙述中,正确的一条是_。(分数:2.00)A.putchar 函数可以输出一个字符串B.在 printf(“%c“,c)函数中,两个 c 是一样的C.语句 printf(“%d%“,1)的输出结果为 1% D.用 scar 函数输入数据时可以规定精度,例如 scanf(“%7.2f“,int i;for(i=0;i3;i+) pi=chi;for(i=0;i3;i+) printf(“%s“,pi);(分数:2.00)A.12

8、3456780B.123456780C.12345678 D.147解析:24.设 x、y、t 均为 int 型变量,执行以下语句后,y 的值为_。x=y=3;t=+x|+y;(分数:2.00)A.不定值B.4C.3 D.1解析:25.假定所有变量均已正确说明,以下程序段运行后,x 的值是_。a=b=c=0;x=35;if(!(分数:2.00)A.x-;else if(B.;if( C.x=3;else x=4;A34 B解析:26.执行下列语句后的输出结果为_。enum x1=3,b=4,C,d,edata;printf(“%d“,data=d);(分数:2.00)A.6 B.7C.8D.9

9、解析:27.以下程序段的 while 循环执行的次数是_。int k=0;while(k=1)k+;(分数:2.00)A.无限次 B.有语法错,不能执行C.一次也不执行D.执行 1 次解析:28.若输入 173253,则以下程序的运行结果为_。main()unsigned a;int n1,n2;scanf(“%o“,int s4;double ave;a,*p;(分数:4.00)填空项 1:_ (正确答案:22)解析:35.如果输入1、2、3、4,则以下程序的运行结果为 【6】 。#include stdio.hmain()char c;int i,k;k=0;for (i=0;i4;i+)

10、while(1)c=getchar();if(c=0&c=9) break;k=k*10+c-0;printf(“k=%d/n“,k);(分数:4.00)填空项 1:_ (正确答案:k=1234)解析:36.若输入 12、3、2、5、7,则以下程序的运行结果为 【7】 。int max,min;void max_min_value();main()int i,number5;printf(“输入 5 个整数;/n“);for(i=0;i5;i+) scanf(“%d“,&numberi);max min value(number,5);printf(“max=%d,min=%d/n“,max,

11、min);getch();void max_min_value(array,n)int array,n;int*p;max=min=*array;for(p=array+1;parray+n;p+)if(*pmax)max=*p;else if(*pmin)min=*p;(分数:4.00)填空项 1:_ (正确答案:max=12,min=2)解析:37.以下程序的运行结果为 【8】 。#define FORMAT “%u,%u“main()int a34=1,3,5,7,9,11,13,15,17,19,21,23;printf(“/n“);printf(FORMAT,*a,*a0);prin

12、tf(FORMAT,*(a0+1),*&a01);printf(FORMAT,a10,*(*(a+1)+0);(分数:4.00)填空项 1:_ (正确答案:1,1 3,3 9,9)解析:38.若输入 21、23、34、11、2、6,则以下程序的运行结果 【9】 。main()int i;char+p,num6;for (i=0;i5;i+)scanf(“%d,“,&numi);scanf(“%d“,&num5);p=&num0;sort(p,6);for (i=0;i5;i+) printf(“%d,“,numi);printf(“%d/n“,num5);sort(p,m)char*p;int

13、 m;int i;char change,*p1,*p2;for (i=0;im/2;i+)p1=p+i;p2=p+(m-1-i);change=*p1;*p1=*p2;*p2=change;(分数:4.00)填空项 1:_ (正确答案:6,2,11,34,23,21)解析:39.若输入 I have a test.#,则以下程序的运行结果为 【10】 。#includestdio.hmain()FILE*fp;char str100,filename10;int i=0;if (fp=fopen(“test“,“w“)=NULL)printf(“can not open the file!/

14、n“);exit(0);getchar();gets(str);while(stri!=#)if (stri=a & stri=z)stri=stri-32;fputc(stri,fp);i+;fclose(fp);fp=fopen(“test“,“r“);fgets(str,strlen(str)+1,fp);printf(“%s/n“,str);fclose(fp);(分数:4.00)填空项 1:_ (正确答案:I HAVE A TEST)解析:40.当先后输入 1、3、4、12、23 时,屏幕上出现 【11】 ;再输入 12 时,则屏幕上出现 【12】 。#include stdio.h

15、#define N 5main()int i,j,number,top,bott,min,loca,aN,flag;char c;printf(“Please input 5 numbers (aiai-1)/n“);scanf(“%d“,&a0);i=1;while (iN)scanf(“%d“,&ai);if (ai=ai-1) i+;printf(“/n“);for (i=0;iN;i+) printf(“%d“,ai);printf(“/n“);flag=1;while (flag)scanf(“%d“,&number);loca=0;top=0;bott=N-1;if (number

16、a0)|(numberaN-1) loca=-1;while (loca=0) & (top=bott)min=(bott+top)/2;if (number=amin)loca=min;printf(“%d is the %dth number/n“,number,loca+1);else if (numberamin) bott=min-1;else top=min+1;if (loca=0|loca=-1) printf(“%d is not in the list/n“,number);c=getchar();if (c=N|c=n) flag=0;(分数:4.00)填空项 1:_ (

17、正确答案:11 1 3 4 12 23 12 12 is the 4th number)解析:41.求任意一个数(用 16 位二进制码表示)的补码。main()unsigned int a;【13】 ;scanf(“%o“,&a);printf(“%o/n“,getbits(a);unsigned int getbits(value)unsigned int value;unsigned int z;z= 【14】 ;if (z=0100000)【15】 ;elsez=value;return(z);(分数:4.00)填空项 1:_ (正确答案:13 unsigned int getbits() 14 value&0100000 15 z=value+1)解析:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1