《2023年全国计算机二级C语言试题与答案.pdf》由会员分享,可在线阅读,更多相关《2023年全国计算机二级C语言试题与答案.pdf(86页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2.1 以下叙述中对的的是A)C 语言比其他语言高级AB)C 语言可以不用编译就能被计算机辨认执行C)C 语言以接近英语国家的自然语言和数学语言作为语言的表达形式AD)C 语言出现的最晚,具有其他语言的一切优点A对的答案:C2.2 以下叙述中对的的是M)构成C 程序的基本单位是函数M)可以在一个函数中定义另一个函数C)m a i n ()函数必须放在其他函数之前闻)所有被调用的函数一定要在调用之前进行定义A对的答案:A2.3 以下说法对的的是M)C 语言程序总是从第一个的函数开始执行AB)在 C 语言程序中,要调用函数必须在m ai n。函数中定义C)C 语言程序总是从m ai n ()函数开
2、始执行动)C 语言程序中的m a i n O 函数必须放在程序的开始部分 对的答案:C2.4 C 语言规定,在一个源程序中,m a i n函数的位置A)必须在最开始B)必须在系统调用的库函数的后面4)可以任意D)必须在最后对的答案:C2.5以下叙述不对的的是M)一个C 源程序可由一个或多个函数组成出)一个C 源程序必须包含一个m ai n函数4)C 程序的基本组成单位是函数D)在 C 程序中,注释说明只能位于一条语句的后面对的答案:D2.6下列叙述中对的的是A)C语言编译时不检查语法AB)C语言的子程序有过程和函数两种K)C 语言的函数可以嵌套定义AD)C 语言的函数可以嵌套调用对的答案:D2
3、.7以下叙述对的的是A)在 C 程序中,每行中只能写一条语句研)若 a 是实型变量,C 程序中允许赋值a=l 0,因此实型变量中允许存放整型数K)在 C 程序中,无论是整数还是实数,都能被准确无误地表达冲)在 C 程序中,%是只能用于整数运算的运算符A对的答案:D2.8 以下说法错误的是M)一个算法应包具有限个环节站)在计算机上实现的算法是用来解决数据对象的C)算法中指定的操作,不能通过已经实现的基本运算执行有限次后实现(循环结构)s D)算法的目的是为了求解对的答案:C2.9 算法是指为解决某个特定问题而采用的拟定且有限的环节,下面不属于算法的五个特性的是M)有零个输入或多个输入B)高 效
4、性(有效性、有1 个或者多个输出)C)有穷性动)拟定性 对的答案:B2.10下列关于C 语言的说法不对的的是A)C 语言既具有高级语言的一切功能,也具有低档语言的一些功能B)C 语言中的每一条执行语句都必须用分号结束,分号不是C 语言的一部分,是语句之间的分隔符号K)注释可以出现在程序中任意合适的地方AD)命令行后面不能加分号,命令行不是 C 语言的语句对的答案:B2.1 1 以下说法错误的是A)高级语言都是用接近人们习惯的自然语言和数学语言作为语言的表达形式间)计算机只能解决由0和 1 的代码构成的二进制指令或数据“)C 语言源程序通过C 语言编译程序编译之后生成一个后缀为.EX ECo b
5、 j )的二进制文献每一种高级语言都有它相应的编译程序对的答案:C2.1 2 C 语言中用于结构化程序设计的3 种基本结构是A)顺序结构、选择结构、循环结构B)i f,s w i t c h,b r e a k*C)f o r ,w h i 1 e,d o-w h i l e D)i f ,f o r,c o n t i n u e,对的答案:A二、填空题(请将每一个空的对的答案写在答题卡相应序号后。)2.1 3 用高级语言编写的程序称为【1】程序,它可以通过解释程序翻译一句执行一句的方式执行,也可以通过编译程序一次翻译产生目的程序,然后执行.对的答案:源程序2.14 C语言程序的注释可以出现
6、在程序中的任何地方,一个注释以【2】作为开始和结束。对的答案:/*/3.1 C语言中最简朴的数据类型涉及A)整型、实型、逻辑型B)整型、实型、字符型4)整型、字符型、逻辑型D)字符型、实型、逻辑型 对的答案:B3.2 C语言中的标记符只能由字母,数字和下划线三种字符组成,且第一个字符AA)必须为字母B)必须为下划线AC)必须为字母或下划缪D)可以是字母,数字和下划线中任一字符A对的答案:C3.3 下列可用于C语言用户标记符的一组是M)v。i d,de f i n e,WORDB)a 3 _b 3,_123,Car*C)For,-abc,IF Case*D)2 a,DO,sizeof对的答案:B
7、3.4 下面四个选项中,均是不对的的8 进制数或16进制数的选项是M)016 0 x8f 0 1 8B)0 a b c 0 17 OxaC)010-0 x 1 1 0 xl6*D)0 al2 7 f f-1 2 3对的答案:D3.5下列数据中,不合法的C 语言实型数据的是A)0.123AB)12 3 e3C)2.1 e3,5D)78 9.O对的答案:C3.6在1 6位C编译系统上,若定义l o n g a;,则能给a赋4 0 0 0 0的对的语句是AA)a=20 23 0+20 23 0 ;B)a =4 0 0 0*1 0;O a=3 0 0 0 0+1 0 0 0 0;如)a=4 0 0 0
8、 L*1 0 L;对的答案:D3.7若有说明语句:c h a r c=7 2 ;则变量cA)包含1个字符碣)包含2个字符K)包含3个字符D)说明不合法,c的值不拟定对的答案:A3.8 有字符串如下,n 4 0 7 a s 1 x a b c ,则字符串的长度为AA)6AB)7 K)8D)9对的答案:D3.9 C语言中运算对象必须是整型的运算符是A)%=B)/X:)=AD)=A对的答案:A3.1 0若变量已对的定义并赋值,以下符合C语言语法的表达式是M)a:=b +UB)a=b=c+2C )i n t 1 8.5%3AD)a=a+7=c+b对的答案:B3.11若变量a,i已对的定义,且i已对的赋
9、值,合法的语句是M)a =1B)+i ;-C)a-a +=5;D)a=i n t (i );对的答案:B3.1 2 若有定义:i n t a=7;f l o a t x=2.5,y=4.7;则表达式 x+a%3*(i n t)(x+y)%2/4的值是A)2.5 0 0 0 0 0B)2.7 5 0 0 OOC)3.5 0 0 0 0 0D)0.000 0 00对的答案:A3.1 3 若有运算符 V,sizeo f,一,&=,则它们按优先级由高至低的对的排列顺序是A)sizeof,&=,AB)si Z e O f,*,&C)s i zeof,&=D)456 空格 78 9 回车输出结果是m a
10、i n(cha r s 100;i n t c,i;s ca n f(%c,&c);s c a n&i);s c a n f(%s ,s );p r i n t f(%c,%d,%s n ”,c,i,s);M)1 23,4 5 6,78 9B)1,45 6,7 8%C )1,23,4 5 6,7 8 9D)1,23,45 6对的答案:D4.7 若已定义:i n t a=25,b=14,c=19;以下三目运 算 符(?:)所构成语句的执行后a =2 5&by后,变 量 z的值为A)0AB)1C)4AD)5A 对的答案:B5.3 能对的表达逻辑关系:“a 210或 a W 0”的 C语言表达式是A
11、)a =10 o r a =0|a =10&a 10 I I a 对的答案:D5.4若变量c 为 ch a r 类型,能对的判断出c 为小写字母的表达式是A)az =c=,af)|(c=,z,)C)(a =c)如)(c =z a )&(c 二 z )A对的答案:D5.5 设 i n t x=l,y=1;表 达 式(!x|,y-)的值是A)0B)1K)2D)-1对的答案:B5.6 有如下程序段i n t a=1 4,b=15,x;A cha r c=,A;ASCII 码x=(a&b)&(c b )&(n=c d)后 n 的值是M)1B)2AC)3D)4A 对的答案:B5.9 已知x,y,z 均为
12、整型变量,且值均为1,则执行语句+x|+y&+z;后,表达式x+y的值为 M)1B)2C)3D)4对的答案:C5.1 0表达式aA)I|B)&C)100)b r e a k ;AAB)f or (;);AC )i nt k=10 0 0 0;d o k +;w h i le (k 1000 0);M)i n t s=36;w h i le(s)-s;对的答案:D6.3下面有关f o r 循环的对的描述是A)f o r 循环只能用于循环次数已经拟定的情况B)f o r 循环是先执行循环体语句,后判断表达式C)在 f or 循环中,不能用b r e a k 语句跳出循环体D)f or 循环的循环体
13、语句中,可以包含多条语句,但必须用花括号括起来对的答案:D6.4 若 i nt i ,j;,则 f or(i=j=0;i 8;b=+k)p r i nt f (%d,%d,a -b );p r i nt f (n);A)10,10,10,0,B)10,9,9,0,0 1 0,1 0,9,1,AD)9,9,9,1,A考生答案:对的答案:B6.6有一堆零件(1 0 0到2 00之间),假如提成4个零件一组的若干组,则多2个零件;若提成7个零件一组,则多3个零件;若提成9个零件一组,则多5个零件。下面程序是求这堆零件总数,请选择填空。#i nc lu d ema i n()i nt i;f or (
14、i=100;i 2 00;i+)i f (i-2)%4=0)A i f (!(i-3)%7)if()AP r i n t i);a M)i%9=5B)i%9!=5 AC)(i-5)%9!=0D)(i -5)%9=0对的答案:D A6.7下列程序的输出结果是A#i nc lu d e s t d i o.h ma i n()a i n t i,a=0,b =0;f or (i =1;i 10;i+)i f (i%2 =0)A a +;ACO n t i nu e;&+;A p r i nt f (z,a=%d ,b=%d,a,b);M)a=4,b =4B)a=4,b =5 AC)a =5,b=4
15、D)a=5,b=5A对的答案:B6 .8阅读下列程序,则执行结果是#i n e lu d e *s t d i o.h A ma i n()A i nt a=0,b=0,c =0,i;f or (i=0;i n a i n()A i nt m,n;A f lo a t k ;A f o r (m=6 ;m2;m-)k=0;f or (n=m;nl;n-)成=k+m*n;A pr i n t f (f n M,k);AAA)5.000000B)15.00 0 0 0 0C )2 5.0 0 0 000D)3 5.0000 0 0A对的答案:B6.1 0下面程序的运营结果是#i nc 1 u d
16、e *s t d i o.h,zA ma i n()A i nt j,i ,k=0;A f or (j =50;j=j-1”pr i nt f (%d ,j);k+;AA)AA)5359B)5 9 5 3 AC)359 5 AD )9 5 35对的答案:A A6.1 1已知i nt t =0;w h i le (t=1).A 则以下叙述对的的是M)循环控制表达式的值为0B)循环控制表达式的值为1%)循环控制表达式不合法M)以上说法都不对A对的答案:B6.1 2设有以下程序段i nt x=0,s=O;A w h i le(!x!=O)s +=+x ;*pr i n t f s )则M)运营程序段
17、后输出0 AB)运营程序段后输出1C)程序段中的控制表达式是非法的D)程序段执行无限次对的答案:B6.1 3 下列程序的输出结果是t t i nc lu d e s t d i o.h ma i n()A i n t i =6 ;AWh i le(i-)pr i nt f -i);p ri nt f(n);A)53 1 AB)42 0 AC)6 5 4 32 1 M)死循环A对的答案:B6.1 4 对 下 I ,II两个语句描述对的的是I .w h i le(l)II.f o r (;)M)都是无限循环B)I 是无限循环,II错误C)I循环一次,H错误D)以上答案都错对的答案:A6.1 5 以
18、下程序段的描述,对的的是AX=T;MOAX=X*x ;w h i le (!x);AA)是死循环刈)循环执行两次时)循环执行一次D)有语法错误对的答案:C6.1 6 若有如下语句A i nt x=3;M o p r i nt f (%d n ,x-=2 );w h i 1 e (!(-X ;A则上面程序段M)输出的是1 AB)输出的是1和-%C)输出的是3和0D)是死循环A对的答案:B6 .1 7下面程序的运营结果是A#i n c 1 u d e A m a i n()i nt a=1,b=l 0;MOA b-=a;a+;w h i l e (b-0)sp r i n t f(a=%d,b二%
19、d n ,a,b);AA)a=3,b=ll B)a =2,b=8 C)a=l,b =-l D)a=4,b=对的答案:B6.1 8若运营以下程序时,从 键 盘 输 入A D e s c r i p t or(表达回车),则下面程序的运营结果是#i n c 1 u d ema i n()a c h a r c;i nt v O=l,v l=0,v 2 =0;-M o s w i t c h(c=g e t c h a r ()c a s e a :c a s e A:c a s e f ef:c a s e E:c a s e i :c a s e I:c a s e o:c a s e O:c
20、a s e ur:c a s e U :v 1+=1;d e f a u lt:v 0+=1;v 2+=1;A w h i le(c!=n );pr i nt f(,zv O=%d,v 1=%d,v 2=%d nz,,v O,v l,v 2);A)v 0=7 ,v 1=4,v 2=7B)v 0=8,v 1=4,v 2 =8C)v O=ll,v l=4,v 2=ll AD)V0=13,v l=4,V2=12对的答案:D6.1 9下面程序的功能是把3 1 6表达为两个加数的和,使两个加数分别能被1 3和11整除,请选择填空。#i n c 1 u d ema i n(i n t i=0,j,k;M
21、o i+;k=3 1 6 1 3*i;w h i 1 e();j=k /1 1;pr i nt f (H 3 16=1 3*%d+ll*%d ”,i,j);A)k/11B)kC)k/ll=O M)k=O 对的答案:B6.2 0 C语 言 中 w h i 1 e和 d ow h i 1 e 循环的重要区别是M)d o-w h i le 的循环体至少无条件执行一次AB)w h i le 的循环控制条件比d o-w h i le 的循环控制条件更严格&C )d ow h i le允许从外部转到循环体内D)d o-w h i le 的循环体不能是复合语句 对的答案:A6.2 1下列说法中错误的是M)只
22、能在循环体内使用b r e a k 语句出)在循环体内使用b re a k 语句可以使流程跳出本层循环体,从而提前结束本层循环AC)在 w h i le 和 d ow h i le循环中,c ont i nu e 语句并没有使整个循环终止AD)co n ti n u e 的作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环判断对的答案:A二、填空题(请将每一个空的对的答案写在答题卡相应序号后。)6.22设 i,j,k 均 为 i n t 型变量,则执行完下面的f o r 语句后,k 的值为【1】。for(i=0,j=10;i=j;i+,j-)k=i+j;对的答案:10
23、6.2 3下列程序的功能是输入一个整数,判断是否是素数,若为素数输出1,否则输出0,请填空。main()Mint i,x,y=1;sc a nf(%d/z,&x);A fo r(i =2;i 0;y )a i f(y%3 =0)a pr i ntf 一 -y);con t inu e;A对的答案:8526.25阅读下面程序段,则执行后的输出结果为【4】o#i nclu de st d io.h m a i n ()A int a=1;for(;a=15;)if(+a%5!=2)c o ntinu e;Mise p r i n tf(%d,a);pr i nt f(*n,z);)对的答案:271
24、26.2 6 阅读下面语句,则执行后的输出结果为【5】#inclu d e stdio hma i n()char a,b;afo r(a=O ,b=9 ;aA p r int f(%c%c*,a,b);prin t f(n);A 对的答案:6.2 7 阅读下面程序,则执行后程序的结果为6#inclu d e stdio.hma i n()i n t a=0,b=0;w hil e(a 15)a+;w h i le(b+C)a 4-2 0D)a 0 4对的答案:D7.2在 C 语言中,引用数组元素时,其数组下标的数据类型允许是A)整型常量B)整型表达式AC)整型常量或整型表达式地)任何类型的表
25、达式对的答案:C7.3执行下面的程序段后,变量k 中的值为M n t k=3,s 2 ;AS0=k;k=s 1 *10;M)不定值B )3 3AC)30AD)1 0对的答案:A7.4 定义如下变量和数组:p r i nt f(%s n,arr);)A )you&m&*B)y o u*C)m&*D)err对的答案:A7.6设有数组定义:字节圮)5个字节char array 口 C h na;则 数 组 a r ray所占的空间为AA)4个0C)6个字节A D)7个字节对的答案:C7.7 以下不对的的定义语句是A)dou ble x 5 =2.0,4.0,6.0,8.0,10.0;B)int y
26、5 =0,1,3,5,7,9 ;%)c h ar c 1 口=1 J 2 ,,3 J 4,5 ;AD)char c2 =x10 ,x a ,x 8 ;对的答案:B7.8 若有说明:int a 口 3 =1,2,3,4,5,6,7;则 a 数组第一维的大小是M)2B)3 _ _-三列C)心D)无拟定值A对的答案:3 -1237.9 对以下说明语句的对的理解是A in t a 1 0 =6,7,8456A)将5个初值依次赋给a 1 至 a 57.B)将 5 个初值依次赋给a 0 至 a 4“)将5个初值依次赋给a 6*a 10 M)由于数组长度与初值的个数不相同,所以此语句不对的对的答案:B7.1
27、 0 若有说明:i n ta 4 =0,0;则下面对的的叙述是M)数组a 的每个元素都可得到初值0B)二维数组a 的第一维大小为1C)当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大MD)只有元素a 0 0 和 a 0 1 可得到初值,其余元素均得不到拟定的初值A对的答案:D7.1 1 有以下程序闻lain()char a 口=a ,b ,c ,d ,e ,f ,g ,h ,0 ;i n t i,j;i=sizeof(a);A j=s t rle n(a);A p r in t f(%d,%d b”,i,j);A程序运营后的输出结果是AA)9,%B)8,9C)1,8 M)9
28、,外对的答案:D7.1 2 假 定 i nt类型变量占用两个字节,其有定义:in t x 10 =0,2,4);,则数组 x 在内存中所占字节数是AA)3AB)6X?)1OD)2 0 对的答案:D7.1 3以下能对二维数组c 进行对的的初始化的语句是A)int c 3 =3,3,4;AB)int c 3 =3,3,4);0 i nt c 3 2 =,3,,:D)int c 3 =3 ,;对的答案:B7.1 4 在 C 语言中,一维数组的定义方法为A类型说明符 数组A)常量表达式 /常 量 必 须 是 整 型 期)C)整型变量D)整型常量 或 整型表达式 A 对的答案:A7.15若二维数组a 有
29、 m 列,则计算任一元素a i j 在数组中相对位置的公式为(假设a 0 0位于数组的第一个位置上)A)i*m+jAB)j*m+I K)i*m+j TD)i *m+j+1对的答案:A7.1 6 下面程序输出的结果是m a i n ()in t i;Ai n t a 3 3 =1,2,3,4,5,6,7,8,9);f o r (i=0;i 3;i+)p r in t f (%d ,a 2-i Ei);)A)1 5 9B)7 5 30 3 5 7AD)5 9 1A对的答案:B一维数组的定义:类型说明符 数组名 常量表达式数组名 下标T琮 臬 敕 刑 堂 鲁nV敷 刑).:rk X7.17以下不能对
30、二维数组a 进行对的初始化的语句是A)i n t a 2 3 =0 ;&B)i n t a 口 3 =1,2,0;C)in t a 2 3 =1,2,3,4,5,6 eD)i n t a 3 =1,2,3,4,5,6);A对的答案:C7.1 8阅读下面程序,则程序段的功能是4in c 1 u d e s td io.h m a i n ()i n t c 口=2 3,1,56,234,7,0,34,i,j,t f o r (i=l;i=0&t c j)c j+1 =c Ej;j-;AC j+l=t;Af o r (i =0;i 2正数 1 B)C 1.5 O AC)C 1 +0 0 如)以上表
31、达都错误对的答案:C7.2 7 若有以下语句,则对的的描述是c h a r a =to y o u ;Ac h a r b =t o,y,o ,u(;*A)a数组和b数组的长度相同B)a 数组长度小于b数组长度0 a数组长度大于b数组长度D)a数组等价于b数组A对的答案:C7.28 已知:c h a r a 15 ,b l 5 =I lo v e c h i n a ”;则在程序中能将字符串 I 1o ve c h i n a 赋给数组a的对的语句是A)a=I lo ve c h i n a”;研)s t r c p y(b ,a );AC)a=b ;*)s tr e p y(a,b);A对的
32、答案:D7.2 9 已知:c h a r a 20 =a b c ,b 20 =d e f g h i”;则执行下列语句后的输出结果为Ap r i n tf (%d ”,s tr le n(s tr e p y(a,b )果)1 1B)6C)5D)以上答案都不对的&对的答案:B7.3 0阅读如下程序段,则程序在先后输入lo ve 和 c h i n a 后,输出结果是#i n e lu d e 域in c 1 u d e *ma i n ()A(c h a r a 30 ,b 3 0 ;i n t k;从左到右依次比较相应字符完 全 相 等 返 回 零 若 不 等 则A)loveB)c h i
33、n a AC)1 o v e c h in aD)没有输出结果A对的答案:AM7.3 1下面程序的功能是输出数组s中最大元素的下标,请填空。m a in()in t k ,p,s =1,-9,7,2,-1 0,3;Af o r (p =0,k =p;p s Ek )1 Ap r in tf(d n,k);A对的答案:k二p ;7.3 2以下程序可把输入的十进制数以十六进制数的形式输出,请填空。刖a i n()c h a r b E 1 7 =ABCDEF;i n t c 64,d,i=0,b a s e=16;l o n g n ;p r i n t f (En t era n u m b e
34、 r:n );s c a n f&n);A(1O A c i=2 ;M +;加=n/b a s w h i l e (n!=0);a p r i n t f (z,Tr a n s m i t e n e w b a s e:n );f o r (i;i=0;-i)d=c i ;Ap r i n t f (%c ,b【3】);p r i n t f(”n);A对的答案:n s e d 7.3 3以下程序的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。从例如,若维数组中的数据是:2 2 2 3 4 4 5 6 6 6 6 7
35、7 8 9 9 10 1 0 1 删除后,数组中的内容应当是:2 3 4 5 6 7 8 9 10。请填空。#i n c 1 u d e#d e f i n e N 80i n t f u n (i n t a,i n t n)i n t i,j=l;Af o r (i =l;ii f (a Lj-1 4 a i)甩仃+=a i ;5 ;m a i n()i n t a N=2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10,i,n=19;p r i n t f C T h e o r i g i n a l d a t a :n );f o r(i=0;ip r
36、 i n t f (=,a i);A H=f u n(a,n);Ap r i n t f (n Th e d a t a a f t e r d e 1 e t e d :n );Af o r (i =0;i m p r i n t f (=,武 i)Sp r i n t f (,?n n u);A对的答案:!=r e t u r n j7.3 4下列程序的输出的结果是6】,7 c Am a i n ()A i n t i,j r o w,c o l u m,m;a s t a t i c i n t a r r a y 3 3=100,2 00,300,28,72,-3 0 -85 0,2,
37、6 ;Am=a r r a y 0 0;Af o r (i=0;i 3;i+)f o r (j=0;j 3;j +)i f (a r r a y i j m)m=a r r a y i j ;A c o l u m=j ;a r o w=i;)Ap r i n t f (%d,%d,%d n ”,m,r o w,c o l u m);A对的答案:-8 5 0:2,07.3 5下面程序是求出数组a r r 的两条对角线上元素之和,请填空。#i n c l u d e s t d i o.h a m a i n ()A i n t a r r 3 3=2,3,4,8,3,2,7,9,8,a=0,b
38、=0,i,j;f o r (i=0;i 3;i +)A f o r (j=0;j 3;j+)i f (8)a=a+a r r i j ;Af o r(i=0;i=0;j i f (1 0 )Ab=b+a r r i j;p r i n t f (%d,%d nz/,a,b);A对的答案:i=j j=2 i+j=28.1 若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是M)函数调用可以作为独立的语句存在B)函数调用可以作为一个函数的实参C)函数调用可以出现在表达式中功)函数调用可以作为一个函数的形参A考生答案:对的答案:D8.2 在调用函数时,假如实参是简朴的变量,它与相应形参之间的
39、数据传递方式是A)地 址 传 递 刈)单向值传递C)由实参传形参,再由形参传实参D)传递方式由用户指定考生答案:对的答案:B一个源文献时一个编译单位。以源文献为单位进行编译,而不是以函数为单位进行编译。一个C 程序由一个或多个源程序组成。8.3 以下对的的说法是M)定义函数时,形参的类型说明可以放在用枷麓.库函数,用户自定义函数B)r e t u r n 后边的值不能为表达式 形式:无参,有参函数C)假如函数值的类型与返回值类型不一致,以函数值类型为准如)翼 鳏|蠢 再 辘 的/函数名(形式参一致,以实参类型为准A考生答案:对的答案:C 数表列)8.4 以下对的的说法是M)用户若需调用标准库函
40、数,调用前必须重科定义B)用户可以重新定义标准库函数,若如此,该函数将失去原有含义C)系统主线不允许用户重新定义标准库函数D)用户若需调用标准库函数,调 用 前 不 必 使 用 预 编 厂 一 .j定义函数时的参数为形参 不占内存献中,系统自动调用】田中。贴口斗的公 仝考生答案:对的答案:B8.5 以下叙述对的的是M)函数可以嵌套定义但不能嵌套调用B)函数既可以嵌套调用也可以嵌套定义0函数既不可以嵌套定义也不可以嵌套调用D)函数可以嵌套调用但不可以嵌套定义考生答案:对的答案:D8.6 下面对C语言的描述中,对的的是M)函数一定有返回值,否则无法使用函数AB)C语言函数既可以嵌套定义又可以递归调
41、用4)在 C语言中,调用函数时,只能将实参的值传递给形参如)C语言程序中有调用关系的所有函数都必须放在同一源程序文献中A考生答案:对的答案:C8.7 下列说法中错误的是M)静态局部变量的初值是在编译时赋予的,在程序执行期间不再赋予初值B)若全局变量和某一函数中的局部变量同名,则在该函数中,此全局变量被屏蔽C)静态全局变量可以被其他的编辑单位所引用知)所有自动类局部变量的存储单元都是在进入这些局部变量所在的函数体(或复合语句)时生成,退出其所在的函数体(或复合语句)时消失考生答案:对的答案:C8.8 以下程序有语法错误,有关错误因素的对的说法是m a i n ()i n t G=5 ,k ;A
42、v o i d p r t _ c h a r ();k =p r t _ c h a r (G)AAA)语句 v o i d p r t _ c h a r ();有错,它是函数调用语句,不能用v。i d说明崂)变量名不能使用大写字母此)函数说明和函数调用语句之间有矛盾如)函数名不能使用下划线考生答案:对的答案:C8.9 以下对的的函数头定义形式是M)d o u b l e f u n (i n t x,i n t y)B)d o u b l e f u n (i n t x ;i n t y)C)d o u b l e f u n (i n t x ,i n t y);D)d o u b
43、l e f u n (i n t x ,y);A考生答案:对的答案:A8.10以下所列的各函数首部中,对的的是A)v o i d p l a y (v a r :In t e ge r ,v a r b:I n t e ge r)AB)v o i d p l a y (i n t a,b”C )v o i d p l a y (i n t a,i n t b)D)S u b p l a y (a a s i n t e g e r,b a s i n t e g e r”考生答案:对的答案:C8.11不合法的m a i n 函数命令行参数表达形式是A)m a i n (i n t a ,c h
44、 a r *c )B)m a i n(i n t a r c,c h a r *a r v)A C)m a i n(i n t a r gc,c h a r *a r g v)D)m a i n(i n t a r gv,c h a r *a r g c )考生答案:对的答案:C8.1 2 下面函数调用语句具有实参的个数为A f u n c(e x p l,e x p 2),(e x p 3,e x p 4,e x p 5);AA )1 AB)2C)4D)5 A 考生答案:对的答案:B8.1 3 设有如下函数f u n (f l o a t x)p r i n t f (n%d”,x *x);
45、b则函数的类型是A)与参数x的类型相同 B)是 v o i c U C)是 i n t 型D)无法拟定 考生答案:对的答案:O8.1 4 有以下程序f l o a t f u n (i n t x,i n t y)r e t u r n (x+y);m a i n ()i n t a=2,b=5,c =8 ;p r i n t f (%3.Of n ,f u n(i n t )f u n (a +c,b),a-c );程序运营后的输出结果是AA)编译犯错B)9 K)21D)9.0考生答案:对的答案:B8.15以下程序中函数s ort 的功能是对a数组中的数据进行由大到小的排序AV。i d s
46、ort(i n t a ,i n t n )i n t i,j,t;f or(i=0;f or(j=i+1;j i f (a i 8.1 6下列程序执行后的输出结果是v o i d f u n cl (i n t i);voi d f u n c 2(i n t i);c h a r s t =h e l l o,f ri e n d!”;voi d f un c 1(i n t i)A p r i n t f s t i );i f (i 3)i +=2;f un c2(i);Avoi d f un c2(i n t i”p ri n t f C%c,s t i );A j f (i a p
47、 );re t urn(p);A在下划线处应填入的内容是M)i 二 pB)a p =a i K)p=jD)p 二 I考生答案:对的答案:D8.1 8有以下程序i n t f (i n t n )A i f (n=1)r e t urn 1;*e 1 s e r e t urn f (n-1)+1;A m a i n()i n t i,j=0;f or(i=l;i 2)re t urn(f i b (n-1)+f i b(n-2)j e l s e re t ur n(2);AA m a i n ()p ri n t f (%d n”,f i b (3);该程序的输出结果是A)2B)4 AC)6
48、D)8考生答案:对的答案:B8.2 0下列函数的运营结果是m a i n ()A i n t i=2,p;A i n t j ,k;j =i;k =+i;p =f (j ,k);A p r i n t f (%d”,p);i n t f (i n t a,i n t b)A i n t c;i f (a b)c=l ;A e l s e i f (a=b)c=O;A e l s e c=-l;re t urn(c);M)1B)1 AC)2 AD)编译犯错,无法运营考生答案:对的答案:A8.2 1 阅读下列程序,当运营函数时,输入a s d a f a a z 6 7,则输出为i n cl ud
49、e#i n cl u de#i n cl udei n t f un (c h a r*s t r)i n t i,j =0*f o r(i=0;s t r i !=0 ;i +)a i f (s t r L i !=/)st r j+=s t r i ;AS t r L j =0 ;4Am a i n()ch a r s t r 8 1;i n t n;AC 1 rs c r();p r i n t f (In p ut a s t r i n g :);g e t s (s t r);p u t s (s t r);A f un(s t r);p ri n t f (s n ,s t r)
50、;A)a s da f a a z 6 7 AB)a s d a f a a z67C )a s dD)z67考生答案:对的答案:A8.2 2 以下程序的输出结果是1 o n g f u n (i n t n)A l on g s;(n=11|n =2)S=2;A e l s e s=n f un (n-1);A r e t urn s;)m a i n ()A p ri n t f (z/%l d n ”,f un (3);)A)1B)20 3 AD)4考生答案:对的答案:A8.2 3已有变量定义和函数调用语句:i n t a=25;p r i n t _ va l ue (&a);下面函数