《历年计算机二级c语言考试真题以及答案详解.pdf》由会员分享,可在线阅读,更多相关《历年计算机二级c语言考试真题以及答案详解.pdf(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2 0 1 0年9月全国计算机二级C语言笔试试题(1 1)以卜关于结构化程序设计的叙述中正确的是A)个结构化程序必须同时由顺序、分支、循环三种结构组成B)结构化程序使用g o t。语句会很便捷C)在C语言中,程序的模块化是利用函数实现的D)由三种基本结构构成的程序只能解决小规模的问题(1 2)以下关于简单程序设计的步骤和顺序的说法中正确的是A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构(
2、1 3)以卜叙述中错误的是A)C程序在运行过程中所有计算都以二进制方式进行B)C程序在运行过程中所有计算都以十进制方式进行C)所有C程序都需要编译链接无误后才能运行D)C程序中整型变量只能存放整数,实型变量只能存放浮点数(1 4)有以下定义:i n t a;l o n g b;d o u b l e x,y;则以下选项中正确的表达式是A)a%(i n t)(x-y)B)a二x!二y;C)(a*y)%bD)y=x+y=x(1 5)以下选项中能表示合法常量的是A)整数:1,2 0 0B)实数:1.5 E 2.0C )字符斜杠:D)字符串:”0 0 7(1 6)表达式a+=a-=a=9的值是A)9B
3、)_ 9C)1 8D)0(1 7)若变量已正确定义,在i f (W)p r i n t f(d n,k );中,以下不可替代W的是A)a b+cB)c h=g e t c h a r ()C)a=b+cD)a+(1 8)有以下程序#i n c l u d e m a i n ()i n t a=l,b=0:i f (!a)b+;e l s e i f (a=0)i f (a)b+=2;e l s e b+=3;p r i n t f ,b);)程序运行后的输出结果是A)0B)1C)2D)3(1 9)若有定义语句i n t a,b;d o u b l e x;则下列选项中没有错误的是A)s w
4、i t c h (x%2)B)s w i t c h(i n t)x/2.0 c a s e 0:a+;b r e a k:c a s e 0:a+;b r e a k;c a s e 1:b+;b r e a k;c a s e 1:b+;b r e a k;d e f a u l t :a+;b+;a+;b+;)C)s w i t c h (i n t)x%2)(i n t)(x)%2)c a s e 0:a+;b r e a k;d e f a u l t :)D)s w i t c h c a s e 0.0:a+;b r e a k;c a s e 1:b+;b r e a k;b+
5、;b r e a k;d e f a u l t :a+;b+;a+;b+;)(2 0)有以下程序#i n c l u d e m a i n ()i n t a=l,b=2;w h i l e (a 6)b+=a;a+=2;b%二 1 0;p r i n t f (%d,%dn”,a,b);)程序运行后的输出结果是A)5,1 1B)7,1C)7,1 1D)6,1(2 1)有以下程序#i n c l u d e m a i n ()i n t y=1 0:w h i l e (y-);p r i n t f (Y二%d n”,Y);)程序执行后的输出结果是A)y=0B)y=-1C)y=lD)w
6、 h i l e构成无限循环(2 2)有以下程序#i n c l u d e m a i n ()c h a r s J =r s t u v”;p r i n t f (c n”,*s +2);)程序运行后的输出结果是A)t u vB)字符t的A S C I I码值C)tc a s e 1.0:d e f a u l t :)(2 3)有以下程序#i n c l u d e V s t d i o.h#i n c l u d e V s t r i n g.h m a i n ()c h a r x 口=S T R I NG”;x 0 J =0;x 1 =(T :x 2 J =,0,:p r
7、 i n t f (v%d%d n”,s i z e o f (x),s t r l e n(x);)程序运行后的输出结果是A)6 1B)7 0C)6 3D)7 1(2 4)有以下程序#i n c l u d e V s t d i o.h I n t f (i n t x);m a i n ()i n t n=l,m;m=f (f (f (n);p r i n t f (%d n”,m);)i n t f (i n t x)r e t u r n x*2;程序运行后的输出结果是A)1B)2C)4D)8(2 5)以下程序段完全正确的是A)i n t *p;s c a n f (机T,&p);B
8、)i n t *p;s c a n f (M d ,p);C)i n t k,*p=&k;s c a n f (刎,p);D)i n t k,*p:;*p=&k;s c a n f(%d ,p);(2 6)有定义语句:i n t *p 4 ;以下选项中与此语句等价的是A)i n t p 4 ;B)i n t *p;C)i n t *(p 4 J );D)i n t (*p)4 J ;D)出错(2 7)下列定义数组的语句中,正确的是A)i n t N=1 0;i n t x N;C)i n t x 0.1 0 3;B)#d e f i n e N 1 0i n t x N;D)i n t x;(
9、2 8)若要定义一个具有5个元素的整型数组,以下错误的定义语句是A)i n t a 5 =0 ;B)i n t b =0,0,0,0,0);C)i n t c 2+3 ;I)i n t i=5,d i ;(2 9)有以卜.程序#i n c l u d e V s t d i o.h v o i d f (i n t *p);m a i n ()i n t a 5 =1,2,3,4,5 ,*r=a;f (r);p r i n t f (%d n ;火r);)v o i d f (i n t *p)p=p+3;p r i n t f (%d,”,*p);程序运行后的输出结果是A)1,4B)4,4C
10、)3,1D)4,1(3 0)有以下程序(函数f u n只对下标为偶数的元素进行操作)#i n cl udevo i d f un (i n t*a:i n t n)i n t i、j、k t;f o r (i=0;i n 1;l+=2)k=i;f o r (j=i;j a (k )k=j;t=a (i ;a i =a k ;a (k =t;)m a i n ()i n t a a F 10J=1、2、3、4、5、6、7),i;f un (a a、7);f o r (i=0,i#i n cl udem a i n ()ch a r a 20二 A B C D 0E F G 0,b =IJK”;s
11、 t r ca t (a,b);p r i n t f (s n”,a);)程序运行后的输出结果是A)A B C D E 0F G 0IJKB)A B C D IJKC)IJKD)E F G IJK(34)有以下程序,程序中库函数i s l o wer (ch)用以判断c h中的字母是否为小写字母#i n cl ude#i n cl ude Vct y p e.h vo i d f un (ch a r*p)程序运行后的输出结果是 i n t i=0;A)11wh i l e(p i )B)21 i f (p i =*&i s l o wer (p i-1 J )C)6p i-l =p i-l
12、 -匕+A,;D)120i +:(37)有以下程序)#i n ct ude#i n cl udem a i n ()M a i n ()ch a r s i 100 =a b cd E F G!”;i n t *a,*b,*c;f un (s i);p r i n t f (%s n ,s i);a=b=c=(i n t*)m a l l o c(s i z eo f (i n t)*a=l;*b=2,*c=3;程序运行后的输出结果是a=b;A)a b cd E F G!p r i n t f (%d,%d,%d n,*a,*bB)A b C d E F g!*c);C)a B cD E F
13、G!)D)a b cd E F g!程序运行后的输出结果是(35)有以卜.程序A)3,3,3 B)2,2,3 C)1,2,3 D)#i n cl udevo i d f un (i n t x)1,1,3 i f (x/2l)f un (x/2);(38)有以下程序p r i n t f (d”,x);#i n cl udeVs t di o.h m a i n ()m a i n ()i n t s,t,A=10;do ub l e B=6;f un (7);p r i n t f (n );)s =s i z eo f (A);t=s i z eo f (B);程序运行后的输出结果是p r
14、 i n t f (%d,%d n”,s,l);A)1 3 7)B)7 3 1在 VC 6平台上编译运行,程序运行后的输出W0 7 3果是D)3 7(36)有以下程序A)2,4 B)4,4 C)4,8 D)10,6#i n cl ude(39)若有以下语句i n t f un ()T y p edef s t r uct S s t a t i c i n t x=l;i n t g;ch a r h;T;x+=l;r et ur n x;以下叙述中正确的是)A)可用S定义结构体变量m a i n ()B)可用T定义结构体变量 i n t i;s=l;C)S是 s t r uct 类型的变量f
15、 o r (i=l;i m a i n ()s h o r t c=124;c=c:p r i n t f (“%d n、C);)若要使程序的运行结果为2 4 8,应在下划线处填入的是A)2 B)|248 C)&0248 D)1二、填空题(每空2分,共3 0分)请将每空的正确答案写在答题卜3】至【15】序号的横线上,答在试卷上不得分。(1)一个栈的初始状态为空。首先将元素5,4,3,2,1依次入栈,然后退栈一次,再将元素A,B,C,D依次入栈,之后将所有元素全部退栈,则所有元素退栈(包括中间退栈的元素)的顺序为【1】(2)在长度为n的线性表中,寻找最大项至少需要比较1 2 次。(3)一棵二叉树
16、有10个度为1的结点,7个度为2的结点,则该二叉树共有13】个结点。(4)仅由顺序、选择(分支)和重复(循环)结构构成的程序是【4】程序。(5)数据库设计的四个阶段是:需求分析,概念设计,逻辑设计【5】o(6)以下程序运行后的输出结果是16】。#i n cl udeVs t di o.h m a i n ()i n t a=200,b=010;p r i n t f (%d%d n ,a,b);)(7)有以下程序#i n cl udem a i n ()i n t x,Y;s c a n f C%2 d%l d”,&x,&y);p r i n t f (w%d n ,x+y);)程序运行时输入
17、:12 34 5 6 7程序的运行结果是 7。(8)在C语言中,当表达式值为0时表示逻辑值“假”,当表达式值为【8】时表示逻辑值“真”。(9)有以下程序#i n c l u de Vs t di o.hm a i n ()i n t i,n =0,0,0,0,0);f o r (i=l;i =4;i+)n i=n i-l *3+1;p r i n t f(%d,,n i);)程序运行后的输出结果是 9 1。(1 0)以F f u n函数的功能是:找出具有N个元素的维数组中的最小值,并作为函数值返回。请填空。(设N已定义)i n t f u n (i n t x N )i n t i,k=0;f
18、 o r (i=0;i N;I+)i f (x i r e t u r n x k :)(11)有以下程序#i n c l u de i n t*f (i n t *p,i n t*q);m a i n ()i n t m=l,n=2,*r=&m;r=f (r,&n):p r i n t f (d n”,:)i n t *f (i n t *p,i n l*q)r e t u r n (*p *q)?p:q;程序运行后的输出结果是 111(1 2)以下f u n函数的功能是在N行M列的整形二维数组中,选出个最大值作为函数值返回,请填空。(设M,.N已定义)i n t f u n (i n t
19、a N M)i n t i,j,r o w=0,c o l=0:f o r (i=0;i a r o w c o l )r o w=i;c o l=j;r e t u r n (1 2 ):(1 3)有以下程序#i n c l u de Vs t di o.hm a i n ()i n t n 2,i,j;f o r (i=0;i 2;i+)n i=0:f o r (i=0;i 2;i+)f o r (j=0;j m a i n ()i n t a (10,*p,*s;f o r (p=a:p-a 10:p+)s c a n f (d”,p);f o r (p=a,s=a;p-a *s)S=P
20、;p r i n t f (m a x=%d n”,1 4 );)(15)以卜.程序打开新文件f.t xt,并调用字符输出函数将a数组中的字符写入其中,请填空。#i n c l u de Vs t di o.hm a i n ()15 *f p;c ha r a 5=1,2 ,3,4 ,5 ,i;f p=f o p e n (f .t xt ,“w);f o r (i=0;i 5;i+)f p u t c (a i,f p);f c l o s e (f p);)答 案:一、选择题(1)B(2)c(3)D(4)A(5)A(6)1)(7)I)(8)C(9)C(10)A(11)C(12)D(13)
21、B(14)A(15)C(16)D(17)A(18)A(19)C(2 0)B(2 1)B(2 2)C(2 3)B(2 4)D(2 5)0(2 6)C(2 7)B(2 8)D(2 9)D(30)A(30)A(32)C(33)B(34)C(35)1)(36)B(37)A(38)C(39)B(4 0)D、填空题6:2 00812:a r o w c o l 1:1D CA B 2 34 57:1513:32:n-18:非 014:*s3:2 59:1 4 13 4 015:F I LE4:结构化10:i5:物理设计11:22 0 1 1 年 3 月 计 算 机 等 级 考 试 二 级 C 语言笔试:文
22、字版(10)定义无符号整数类为UI n t,下面可以作为类UI n t实例化值的是A)-36 9 B)36 9 C)036 9 D)整数集合(12 3,4,5(11)计算机高级语言程序的运行方法有编译执行和解释执行两种,以卜叙述中正确的是A)C语言程序仅可以编译执行B)C语言程序仅可以解释执行C)C语言程序既可以编译执行又可以解释执行D)以上说法都不对(12)以下叙述中错误的是A)C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe文件(1
23、3)以下选项中不能用作C程序合法常量的是A)1,234 B)123,C)123 D)x7G,(14)以下选项中可用作C程序合法实数的是A).leO B)3.0e0.2C)E9 D)9.12E(15)若有定义语句:int a=3,b=2,c=l;以下选项中错误的赋值表达式是A)a=(b=4)=3;B)a=b=c+1;C)a=(b=4)+c;D)a=l+(b=c=4);(16)有以卜 程序段char name20;int num;scanf(name=%s num=%dn,name;&num);当执行上述程序段,并从键盘输入:name二Lilinum=1001v回车 后,name的值为A)Lili
24、B)name=LiliC)Lili num=D)name=Lili num=1001(17)if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是A)必须是逻辑值 B)必须是整数值C)必须是正数 D)可以是任意合法的数值(18)有以下程序#includemain()int x=011;printf(H%dn,+x);)程序运行后的输出结果是A)12 B)ll C)10D)9(19)有以下程序#includemain()int s;scanf(H%dn,&s);while(s0)switch(s)easel:printf(H%d,s+5);case2:printf(%dn
25、,s+4);break;case3:printf(%cT,s+3);default:printf(,%d,s+1 );break;scanf(d”,&s);1运行时,若输入1 2 3 4 5 Ov回车,则输出结果是A)6566456 B)66656 C)66666D)6666656(20)有以卜.程序段int i,n;for(i=0;i8;i+)n=rand()%5;switch(n)case 1:case 3:printf(%dnn);break;case 2:case 4:printf(%dnn);continue;case O:exit(O);)printf(u%dn,n);)以下关于程
26、序段执行情况的叙述,正确的是A)for循环语句固定执行8次B)当产生的随机数n为4时结束循环操作C)当产生的随机数n为1和2时不做任何操作D)当产生的随机数n为0时结束程序运行(21)有以下程序#includemain()char s=,OI2xyO8s34f4w2n;int i,n=O;for(i=0;si!=0;i+)if(si=0&si=9,)n+;printf(u%dn,n);)程序运行后的输出结果是A)0 B)3 C)7 D)8(22)若i和k都是int类型变量,有以下for语句for(i=0,k=-l;k=l;k+)printf(*n);卜,面关于语句执行情况的叙述中正确的是A)循
27、环体执行两次B)循环体执行一次C)循环体次也不执行D)构成无限循环(23)有以下程序#includemain()char b,c;int i;b=a,;c=Afor(i=0;i6;i+)if(i%2)putchar(i+b);else putchar(i+c);)printfCAn);A)ABCDEF B)AbCdEf C)aBcDeFD)abcdef(24)设有定义:double x10,*p=x;,以下能给数组x卜.标为6的元素读入数据的正确语句是A)scanf(%f,&x6);B)scanf(H%lf;*(x+6);C)scanf(%lfp+6);D)scanf(,%lf,p6);(25
28、)有以下程序(说明:字母A的ASCII码值是65)#includevoid fun(char*s)while(*s)if(*s%2)printf(%cn,*s);s+;)main()char a=HBYTE;fun(a);printf(n);)程序运行后的输出结果是A)BY B)BT C)YT D)YE(26)有以下程序段#includemain()while(getchar()!=n);I以下叙述中正确的是A)此while语句将无限循环B)getchar。不可以出现在while语句的条件表达式中C)当执行此while语句时,只有按回车键程序才能继续执行D)当执行此while语句时,按任意键程
29、序就能继续执行(27)有以下程序程序运行后的输出结果是#includemain()(int x=l,y=O;if(!x)y+;else if(x=O)if(X)y+=2;else y+=3;printfC%dn,y);)程序运行后的输出结果是A)3 B)2 C)1 D)0(28)若有定义语句:chars310,(*l讥3,*p;,则以卜赋值语句正确的是A)p=s;B)p=k;C)p=sO;D)k=s;(29)有以卜程序#includevoid fun(char*c)while(*c)if(*c=a&*c=z)*c=*c-(a-A);C+;)main()chars81;gets(s);fun(s
30、);puts(s):)当执行程序时从键盘上输入Hello Beijingv回车,则程序的输出结果是A)hello beijing B)Hello Beijing C)HELLOBEIJING D)hELLO Beijing(30)以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。#include#define N 10void fun(int xN)(int i=0;while(i在程序中下划线处应填入的是B)&xi+1D)&x+iA)x+iC)x+(i+)(31)有以F程序#includemain()char a30hb30|;scanf(H%s,a);gets(b);printf
31、(%sn%sn,a,b);程序运行时若输入:how are you?I am finev回车,则输出结果是A)how are you?B)howI am fine are you?I am fineC)how are you?I am fine D)how are you?(32)设有如下函数定义int fun(int k)if(kl)return 0;else if(k=I)return 1;else return fun(k-l)+l;)若执行调用语句:n=fun(3);,则函数l、un总共被调用的次数是A)2 B)3 C)4 D)5(33)有以下程序#includeint fun(int
32、 x,int y)if(x!=y)return(x+y);2);else return(x);)main()int a=4,b=5,c=6;printf(M%dnM,fun(2*a,fun(b,c);)程序运行后的输出结果是A)3 B)6 C)8(34)有以下程序D)12#i n c l u d e i n t f u n()s t at i c i n t x=l;x*=2;r e t u r n x;)m ai n()i n t i,s=l;f o r(i=l;i =3;i+)s*=f u n();p r i n t f(%d n ,s);)程序运行后的输出结果是A)0 B)1 0 C)3
33、0 D)6 4(35)有以下程序#i n c l u d e#d e f i n e S(x)4*(x)*x+lm ai n()i n t k=5,j=2;p r i n t f(%d n ,S(k+j);)程序运行后的输出结果是A)1 9 7 B)1 4 3 C)33 D)2 8(36)设有定义:s t r u c t c h ar m ar k|1 2 ;i n t n u m I ;d o u b l en u m 2;t l,t 2;,若变量均已正确赋初值,则以下语句中错误的是A)t l=t 2;B)t 2.n u m 1 =t 1 .n u m 1;C)t 2.m ar k=t l.
34、m ar k;D)t 2.n u m 2=t l .n u m 2;(37)有以下程序#i n c l u d e s t r u c t o r d i n t x,y;d t 2 =l,2,3,4);m ai n()(s t r u c t o r d *p=d t;p r i n t f(u%d,+(p-x);p r i n t f(%d nn,+(p-y);)程序运行后的输出结果是#i n c l u d e s t r u c t S i n t a,b;d at a 2 =1 0,1 0 0,2 0,2 0 0);m ai n()s t r u c t S p=d at a 1 ;
35、p r i n t f(%d n ;+(p.a);)程序运行后的输出结果是A)1 0 B)l l C)2 0 D)2 1(39)有以下程序#i n c l u d e m ai n()u n s i g n e d c h ar a=8,c;c=a 3;p r i n t f(%d n ;c);)程序运行后的输出结果是A)32 B)1 6 C)1 D)0(4 0)设fp已定义,执行语句f j)=f o p e n(理e ,w );后,以下针对文本文件f i l e操作叙述的选项中正确的是A)写操作结束后可以从头开始读 B)只能写不能读C)可以在原有内容后追加写 D)可以随意读和写二、填空题(1
36、)有序线性表能进行二分查找的前提是该线性表必须是【I】存储的。(2)一棵二叉树的中序遍历结果为D B EAFC,前序遍历结果为AB D ECF,则后序遍历结果为【2】,(3)对软件设计的最小单位(模块或程序单元)进行的测试通常称为【3】测试。(4)实体完整性约束要求关系数据库中元组的4 属性值不能为空。(5)在关系 A(S,SN,D)和关系 B(D,C N,N M)中,A的主关键字是S,B的主关键字是D,则 称【5】是关系A的外码。(6)以卜程序运行后的输出结果是【6】.#in clu deA)1,2 B)4,l(38)有以卜程序C)3,4D)2,3main()in t a;a=(in t)(
37、dou b le)(3 +0.5+(in t)1.9 9*2);pr in t f(n%dn ,a);)(7)有以下程序#in clu demain()in t x;s can f(%d,&x);if(x 15)pr in t f(n%d,x-5);if(x 10)pr in t f(%d,x);if(x 5)pr in t f(%dnu,x+5);)若程序运行时从键盘输入12 可 车,则输出结果 为7。(8)有以下程序(说明:字符。的A S C I I码值为48)#in clu demain()char cl,c2;s can f(%d,&cl);c2=cl+9;pr in t f(%c%c
38、nn,c 1 ,c2);1若程序运行时从键盘输入48V回车,则输出结果 为【8】o(9)有以下函数v oid pr t(char ch,in t n)in t i;fb r(i=l;i=n;i+)r et u r n(a+b)/2);(13)以下程序运行后的输出结果是 13 o#in clu demain()pr in t f(i%6!=0?H%c,:%cn ,ch);)执行调用语句pr t C*,24);后,函数共输出了【9】行*号。(10)以下程序运行后的输出结果是【10】o#in clu demain()in t x=10,y=20,t=0;if(x=y)t=x;x=y;y=t;pr i
39、n t f(%d%dn x,y);1(11)己知a所指的数组中有N个元素。函数f u n的功能是,将下标k(k 0)开始的后续元素全部向前移动一个位置。请填空。v oid fu n(in t a N,in t k)(in t i;for(i=k;i)(12)有以下程序,请 在1 2 处填写正确语句,使程序可正常编译运行。#in clu de1 2 ;main()dou b le x,y,(*p)();s can f(H%lf%lf,&x,&y);p=av g;pr in t f(%fn ,(*p)(x,y);)dou b le av g(dou b le a,dou b le b)in t i
40、,n 5=0;for(i=l;i=0;i)putchar(*(p+i);printf(n-);free(p);1(15)以下程序运行后的输出结果是 1 5。#includemain()FILE*fp;int x6=l,2,3,4,5,6,i;fp=fopen(ntest.dat,wbH);fwrite(x,sizeof(int)3Jp);rewind(fp);fread(x,sizeof(int),3,fp);for(i=0;i6;i+)printf(n%d;xi);printf(nn);fclose(fp);)(11)A)【解 析】编 译 型 语 言 写 的 程 序 执 行 之 前,需 要
41、一 个 专 门 的 编 译 过 程,把 程序 编 译 成 为 机 器 语 言 的 文 件,比 如 ex e文 件,以 后 要 运 行 的 话 就 不 用 重 新 翻 译 了,直 接使 用 编 译 的 结 果 就 行 了(ex e文 件),因 为 翻 译 只 做 了 一 次,运 行 时 不 需 要 翻 降,所 以编 译 型 语 言 的 程 序 执 行 效 率 高。解 释 则 不 同,解 释 型 语 言 的 程 序 不 需 要 编 译,省 了 道 工 序,解 释 性 语 言 在 运 行 程 序 的时 候 才 翻 译,比 如 解 释 型 b as ic语 言,专 门 有 一 个 解 释 器 能 够
42、直 接 执 行 b as ic程 序,每个 语 句 都 是 执 行 的 时 候 才 翻 译。这 样 解 释 性 语 言 每 执 行 一 次 就 要 翻 译 一 次,效 率 比 较低.故 答 案 为 A).(12)D)【解 析】C 语 言 的 可 执 行 程 序 是 由 一 系 列 机 器 指 令 组 成 的,用 C 编 写 的 源 程序 必 须 经 过 编 译 生 成 二 进 制 目 标 代 码,再 经 过 连 接 才 能 运 行,并 且 可 以 脱 离 C 语 言 集 成开 发 环 境。故 答 案 为 D).(13)B)【解 析】常 量 分 为 数 值 常 量 和 字 符 字 符 串 常 量
43、,其 中 选 项 A)出 现 语 法 错 误(工,A)【解 析】浮 点 型 常 量 有 十 进 制 小 数 形 式 和 指 数 形 式。指 数 形 式 要 求 字 母 e(或 者 E)之 前 必 须 有 数 字,且 e后 面 的 指 数 必 须 为 整 数.B、C、D 都 是 不 合 法 的 指 数 形 式,故 答 案 为 A)。B)解 析 2 字 彷 牢 s 的 前 三 个 字 符 满 足 i f 语 句 所 U A n+,当遇到。时 f o x 循坏 终 止,所 以 n 为 3.故 答 案 为 B).(2 2)D)工 解 析 3 本 题 中 f g循 环 判 断 条 件 为 k=l 这 个
44、 港 句 是 赋 值 漕 句 号 是 正 确 的,所 以 会 陷 入 无 限 储 坏 中。故 答 案 为 D)o(2 3)B)解 析 3 本 题 中 当 工 为 偶 数:时,且P。、2、4,执 行 p u t c h E G+u)会 依 次 播 出ACE 当:i 为苟数B T t,mP l、3、5 4iA V t p u tch ax(i+b)会依7欠所分输t t iAbC d E fr 做 答 案 为 B).七4)C)【解 析 1 选 项 A)中 播 入%有误,因 为/元 素 的 类 型 为 d 6 u b:L 6 选 项 6 中x y 为指针.*G c 3)弁 不 是 地 址 选 项 D)
45、中 p 6 表 示 方 式;不 正 确.故 答 案 为 6.(2 5)D)1 解 析 本题 中 执 行 f 3(a)时,会 取 a 的 第-1字母B ,因 为 B 的 A SC 工 工 码 为6 6,所 UA不 会 播 出 B,函 数 只 会 镯 出 A SC 工 工 码 为 奇 数 的 字 母,Y 的 A SC 工 工 码 为 8 9,T 的A SC 工 工 码 为 3 4.EG9 A s e 工 工 码 为 6 g.所 以 答 案 为 D).(2 6 1 C)工 解析 2 1 本中w h i l e 循条件 为 g e t c h a x ()I=n,表只箍I入 回 车 犍(即 按 下 回
46、 车 屣)名。十%。,=n 语 句 一 亘 为 其,如Jwh:L:Lo会 出 现 空 循 环 当 按下 回 车 犍 后 跳 出 w h i l e 循 环 执 行 下 一-T*谙 句.故 答 案 为 C)-8右 D)解 析 3 根 据 i E if e T s e 语句 中,e l s e,谈 是 和 矍 近 的 i f 酉己又才的原 贝U,本 i f (J x)e l s e i f (x=O)-(frj i f (c)e ls e d z-之月,位 于 e l s e i f (x=。)条 件 的 内 层.据 此 所 以 条 件 均 不 成 立.所 以 向 进 行 任 何 掾 作,仍为 O
47、.2 8)C)工 解 析 3 A)选 项 格 二 雉 数 组 赋 值 给 了 一 个 指 考 十 B)选 项 格 指 向 一 维 数 组的 指 辛 十 赋 值 给 了 指针x D)造 项 格 二 维 数 组 赋 值 绐 了 指 向 一 维 数 组 的 指 针.故 答 案为 6.(2 9)C)工解 析 1 可 以、看 出 本 题 中 f 3函 数 的 是 格 字 筋 串 中 的 大 写 字 坦 变 为 小 耳 字 母声 誉 案 为 C).(3 0)C)工 解 析】选 项 A)可 以 实 现 为*O 赋 值,不 能 为 其 他 的 元 素 痛 值,即 实 现 不了 循 环 选 项 B)同 选 项
48、A.)样 实 现 不 了 循 环 赋 值.选 项 D)不 能 为 x O 赋 值,而 且 会出 界.故 答 案 为 C).(3 1)B)【解 析】C语 言 中 输 入 多 个 字 符 串 时,系 统 会 把 空 格 字 符 作 为 输 入 的 字 符 串之 间 的 分 隔 行。所 以 本 题 中 将 第 一 个 空 格 的 前 半 部 分 赋 值 给 a,将 空 格 以 及 后 面 的 邰 笼赋 值 给 b 故 答 案 为 B).(3 2)B)工解 析】执 行 3(3)语 句 时 会 返 回 5(3-1)+工,B P fu n(2)+l5执 行fu n.(2)时 会 返 回 3(2-1)+工,
49、目 P fu n(1)+L 执 行 f u n (工)时 会 返 回 I,所 以 一 共 执 行 f u n函 数 为 3次.故 答 案 为 B)(3 3)B)【解 析】本 题 考 查 的 是 函 数 的 量 套 调 用.f u n(2*a,f u n (b,c)中 2*a 为 8,f u n(b,c)执 行 完 结 果 为 5,所 以 f u n(2*a,f u n(b,c)执 行 结 果 为 6.故 答 案 为 B).(3 4)D)1 解 析 静态(s t a t i c)局 部 变 量 只 在 定 义 它 的 函 数 内 有 效,只 是 程 序 仅分 配 一 次 内 存,函 数 返 回
50、后,该 变 量 不 会 消 失,下 一 次 依 据 上 一 次 结 果 值。此 题 中 第一 次 循 环 时,调 用 fu n 函 数 后 x 的 值 为 2,s 的 值 为 2,第 二 次 循 环 时,调 用 fu n 函 数 后 x 的值 为 4,s 的 值 为 8;第 三 次 循 环 时,调 用 fu n 函 数 后 *的 值 为 B,s 的 值 为 6 4。故 答 案 为 D(3 6)B)【解 析】根 据 宏 定 义 的 规 定,题 中 S(k+j)=4*(k+j)*k+j+1,分 别 带 入 k、j 值 后 求 出 的 结 果 是 1 4 3.故 答 案 为 B).(3 6)C)【解