全国计算机二级C语言各章节复习题.pdf
全国计算机二级C语言各章节复习题第一章c语言概述 略第2章 程序的灵魂-算法一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)2.1以下叙述中正确的是A)C语言比其他语言高级B)C语言可以不用编译就能被计算机识别执行C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C语言出现的最晚,具有其他语言的一切优点正确答案:C2.2 以下叙述中正确的是A B)可以在一个函数中定义另一个函数C)main()函数必须放在其他函数之前D)所有被调用的函数一定要在调用之前进行定义声明正确答案:A2.3 以下说法正确的是A)C语言程序总是从第一个的函数开始执行B)在C语言程序中,要调用函数必须在main()函数中定义C D)C语言程序中的main()函数必须放在程序的开始部分正确答案:C2.4 C语言规定,在一个源程序中,main函数的位置A)必须在最开始B)必须在系统调用的库函数的后面C)正确答案:C D)必须在最后2.5 以下叙述不正确的是A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D任意位置正确答案:D2.6下列叙述中正确的是A)C语言编译时不检查语法B)C语言的子程序有过程和函数两种C)C语言的函数可以嵌套定义D)正确答案:D2.7 以下叙述正确的是A)在C程序中,每行中只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误地表示D)在C程序中,益是只能用于整数运算的运算符正确答案:D2.8 以下说法错误的是A)一个算法应包含有限个步骤B)在计算机上实现的算法是用来处理数据对象的C)算法中指定的操作,不能通过已经实现的基本运算执行有限次后实现D)算法的目的是为了求解正确答案:C2.9 算法是指为解决某个特定问题而采取的确定且有限的步骤,下面不属于算法的五个特性的是A)有零个输入或多个输入B有 效 性C)有 穷 性D)确定性正确答案:B2.10下列关于C语言的说法不正确的是A)C语言既具有高级语言的一切功能,也具有低级语言的一些功能B)不C)注释可以出现在程序中任意合适的地方D)命令行后面不能加分号,命令行不是C语言的语句正确答案:B2.1 1以下说法错误的是A)高级语言都是用接近人们习惯的自然语言和数学语言作为语言的表达形式B)计算机只能处理由0和1的代码构成的二进制指令或数据C)c)D)每一种高级语言都有它对应的正确答案:C编译程序2.12 C语言中用于结构化程序设计的3种基本结构是A)顺序结构、选择结构、循环结构 B)i f,s w i t c h,b r e a k C)fo r,w h i l e,d o-w h i l e D)i f,fo r,c o n t i n u e 正确答案:A二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)2.1 3 用高级语言编写的程序称为【1】程序,它可以通过解释程序翻译一句执行一句的方式执行,也可以通过编译程序次翻译产生目标程序,然后执行。正确答案:源程序2.14 C语言程序的注释可以出现在程序中的任何地方,-个注释以【2】作为开始和结束。正确答案:/*/第 3 章数据类型运算符与表达式一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)3.1 C语言中最简单的数据类型包括A)整型、实型、逻 辑 型 B)C)整型、字符型、逻 辑 型 D)字符型、实型、逻辑型3.2 C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符A)必须为字母B)必须为下划线C)D)可以是字母,数字和下划线中任一字符3.3 下列可用于C语言用户标识符的一组是A)v o i d,d e fi n e,OW OR D B)a 3 b 3,123,C a rC)F o r,-a b c,I F C a s e D)2a,D O,s i z e o f3.4下面四个选项中,均是不正确的8进制数或16 进制数的选项是A)016 0 x 8 f 018 B)Oa b c 017 Ox a C)010-0 x 11 0 x 16 D)0a l 2 7 ff-1233.5 下列数据中,不合法的C语言实型数据的是A)0.123 B)123e 3 C)2.I e 3.5 D)7 8 9.03.6 在 16 位 C编译系统上,若定义l o n g a;,则能给a赋 4 0000的正确语句是l o n g后面要加L,%l dA)a=20000+20000;B)a=4 000*10;C)a=30000+10000;D)a=4 000L*10L;3.7 若有说明语句:c h a r c=7 2;则变量cA)包 含 1 个 字 符 B)包 含 2 个 字 符 C)包 含 3 个 字 符 D)说明不合法,c的值不确定3.8 有字符串如下,n4 07 a s i x a b c ,则字符串的长度为A)6 B)7 C)正确答案:D 8 D)3.9 C语言中运算对象必须是整型的运算符是A)(%两侧均要求为整数)B)/C)=D)=正确答案:A3.1 0 若变量已正确定义并赋值,以下符合C语言语法的表达式是A)a:=b+l B)C)i n t 18.5%3 D)a=a+7=c+b 正确答案:B3.1 1 若变量a,i已正确定义,且 i已正确赋值,合法的语句是A)a=1 B)C)a=a+=5;D)a=i n t (i);正确答案:B3.12 若 有 定 义:i n t a=7;fl o a t x=2.5,y=4.7;则表达式 x+a%3*(i n t)(x+y)%2/4 的值是A B)2.7 5 0000 C)3.5 00000 D)0.000000 正确答案:A3.1 3 若 有 运 算 符 s i z e o f,;&=,则它们按优先级由高至低的正确排列次序是A)s i z e o f,&=,B C),s i z e o f,&=D),&=,s i z e o f 正确答案:B3.1 4以下不正确的叙述是A)在 C程序中,逗号运算符的优先级最低B)在 C程序中,A P H 和 a p h 是两个不同的变量C)若 a和 b 类型相同,在计算了赋值表达式a=b 后 b中的值将放入a中,而 b中的值不变D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值 正确答案:D 3.15 已知 i n t i,a;执行语句1=(a=3,a+,-a,a+4,a+5,+a);后,变 量 i 的值为A)2 B)3 C)4 D)5 正确答案:C3.1 6 设变量a是 i n t 型,f 是 fl o a t 型,i 是 d o u b l e 型,则表达式10+a +i*f值的数据类型为A)i n t B)fl o a t C D)不确定正确答案:C3.17 在 C语言中,c h a r 型数据在内存中的存储形式是A)补 码 B)反 码 C)原 码 D确答案:D3.1 8 字符型数据在机器中是用ASCI I 码表示的,字符5 和 V在机器中表示为A)1 0 1 0 0 0 1 1 和 0 1 1 1 0 1 1 1 B)0 1 0 0 0 1 0 1 0 1 1 0 0 0 1 1C D)0 1 1 0 0 1 0 1 和 0 1 1 0 0 1 1 1 确答案:C3.1 9不能进行+和-运算的数据类型为A)指 针 B)整 型 C)长整型确答案:D3.2 0设 有 i n t x=l l;则 表 达 式(x+*l/3)的值是A)3B)4C)1 1D)1 2正确答案:A3.2 1 以下程序的输出结果是m a i n ()i n t a=2 1,b=l 1;p r i n t f (%d n”,-a+b,b+a);)A)3 0B)3 1C)3 2D)3 3正确答案:A3.2 2 假设整型变量a,b,c 的值均为5,则表达式a+b+c+的值为A)17B)16C)15D)14正确答案:C 正正正3.2 3 已知int a=6;则执行a+=a-=a*a;语句后,a 的值为先进行a-=a*a的计算A)36B)0C)-24D)-60正确答案:D3.2 4 设变量n 为 flo a t类型,m为 in t类型,则以下能实现将n 中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是A)n=(n*100+0.5)/100.0B)m=n*100+0.5,n=m/100.0C)n=n*100+0.5/100.0D)n=(n/100+0.5)*100.0正确答案:B3.25 sizeof(f l o a t)是A)一个双精度型表达式B)一个整型表达式C)-种函数调用D)一个不合法的表达式正确答案:B3.2 6在 C 语言中,i n t,c h a r 和 s h o r t 三种类型数据在内存中所占用的字节数A)由用户自己定义B)均为2个字节C)是任意的D)由所用机器的机器字长决定正确答案:D3.27 以下变量x,y,z 均 为 d o u b l e 类型且已正确赋值,不能正确表示数学式子x-v-y-7-z 的 C 语言表达式是A)x/y*zB)x*(1/(y*z)C)x/y*l/zD)x/y/z正确答案:A3.28 下列关于复合语句和空语句的说法错误的是A)复合语句是由“”开头,由“”结尾的B)复合语句在语法上视为一条语句C)复合语句内,可以有执行语句,不可以有定义语句部分D)C 程序中的所有语句都必须由一个分号作为结束正确答案:C3.29 下列关于字符串的说法中错误的是A)在 C 语言中,字符串是借助于字符型一维数组来存放的,并规定以字符 0作为字符串结束标志B)0作为标志占用存储空间,计入串的实际长度C)在表示字符串常量的时候不需要人为在其末尾加入 0 D)在 C 语言中,字符串常量隐含处理成以 0结尾正确答案:B二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)3.30以下程序的输出结果是 11 i n t a=1 2 3 4;p r i n t f a);正确答案:1 2 3 43.3 1 在计算机中,字符的比较是对它们的12】进行比较。正确答案:A S C H 码3.3 2 在内存中,存 储 字 符 X,要占用1 个字节,存储字符串X 要 占 用【3】个字-4+-节。正确答案:23.3 3 在 C 语 言 中(以 1 6 位 PC机 为 例),一 个 f l o a t 型数据在内存中所占的字节数为4;一 个 d o u b l e 型数据在内存中所占的字节数为【4】。正确答案:83.34 以下程序段的输出结果是 5】。m a i n ()i n t a=2,b=3,c=4;a*=1 6+(b+)-(+c);p r i n t f a);)正确答案:2 8 1 6+3-5=1 4*2=2 83.3 5 以下程序段的输出结果是 6】。i n t x=1 7,y=2 6;p r i n t f (%d ,y/=(x%=6);正确答案:5 x%=6=x=x%6=5 y=y/5=53.36下 列 y的 值 是 17】。i n t y;y=s i z e o f (2.2 5*4);正确答案:83.37 以下程序的输出结果是 8。m a i n ()i n t i=0 1 0 八进制的,j=1 0;p i r n t f (/z%d,%d n,z,i,j );正确答案:8,1 03.38 已知字母a的 A S C H 码为十进制数9 7,且 设 c h 为字符型变量,则表达式c h=,a +8 3的 值 为【9】o 正确答案:f a后 移 5 位 得 f3.39 如下语句p r i n t f (枇n ,B +4 0);在执行后的输出结果是 1 0 。正确答案:j B+3 2 =b b+8 =j3.4 0定 义 i n t a=5,b=2 0;若执行语句p r i n t f (%d );后,输 出 的 结 果 为 1 1 。正确答案:9第 4 章 顺序程序设计一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)4.1若变量已正确说明为f l oat 型,要通过语句s canf (;给a赋 予 1 0.0,b 赋 予 22.0,c 赋 予 33.0,下列不正确的输入形式是A)1 0 回车22 回车 33 回车B)1 0.0,22.0,33.0 回车C)1 0.0 回车22.0 33.0 回车)D)1 0 22 回车33 回车正确答案:B4.2 现有以下程序段t t i ncl u dem ai n()i nt a,b,c;s canf (z/a=%*d%d,b=%d%*d,c=%dz/,&a,&b,&c);p r i nt f (z,a=%d,b=%d,c=%d n,a,b,c);若输出的结果为a=20,b=30,c=40,则以下能够正确输入数据的是A)a=1 0 20,b=20 30,c=40B)20,30,40C)a=20,b=30,c=40D)a=1 0 20,b=30 20,c=40 注 :表 示 空 格,表示回车正确答案:D4.3 x,y,z 被定义为i nt 型变量,若从键盘给x,y,z输入数据,正确的输入语句是A)I NP U T x、y、z;B)s canf (%d%d%d”,&x,&y,&z);C)s canf (%d%d%d”,x,y,z);D)r ead(线d%d%d”,&x,&y,&z);正确答案:B4.4 已有定义定t a=-2;和输出语句p r i nt f (%8 1 x”,a);以下正确的叙述是A)整型变量的输出形式只有刎一种B)%x是格式符的一种,它可以适用于任何一种类型的数据C)%x是格式符的一-种,其变量的值按十六进制输出,但%8 1 x是错误的D)加l x不是错误的格式符,其中数字8规定了输出字段的宽度正确答案:D4.5下列程序段的输出结果是:i nt a=1 234;f l oat b=1 23.456;dou bl e c=1 2345.54321;p r i nt f%2.I f,%2.I f”,a,b,c);A)无输出B)1 2,1 23.5,1 2345.5C)1 234,1 23,5,1 2345.5D)1 234,1 23.4,1 234.5正确答案:C4.6执行下列程序时输入:1 23 空格456 空格78 9 回车输出结果是m ai n()ch ar s 1 0 0 ;i nt c,i;s canf (c,&c);s canf&i);s canf (s,s);p r i nt f (c,%d,%s n”,c,i,s);A)1 23,456,78 9B)1,456,78 9C)1,23,456,78 9D)1,23,456正确答案:D4.7 若已定义:i nt a=25,b=1 4,c=1 9;以下三目运 算 符(?:)所构成语句的执行后a=25&b-y后,变 量 z 的值为A)0B)1C)4D)5正确答案:B5.3 能正确表示逻辑关系:“a 与10或 aWO”的 C语言表达式是A)a=10 or a=0|a=10&a=10 II a=0正确答案:D5.4 若变量c 为 ch ar 类型,能正确判断出c 为小写字母的表达式是A)a=,a )|I(c =z z )C)(a =c)D)(c =a )&(c =z)正确答案:D5.5 设 i n t 乂=1,丫 二 1;表 达 式(!x|y-)的值是A)0B)1C)2D)-1正确答案:B5.6 有如下程序段i n t a=1 4,b=1 5,x;c h a r c=,A;x=(a&a b)&(c b)&(n=c d)后 n的值是A)1B)2C)3D)4正确答案:B5.9 已知x,y,z 均为整型变量,且值均为1,则执行语句+x|1+y&+z;后,表达式x+y的值为A)1B)2 C)3D)4正确答案:C5.1 0 表达式a B|(C&D)中运算符优先级最高的是A)IB)&C)1 2?x+1 0:x-1 2;p r i n t f (d n ,y);)A)0B)2 2C)1 2D)1 0正确答案:A5.12已知c h a r c h=C;则以下表达式的值是c h=(c h =N&c h 二Z )?(c h+3 2):c h;A)AB)aC)ZD)c正确答案:D5.1 3 若 有 条 件 表 达 式(ex p)?a+:b ,则以下表达式中能完全等价于表达式(ex p)的是A)(ex p=O)B)(ex p!=O)C)(ex p=l)D)(ex p!=1)正确答案:B5.1 4 有以下程序m a i n ()(i n t i=l,j=l,k=2;i f (j+|k+)&i+)p r i n t f (d,%d,%d n”,i,j,k);执行后输出结果是A)1,1,2B)2,2,1C)2,2,2D)2,2,3正确答案:C5.1 5 请阅读以下程序:m a i n ()i n t a=5,b=0,c=0;i f (a=b+c)p r i n t f (*n );else printf($n”);以上程序A)有语法错不能通过编译B)可以通过编译但不能通过连接C)输出*D)输出$正确答案:D5.16若执行下述程序时,若从键盘输入6和8时,结 果 为main()int a,b,s;scanf(%d%d”,&a,&b);s=a;if(aB)s=b;s*=s;printf s);A)36B)64C)48D)以上都不对正确答案:B5.17有如下程序m a i n ()f l o a t x=2.0,y;i f (x 0.0)y=0.0;el se i f (x 1 0.0)y=l.0/x;el se y=l.0;p r i n t f (f n ,y);该程序的输出结果是A)0.000000B)0.2 5 0000C)0.5 00000D)1.000000正确答案:C5.18 以下4个选项中,不能看做条语句的是A);B)a=5,b=2.5,c=3.6;C)i f (a 3 0?b:c;sw i t c h (d)c a se 3 0:p r i n t f (%d,a);c a se 4 0:p r i n t f (%d,,b);c a se 5 0:p r i n t f (%d,c);d ef a ul t :p r i n t f (#);则输出的结果是A)4 0,5 0,B)5 0,#C)4 0,#D)4 0,5 0,#正确答案:D5.2 1 现有如下程序段,此程序段编译有错误,则程序段的错误出在t t i n c l ud em a i n ()i n t a=3 0,b=4 0,c=5 0,d;d=a 3 0?b:c;sw i t c h (d)c a se a:p r i n t f (%d,a);c a se b:p r i n t f (d,b);c a se c:p r i n t f (d,c);d ef a ul t:p r i n t f (#);A)d ef a ul t:p r i n t f (#);这个语句B)d=a 3 0?b:c;这个语句C)c a se a:p r i n t f (d,,a);c a se b:p r i n t f (d,,b);c a se c:p r i n t f(%d,c);这三个语句D)sw i t c h (d)这个语句正确答案:C二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)5.2 2 设 y 是 i n t 型,请写出y 为奇数的关系表达式【1】。正确答案:(y%2)=l 或(y%2)!=05.2 3 设 i n t a=5,b=6,表 达 式(+a=b-)?+a:-b 的 值 是【2】。正确答案:75.2 4 将以下程序写成三目运算表达式是【3】oi f (a b)m a x=a;el se m a x=b;正确答案:m a x=(a b)?a:b;5.25以下程序输出的结果是 4】om a i n ()i n t a=5,b=4,c=3,d;d=(a b c);p r i n t f (d n ,d);)正确答案:05.2 6 若从键盘输入5 8,则以下程序输出的结果是 5】om a i n ()(i n t a;sc a n f (%d ,&a);i f (a 5 0)p r i n t f (d ,a);i f (a 4 0)p r i n t f (%d ,a);i f (a 3 0)p r i n t f (%d”,a);)正确答案:5 85 85 85.27 阅读下面语句,则程序的执行结果是【6】。#i n c l ud e st d i o.h m a i n ()i n t a=-l,b=l,k;i f (+a 0)&!(b-1 00)b r ea k;)B)f o r (;);C)i n t k=1 0000;d o k+;w h i l e(k 1 0000);D)i n t s=3 6;w h i l e(s)-s;正确答案:D6.3下面有关fo r循环的正确描述是A)fo r循环只能用于循环次数已经确定的情况B)fo r循环是先执行循环体语句,后判断表达式C)在fo r循环中,不能用break语句跳出循环体D)fo r循环的循环体语句中,可以包含多条语句,但必须用花括号括起来正确答案:D6.4若int i,j;,则for(i=j=0;i10&j8;b=+k)printf(%d,%d,”,a,b);printf(n);A)10,10,10,0,B)10,9,9,0,C)10,10,9,1,D)9,9,9,1,考生答案:正确答案:B6.6 有一堆 零 件(1 00到 2 00之 间),如果分成4个零件一组的若干组,则多2个零件;若分成7 个零件一组,则 多 3个零件;若分成9 个零件一组,则多5 个零件。下面程序是求这堆零件总数,请选择填空。t t i n cl u d em ai n ()i n t i;f o r (i=100;i 2 00;i+)i f (i-2)%4=0)i f (!(i-3)%7)i f ()p r i n t f i);)A)i%9=5B)i%9!=5C)(i-5)%9!=0D)(i-5)%9=0正确答案:D6.7 下列程序的输出结果是i n cl u d e z,s t d i o.h,zm ai n ()i n t i,a=0,b=0;f o r (i=l;i 10;i+)i f (i%2=0)a+;co n t i n u e;b+;p r i n t f (z,a=%d,b=%dz/,a,b);A)a=4,b=4B)a=4,b=5C)a=5,b=4D)a=5,b=5正确答案:B6.8 阅读下列程序,则执行结果是i n cl u d e s t d i o.h m ai n ()i n t a=0,b=0,c=0,i;f o r (i=0;i 2;m )k=0;f o r (n=m;n l;n-)k=k+m*n;p r i n t f k);)A)5.000000B)15.000000C)2 5.000000D)3 5.000000正确答案:B6.1 0 下面程序的运行结果是#i n cl u d e,zs t d i o.h,zm ai n ()i n t j,i,k=0;f o r (j=5 0;j =6 0;j+)i f (!(k )p r i n t f (n);f o r (i=2;i =j-l)p r i n t f (%d,j);k+;)A)5 3 5 9B)5 9 5 3C)3 5 9 5D)9 5 3 5正确答案:A6.1 1 已知i n t t=0;w h i l e (t=l).则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对正确答案:B6.1 2 设有以下程序段i n t x=0,s=0;w h i l e (!x!=0)s+=+x;p r i n t f s);则A)运行程序段后输出0B)运行程序段后输出1C)程序段中的控制表达式是非法的D)程序段执行无限次正确答案:B6.1 3 下列程序的输出结果是#i n cl u d e s t d i o.h m ai n ()i n t i=6;w h i l e (i )p r i n t f (%d,-i);p r i n t f (n);A)5 3 1B)4 2 0C)6 5 4 3 2 1D)死循环正确答案:B6.1 4 对 下 I,II两个语句描述正确的是w h i l e (1)II.f o r (;)A)都是无限循环B)I 是无限循环,II错误C)I 循环一次,H 错误D)以上答案都错正确答案:A6.15 以下程序段的描述,正 确 的 是 x=-l;d o x=x*x;w h i l e (!x);A)是死循环B)循环执行两次C)循环执行一次D)有语法错误正确答案:C6.1 6若有如下语句i n t x=3;d o p r i n t f x-=2);Jw h i l e (!(-x);则上面程序段A)输出的是1B)输出的是1和-2C)输出的是3和0D)是死循环正确答案:B6.1 7下面程序的运行结果是t t i n cl u d em ai n ()i n t a=l,b=10;d o b-=a;a+;w h i l e (b 0);p r i n t f (a=%d,b=%d n”,a,b);A)a=3,b=l l B)a=2,b=8 C)a=l,b=-l D)a=4,b=9正确答案:B6.1 8若运行以下程序时,从键盘输入A De s cr i p t o r (表示回车),则下面程序的运行结果是/i n cl u d e m ai n ()ch ar c;i n t v O=l,v l=0,v 2=0;d o s w i t ch (c=g e t ch ar ()(cas e a:cas e A:cas e e :cas e E :cas e i :cas e I:cas e o :cas e O :cas e u :cas e U:v l+=l;d e f au l t:v O+=l;v 2+=l;w h i l e (c!=/n );p r i n t f (z,v O=%d,v l=%d,v 2=%d n,z,v O,v l,v 2);A)v 0=7,v l=4,v 2=7B)v 0=8,v l=4,v 2=8C)v O=l l,v l=4,v 2=l lD)v 0=13,v l=4,v 2=12 正确答案:D6.1 9下面程序的功能是把3 16表示为两个加数的和,使两个加数分别能被13和1 1整除,请选择填空。#i n cl u d em ai n ()i n t i=0,j,k;do i+;k=316T3*i;while();j=k/ll;p rin tf(316=13*%d+ll*%d”,i,j);)A)k/11B)kC)k/ll=OD)k=0正确答案:B6.20 C语 言 中 w h ile 和 do-while循环的主要区别是A)do-w hile的循环体至少无条件执行一次B)w hile的循环控制条件比do-w hile的循环控制条件更严格C)do-w hile允许从外部转到循环体内D)do-w hile的循环体不能是复合语句正确答案:A6.2 1 下列说法中错误的是A)只能在循环体内使用break语句B)在循环体内使用break语句可以使流程跳力本层循环体,从而提前结束本层循环C)在 w hile和 dow hile循环中,continue语句并没有使整个循环终止D)continue的作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环判断正确答案:A二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)6.2 2 设 i,j,k 均 为 i n t 型变量,则执行完下面的fo r语句后,k 的 值 为【1】。f o r (i=0,j=10;i =j;i+,j-)k=i+j;正确答案:106.23下列程序的功能是输入一个整数,判断是否是素数,若为素数输出1,否则输出0,请填空。m ai n ()i n t i,x,y=l;s can f (%d ,&x);f o r (i=2;i 0;y-)i f (y%3=0)p r i n t f (%d ,-y);co n t i n u e;)正确答案:85 26.25阅读下面程序段,则执行后的输出结果为【4】ot t i n cl u d e s t d i o.h m ai n ()i n t a=l;f o r (;a=15;)i f (+a%5!=2)co n t i n u e;e l s e p r i n t f (%d ,a);p r i n t f (n);正确答案:2 7126.2 6 阅读下面语句,则执行后的输出结果为【5】i n cl u d e s t d i o.h m ai n ()ch ar a,b;f o r (a=,O ,b=9 ;ap r i n t f (z,%c%c,/,a,b);p r i n t f (n);正确答案:09 182 73 6 4 56.2 7 阅读下面程序,则执行后程序的结果为【6】#i n cl u d e s t d i o.h m ai n ()i n t a=0,b=0;w h i l e (a 15)a+;w h i l e (b+15);p r i n t f (级d,%d n”,a,b);正确答案:15,16第 7 章 数 组一、选 择 题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卜相应位置上。)7.1若 有 说 明 in t a L 3 4 ;则 a数组元素的非法引用是A)a 0 2*1 B)a 1 3 C)a 4-2 0 D)a 0 4 正确答案:D7.2 在 C语言中,引用数组元素时,其数组下标的数据类型允许是A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式正确答案:C7.3 执行下面的程序段后,变 量 k中的值为in t k=3,s 2 ;s 0 =k;k=s 1 *1 0;A)不定值B)3 3C)3 0D)1 0正确答案:A7.4 定义如下变量和数组:in t k;in t a 3 3 =9,8,7,6,5,4,3,2,1;则下面语句的输出结果是for(k=0;k 3;k+)prin t f(%d,a k k );A)7 5 3B)9 5 10 9 6 3D)7 4 1正确答案:B7.5 下列程序执行后的输出结果是ma in ()cha r a rr 2 4 ;st rcpy(a rr,you);st rcpy(a rr 1 ,me);a rr 0 3 =;prin t f(,z%s n,z,a r r);)A)you&meB)youC)meD)err正确答案:A7.6设有数组定义:cha r a rra y 口=C hin a”;则 数 组 a rra y所占的空间为A)4个字节B)5 个字节C)6个字节D)7 个字节正确答案:C7.7 以下不正确的定义语句是A)doub le x 5 =2.0,4,0,6,0,8.0,1 0.0;B)in t y 5 =0,1,3,5,7,9);C)cha r cl =1 ,2 ,3 ,4 ,5 ;D)cha r c2 口=xl0 ,xa,x8 ;正确答案:B7.8 若有说明:in t a 口=1,2,3,4,5,6,7;则 a数组第一维的大小是A)2B)3C)4D)无确定值正确答案:B7.9 对以下说明语句的正确理解是in t a L 1 0 =6,7,8,9,1 0;A)将 5个初值依次赋给a 1 至 a 5 B)将 5 个初值依次赋给a 0 至 a 4 C)将 5 个初值依次赋给a 6 至 a 1 0 D)因为数组长度与初值的个数不相同,所以此语句不正确正确答案:B7.1 0 若有说明:in t a 口 4 =0,0;则下面不正确的叙述是A)数组a的每个元素都可得到初值0B)二维数组a的第一维大小为1C)当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大小D)只有元素a 0 0 和a 0 1 可得到初值,其余元素均得不到确定的初值正确答案:D7.11有以下程序main O char a 口=a,b,c,d,e,f,g,h,0 );int i,j;i=sizeof(a);j=strlen(a);printf(%d,%d b”,i,j);程序运行后的输出结果是A)9,9B)8,9C)1,8D)9,8正确答案:D7.12假 定in t类型变量占用两个字节,其有定义:int x 10=0,2,4;,则数组x在内存中所占字节数是A)3B)6C)10D)20正确答案:D7.1 3 以下能对二维数组c 进行正确的初始化的语句是A)in t c 3 =3,,;B)in t c 3 =,;C)in t c 3 2 =,3,4,5;D)in t c 口 3 =,,;正确答案:B7.1 4 在 C语言中,一维数组的定义方法为类型说明符数组名A)常量表达式B)整型常量C)整型变量D)整型常量或整型表达式正确答案:A7.1 5 若二维数组a有 m 列,则计算任一元素a i j 在数组中相对位置的公式为组的第一个位置上)A)i*m+jB)j*m+IC)D)i*m+j+l正确答案:A7.1 6 下面程序输出的结果是ma in ()in t i;in t a 3 3 =1,2,3,4,5,6,7,8,9);for(i=0;i 3;i+)prin t f(d,a 2-i i );)A)1 5 9B)7 5 30 3 5 7D)5 9 1正确答案:B a 0 0 位 于 数(假 设7.17以下不能对二维数组a进行正确初始化的语句是A)in t a 2 3 =0;B)in t a 口 3 =1,2,0);C)in t a 2 3 =1,2,3,4,5,6;D)in t a 3 =1,2,3,4,5,6;正确答案:C7.18阅读下面程序,则程序段的功能是t t in clude st dio.hma in ()in t c =2 3,1,5 6,2 3 4,7,0,3 4),i,j,t;for(i=l;i=0&t c Lj )c j+1 =C j;j;)C j+1 =t;)for(i=0;i 0)put s(a);else if(k 0)put s(b);)A)loveB)chin aC)lovechin aD)没有输出结果正确答案:A二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)7.31下面程序的功能是输出数组s中最大元素的下标,请填空。m ain ()in t k,p,s 口=1,-9,7,2,-10,3;fo r (p =0,k=p;p s k)1 p r in t f(%dn,k);)正确答案:k=p;7.3 2 以下程序可把输入的十进制数以十六进制数的形式输出,请填空。m ain ()char b 17=0123456789AB C D E F ;in t c 64,d,i=0,bas e=16;l o n g n;p r in t f(E n t e r a n u m be r:n,z);s can f(%l d,&n);do c i=2 ;i+;n=n/bas e;w hil e (n!=0);p r in t f(T r an s m it e n e w b a s e:n );fo r (-i;i=0;一i)d=c i ;p r in t f(%c,b 3 );)p r in t f;)正确答案:n