C语言习题huizong-.pdf
黑色加粗为必考,红色加粗是做错过的题,6.7 单元需加强记忆第一单元C 语言概述一、选择题1、C 语言中主函数的个数为()个。A)1 B)2 C)无穷个D)任意个2、以下关于 C 语言描述错误的是()。A)一个 C 程序总是从 main 函数开始执行B)每个语句和数据声明的最后必须有一个分号C)C 语言的注释符是以“/*”开始并以“*/”结束的D)一个 C 程序可以包含多个main 函数3、C 语言源程序文件后缀为()。A).EXE B).OBJ C).C D).ASM 4、C 语言是由()组成的。A)子程序B)主程序与子程序C)函数D)过程5、C 语言属于()语言A)机器语言B)汇编语言C)高级语言D)面向对象语言第二单元C 语言基础一、选择题1、C 语言中普通整型变量int 在内存中占()字节。A)1 B)2C)3 D)4 2、下列不是 C 语言基本数据类型的是()。A)字符型B)整型C)浮点型D)结构体3、有关自增、自减运算,以下只有()是正确的。A)-f B)+78 C)ab+D)d+4、已知 A=7.5,B=2,C=3.6,表达式(AB&CA)|(AB)的值是()。A)0 B)10 C)1 D)5 5、若有 x=1,y=2,z=3,则表达式(xy?x:y)=z的值是()。A)1 B)2 C)3 D)0 6、判断 char型变量 ch 是否为大写字母的正确表达式是()。A)A=ch=A)&(ch=A)&(ch=Z)D)(A=ch)7、判断整型变量digit 是否为数字的正确表达式是()。A)0=ch=0)&(ch=0)&(ch=9)D)(0=ch)8、一个 C 程序的执行是从()。A)本程序的 main 函数开始,到 main 函数结柬B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的 main 函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main 函数结束9、在以下标识符中,合法的是()A)if B)0 xy C)_xyD)case 10、C 语言中各种类型的数据其实决定了占用内存的字节数。float 占()。A)一字节B)二字节C)四字节D)八字节11、下列各选项中,()是有效的标识符。A)abB)3day C)day3 D)#abc 12、以下叙述正确的是()。A)在 C 程序中,每行只能写一条语句B)若 a 是实型变量,C 程序中不允许 a=10这种赋值。C)在 C 程序中,%是只能用于整数运算的运算符D)在 C 程序中,无论是整数还是实数,没有什么区别13、有输入语句:scanf(a=%d,b=%d,c=%d,&a,&b,&c);为使变量a 的值为 1,b 的值为 3,c的值为 2,则正确的数据输入方式是()。A)132B)1,3,2C)a=1 b=3 c=2D)a=1,b=3,c=214、设整型变量 a为 5,使 b 不为 2 的表达式是()。A)b=a/2 B)b=6-(-a)C)b=a%2D)b=a3?2:1 15、以下程序的输出结果是()。int x=10,y=10;printf(%d n,x-,-y);A)10 10 B)9 9 C)9 10 D)10 9 16、选出下列标识符中不是合法的标识符的是()。A)hot_do B)cat1 C)_pri D)2ab17、设有如下定义:int x=10,y=3,z;则语句 printf(%dn,z=x%y);的输出结果是()。A)1 B)0 C)4 D)3 18、各种基本数据类型的存贮空间正确的长度排列为()。A)int char floatdouble B)doublefloat intchar C)charint floatdoubleD)floatint char=0|b=0)&(a0|b=0&b=0)&(a0&b0)&(a+b023、C 语言中,合法的字符型常数是()。A)?A B)AC)65 D)A 24、下列程序段的输出结果是()。char c1,c2;c1=65;c2=65+32+1;printf(%c,%c,c1,c2);A)a,B B)a,b C)A,b D)A,B 25、下列语句不具有赋值功能的是()A)a*=b B)x=1 C)a+b D)a+26、在 C 语言中,存储一个整型、字符型、双精度实型变量所需的字节()。A)2、1、8 B)4、1、4 C)4、1、4 D)2、2、8 27、下列程序段输出结果是()。int j=2,i=1;j/=i*j;printf(%d,j);A)0 B)1 C)2 D)3 28、不是 C 语言提供的合法关键字是()。A)switch B)char C)case D)this29、在 C 语言中,要求参加运算的数必须时整数的运算符是()。A)/B)*C)%D)=30、若已定义 x 和 y 为 double 类型,且 x=1;则表达式 y=x+3/2 的值是()。A)1 B)2 C)2.0 D)2.5 31、设 a为整型变量,不能正确表达数学关系:10a15的 C 语言表达式是()。A)10a10&a15 D)!(a=15)32、表达式“10!=9 的值是()。A)true B)非零值C)0 D)1 33、设 a,b为字符型变量,执行scanf(“a=%c,b=%c”,&a,&b)后使 a为A,b 为B,从键盘上的正确输入是()。A)A BB)A,BC)A=A,B=B D)a=A,b=B34、设有单精度变量f,其值为 13.8。执行语句“n=(int)f)%3;”后,n 的值是()。A)4 B)1 C)4.333333 D)4.6 35、普通整形 int 能够处理的数据范围是()A)-3276732767 B)-3276832768 C)-3276732768 D)-3276832767 36、若定义 x 为 double型变量,则能正确输入x 值的语句是。A)scanf(%f,x);B)scanf(%f,&x);C)scanf(%lf,&x);D)scanf(%5.1f,&x)37、执行 x=(6*7%8+9)/5;后,x 的值为()A)1 B)2 C)3 D)4 38、若有代数式 3ae/bc,则不正确的 c 语言表达式是()A)a/b/c*e*3 B)3*a*e/b/c C)3*a*e/b*c D)a*e/b/c*3 39、设有变量说明:float x=4.0,y=4.0,下面使 x 为 10.0 的表达式是()A)x-=y*2.5 B)x/=y+9 C)x*=y-6 D)x+=y+2 40、以下能正确定义整型变量z、b、c并为其赋初值 5 的语句是()A)int a=b=c=5;B)int a,c,c=5;C)a=5,b=5,c=5;D)a=b=c=5;41、C 语言中双精度浮点型变量double在内存中占()字节。A)1 B)2 C)4D)842、以下哪个数学函数的作用是求某数的平方根()。A)sqrt()B)fabs()C)pow()D)exp()43、两次运行下面的程序,如果从键盘上分别输入6 和 3,则输出结果是()。int x;scanf(%d,&x);if(+x5)printf(%d,x);else printf(%dn,x-);A)7 和 5 B)6 和 3 C)7 和 4 D)6 和 4 44、执行语句 x=(a=3,b=a-)后,x,a,b 的值依次为()。A)3,3,2 B)3,2,2 C)3,2,3 D)2,3,2 45、读出以下语句的输出结果是()。int x=10,y=10;printf(%d%dn,x-,-y);A)10 10 B)9 9 C)9 10 D)10 9 46、C 语言中,合法的字符串型常数是()。A)?AB)A C)?abcdD)abcd 47、为表示关系 xyz,应使用 C 语言表达式()。A)(x=y)&(y=z)B)(x=y)AND(y=z)C)(x=y=z)D)(x=z)&(y=z)48、C 语言的输入与输出操作是由()完成的。A)输入语句B)输出语句C)输入与输出函数 D)输入与输出语句49、设有 int x=11;则表达式(x+1/3)的值是()。A)11.3 B)11.333333 C)11 D)12 50、若已定义 x 和 y 为 double类型,则表达式 x=1,y=x+3/2 的值是()A)1 B)2 C)2.0D)2.5 二、判断题()1、“A”是一个字符常量。X()2.、在程序运行过程中其值可以改变的量称为变量。V()3、在 C 语言中,变量可以先使用再定义。X()4、在 C 语言中,所有算术运算符的优先级都相同。X()5、程序中若要使用数学函数就必须包含头文件 math.h。V()6、程序中若要使用printf()函数就必须引用头文件 stdio.h。V()7、在标准 C 中,“=”是判断两个数是否相等。X()8、在标准 C 中,使用所有输入输出函数必须包含“stdio.h”文件。X()9、在 C 语言中输出数据时可以指定数据的精度,即小数点后保留几位。V()10、C 语言中的基本数据类型有字符型、整型和浮点型。V()11、所有的 C 语言程序都必须有一个名为main 的主函数。V()12、/运算符要求运算数必须是整数。X()13、Int,#a15,char都是合法的标识符。X()14、b和b是不同的两种常量。V()15、C 语言本身没有输入输出语句,要实现输入输出必须调用相应的输入输出函数。V 第三单元算法一、判断题()1、算法简而言之就是基于某种计算机语言,利用数据结构来解决具体问题的思路和方法。V()2、描述算法的图形化方法之一就是程序流程图。V()3、描述算法可以用自然语言、传统流程图、N-S 流程图来描述。V()4、算法要有一定的 逻辑性 和健壮性。V()5、算法的特点之一是无穷性。X 第四单元顺序结构一、选择题1、下列标识符中合法的标识符是()A)int2B)if C)2two D)a#b 2、选出下列标识符中不是合法的标识符的是()A)hot_do B)cat113C)INT D)_2ab 3.、以下选项中属于 C 语言的数据类型是()A)字符串型B)双精度型C)逻辑型D)布尔型4、设有如下定义:int x=10,y=3,z;则语句 printf(%dn,z=x%y);的输出结果是()A)3 B)0 C)4 D)1 5、设整型变量 n的值为 2,执行语句 n+=n;后,n 的值是()A)0 B)4 C)-4 D)2 二、判断题()1、结构化程序设计的三种结构是顺序结构、选择结构和循环结构。V()2、可以用 printf(%d,123);语句输出一个十六进制整数。X()3、可以用scanf(%x,&da);语句从键盘接收一个八进制整数给变量da。X()4、语句 scanf(%5.2f,&a);是正确的。X()5、如果 a是一维字符数组名,则语句scanf(%s,&a);是正确的。X 第五单元选择结构一、选择题1、有以下程序段int a;if(3&2)a=1;else a=2;执行后 a=()。A)1 B)2 C)3 D)0 2、表达式:10!=9 的值是()。A)true B)非零值 C)0 D)13、设 int x=1,y=1;表达式(!x+|y-)的值是 _()。A)0 B)1 C)2 D)-1 4、设整型变量 s,c1,c2的值均为 2,则执行语句(s=(c1=c2)后,s的值为:()。A)0 B)1 C)2 D)3 5、设整型变量 a,b 的值分别为 1,0,那么 a&b 的结果是()。A)0 B)1 C)2 D)都不对6、设整型变量 a,b 的值分别为 1,0,那么 a|b的结果是()。A)0 B)1C)2 D)都不对7、设整型变量 a,b 的值分别为 1,0,那么 a!=b 的结果是()。A)0 B)1 C)2 D)都不对8、设整型变量 a,b 的值分别为 1,0,那么 a|(b+)的结果是()。A)0 B)1C)2 D)都不对9、设整型变量 a,b 的值分别为 1,0,那么 a&(+b)的结果是()。A)0 B)1 C)2 D)都不对10、设整型变量 a,b 的值分别为 1,2,那么表达式ab?a+b:a-b的结果是()。A)1 B)2 C)3 D)-111、下边程序段int a=2,b=3,c=4;if(c=a+b)printf(OK!)else printf(NO!);输出结果是()。A)OK!B)NO C)程序错误D)以上都不对12、设整型变量 a,b 的值分别为 1,0,那么 a=b 的结果是()。A)0 B)1 C)2 D)都不对13、设整型变量 a,b 的值分别为 1,0,那么!(a=b)的结果是()。A)0 B)1 C)2 D)都不对14、设整型变量 a,b 的值分别为 1,2,那么!a&b 的结果是()。A)0B)1 C)2 D)都不对15、设 x 为非零,则下列描述错误的是()。A)!(x=0)B)x!=0 C)3*x!=0 D)x0 16、下列表达式的值中哪个表示为逻辑假()。A)1 B)3 C)0 D)-1 17、设整型变量 a,b 的值分别为 6,2,那么 a%b!=0 的结果是()。A)0 B)1 C)2 D)3 18、下列属于分支结构的是()。A)while B)switch C)for D)以上都不是19、设整型变量 a,b 的值分别为 1,0,那么 a|(+b)的结果是()。A)0 B)1C)2 D)都不对20、设整型变量 a,b 的值分别为 1,0,那么 a&(b+)的结果是()。A)0B)1 C)2 D)都不对二、判断题()1、在分支结构 switch 中,case后面跟的一定是常量。V()2、逻辑运算符优先级高于关系运算符的优先级。X()3、关系运算符中,=的优先级要高于=的优先级。X()4、关系运算符中,的优先级要高于=的优先级。X()5、在条件表达式中,-3 代表为真。V()6、在条件表达式中,非0 代表为真。V()7、条件运算符?:是 2 目运算符。X()8、在 switch 语句中,有没有 break的情况都是相同的。X()9、判断 a,b两个数是否相等,用a=b。X()10、判断 a,b两个数是否相等,用a=b。V 第六单元for 循环结构一、选择题1、对下边 for 循环,循环体体执行次数是()。for(i=1;i 1;i-);A)6 B)5 C)4D)7 3、下边循环执行完后,a 为()。for(a=1;a 5;a+)a=2*a;A)5 B)4 C)7D)8 4、下边循环执行完后,s 为()。for(a=1;a 5;a+)for(b=s=0;b a;b+,s=s+a);A)6 B)4 C)7 D)无答案5、下边程序执行完后,a,b 的值是()。for(a=1;a=1;b-)if(a=b))exit(0);A)1,1B)5,5 C)6,6 D)均不对6、下边程序执行后s的值是()。for(s=i=1;i 100;i+)s=s+1/i;A)0 B)2C)1 D)难以确定7、下边程序段输出结果是()。int i,a=0;for(i=0;i 10;i+)a+,i+;printf(%d,a);A)5B)6 C)9 D)10 8、以下 for 循环的次数为()。for(x=0,y=0;(y=123)&(x4);x+);A)不循环B)无限次C)3 D)4 9、从循环体内某一层跳出,继续执行循环外的语句是:()。A)break语句B)return语句C)continue语句D)空语句10、for(k=0;k5;+k)if(k=3)continue;printf(%d,k);的输出结果为()。A)012 B)0124 C)01234 D)没有输出结果11、循环语句for(x=0,y=0;(y!=123)|(x4);x+);的循环执行次数为()。A)无限次B)不循环C)4 次D)3 次12、设 i,j,k 均为 int 型变量,k 初值为 0,执行完下面的for 循环后,k 的值为()。for(i=0,j=10;i 3;j-)a+;if(a 3)break;A)3 B、4 C、5 D)6 15、for 循环中,表达式1 的作用是()。A)循环变量赋初值B)循环条件C)改变循环变量的值D)什么作用都没有16、for 循环中,表达式2 的作用是()。A)循环变量赋初值B)循环条件C)改变循环变量的值D)什么作用都没有17、for 循环中,表达式3 的作用是()。A)循环变量赋初值B)循环条件C)改变循环变量的值D)什么作用都没有18、for 循环中,能省略的表达式有()。A)表达式 1 B)表达式 2 C)表达式 3 D)3 个都可以19、下面程序中 a+总共被执行多少次()。for(i=0;i3;i+)for(j=0;j3;j+)a+;A)3 次B)2 次C)6 次D)9 次20、下面循环体被执行的次数是()。for(i=0;i-10;i-);D.for(;i0;);22、定义变量 int i=2;则以下是无限循环的是:()。A.for(i=0;i=1;i+);B.for(i=0;i10;i+);D.for(;i;+i);23、以下 for 循环语句,循环体的执行次数是:()。for(i=1;i1;i-);A.4 B.5 C.3 D.2 25、下面的循环体执行完后,a 的值是:()。for(a=2;a8;a+)a*=2;A.10 B.9 C.12 D.11 二、判断题()1、continue 语句只能用于循环语句中。V()2、在 for 循环中允许使用嵌套循环,但只能是嵌套while 循环。X()3、break语句只能用于循环语句中。X()4、for 循环可能一次都不执行。V()5、break语句是结束本层循环。V()6、break语句是结束本次循环。X()7、continue 语句是结束本层循环。X()8、continue 语句是结束本次循环。V()9、在循环过程中,使用 break语句和 continue 语句的作用是一样的。X()10、for(;)这写书写 for 循环是合法的,即for 三个表达式都是可以省略的。V 三、程序阅读1、以下程序运行完后的输出数据是:_aaaaaaaaa_ main()int a=10;for(;a;)a-;if(a=0)break;printf(a);2、以下程序运行完后a的值是:_1_ main()int i,a=0;for(i=0;i10;i+)i+;a+;printf(%d,a);3、以下程序运行完后a的值是:_5_ main()int i,a=0;for(i=0;i10;i+)a+,i+;printf(%d,a);4、以下程序运行完后的结果是:_#*#*_ main()int k;for(k=1;k1;n-)s=s+1/n;printf(%6.1fn,s);第七单元while 与 do-while循环一、选择题1、break语句的正确的用法是()。A)无论在任何情况下,都中断程序的执行,退出程序。B)在多重循环中,只能退出最靠近的那一层循环语句。C)跳出多重循环。D)只能修改控制变量。2、int i=0;while(i+5);循环结束后 i 的值是()。A)6 B)7 C)5 D)8 3、语句 while(E);括号中的表达式E 等价于()。A)E=0 B)E!=1 C)E!=0 D)E=1 4、int i=1;while(-i);循环次数是()。A)无限次B)0 C)2 D)1 5、下述程序段的运行结果是。int a=1,b=2,c=3,t;while(abc)t=a;a=b;b=t;c-;printf(%d,%d,%d,a,b,c);A)1,2,0 B)2,1,0 C)程序错误D)2,1,1 6、程序运行的结果是()。main()int x;x=3;do printf(%d,x-);while(x);A)0 B)无限循环C)3 D)2 7、do-while 语句的循环体()。A)可能一次都不执行B)至少要执行一次C)由循环条件决定循环次数D)B C 均正确8、对下面的 while 语句,循环体执行次数是()次。a=30;while(a-);A)30 B)31 C)39D)都不对9、在 C 语言中,下列说法中正确的是()。A)不能使用 do while的循环。B)do while的循环必须使用break语句退出循环。C)do while的循环中,当条件为0 时将结束循环。D)do while的循环中,当条件为非0 时将结束循环。10、下面的循环执行完后,循环次数是()次。while(k=10)k-;A)9B)10 C)11D)无穷次二、判断题()1、while 适合控制循环次数不确定的循环。(V)()2、无论循环条件是否满足,do.while 循环的循环体至少执行一次。(V)()3、while(a);是一个死循环。(V)()4、在实际编程中,do-while 循环完全可以用 for 循环替换。(V)()5、continue;语句和 break;语句有同样的作用。(X)第八单元数组一、选择题1、下列描述中不正确的是()。A)字符型数组中可能存放字符串。B)可以对字符型数组进行整体输入、输出。C)字符串函数声明在包ctype.h中。D)字符串的结束符是 0。2、定义如下变量和数组:int i;int x6=1,2,3,4,5,6;则语句 for(i=0;i3;i+)printf(%d ,x 5-i);的输出结果是()。A)1 2 3 B)1 3 5 C)2 4 6 D)6 5 4 3、以下对二维数组a进行正确初始化的是()。A)int a23=1,2,3,4,5,6;B)int a 3=1,2,3,4,5,6;C)int a2=1,2,3,4,5,6;D)int a2=1,2,3,4;4、下列程序的输出结果是()。char a=abcd,b=ABCD,str50=xyz;strcpy(str,strcat(a,b);printf(%s,str);A)xyabcAB B)abcABz C)ABabcz D)abcdABCD5、不能把字符串:Hello!赋给数组 b 的语句是()。A)char b10=H,e,l,l,o,!;B)char b5=Hello!;C)char b10;strcpy(b,Hello!);D)char b10=Hello!;6、下列对数组定义不正确的语句是()。A)int m5;B)char b=h,e;C)int a10=1,6,8,4;D)char p;7、以下对二维数组a 的正确定义是()A)int a3;B)float a(3,4);C)double a24;D)float a(3)(4);8、给出以下定义:char x=abcdefg;char y=a,b,c,d,e,f,g;以下正确的叙述是()。A)数组 x 和数组 y 等价B)数组 x 和数组 y 长度相等C)数组 x 的长度大于数组y 的长度,因为还存储了一个结束符D)数组 x 的长度小于数组 y 的长度,因为还存储了一个结束符9、在 int b 3=1,3,2,4,5,6,0;中 b22 的值是()。A)0 B)5 C)6 D)2 10、下列初始化正确的是()。A)char s1=abcd;B)char s23=zxy;C)char*p=1000;D)char s423=xyz,mnp;11、设有定义:char s12=string;则 printf(%dn,strlen(s);的输出是()。A)6 B)7 C)11 D)12 12、函数调用 strcat(strcpy(str1,str2),str3)的功能是()。A)将字符串 str2 复制到字符串 str1 中后再将字符串 str3 连接到字符串str1之后B)将字符串 str1 复制到字符串 str2中后再连接到字符串str3 之后C)将字符串 str1 复制到字符串 str2中后再复制到字符串str3 之后D)将字符串 str2 连接到字符串 str1 中后再将字符串 str1复制到字符串 str3中13、使用随机函数需要包含的头文件有()。A)#include B)#include C)#include D)A 和 B 14、若有说明 int a34=0;下列叙述正确的是()。A)只有元素 a00可得到初值 0 B)此说明语句不正确C)数组 a中各元素都可得到初值,但其值不一定为0 D)数组 a中每个元素均可得到初值0 15、执行下面的程序段后,变量k 的值为()。int k=3,s2;s0=k;k=s0*10;A)不定值B)33 C)30 D)10 16、以下定义数组的语句中正确的是()。A)int a(10)B)char str;C)int n=5;int a4n;D)#define N 10 char strN;17、定义如下变量和数组:int k;int a33=9,8,7,6,5,4,3,2,1;则下列语句的输出结果是()。for(k=0;ks2)B)if(strcmp(s1,s2)C)if(strlen(s1)strlen(s2)D)if(strcat(s1)strcat(s2)23、下列程序段的运行结果()。char c15=a,b,0,c,0;printf(%s,c);A)a,b B)ab C)abc D)a,b 24、假设有两个字符数组a,b,则以下正确的输入语句是()。A)puts(a,b);B)scanf(%s%s,a,b);C)scanf(%s%s,&a,&b);D)gets(a);gets(b);25、若有说明 int a3=1,2,3,4,5,6,7,8,9;则 a数组行数的大小为()。A)2 B)3 C)4 D)无确定值26.若有定义 double x35;则 x 数组中行标的下限为(),列标的上限为()。A)1 3 B)3 5 C)0 5 D)0 4 27、若有说明 a34;则数组 a 中的各元素()。A)可在程序的运行阶段得到初始值0 B)可在程序的编译阶段得到初始值0 C)不能得到确定的初始值D)可在程序的编译或运行阶段得到初始值28、若有下列程序段char x80;scanf(%s,x);printf(“%s”,x);从键盘上输入字符串“zhang san”,则输出结果为()。A)zhang B)zhangsan C)zhang san D)san 29、在 C 语言中,引用数组元素时,其数组下标的数据类型允许为()A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式30、设有如下形式的字符数组定义:char str=welcome;则执行下列语句后的输出结果()。printf(%dn,strlen(strcpy(str,“Hello”);A)7 B)5 C)8 D)9 31、若有 int a35=2,2,2,6,2,6,2,则数组 a 共有()个元素。A)8 B)5 C)3 D)1532、设有如下定义:int a100;则数组下标区间为:()。A)099B)199 C)0100 D)1100 33、若有定义:int a34,则对数组 a中某元素的正确引用是()。A)a24 B)a13 C)a(5)D)a10-10 34、以下对一维整型数组a的正确说明是()。A)int a(10);B)int n=10,an;C)int n;D)#define SIZE 10 scanf(%d,&n);int aSIZE;nt an;35、若要使用字符函数,需要引入的头文件是()。A)string.h B)ctype.h C)stdlib.h D)stdio.h 二、判断题()1、在定义一维数组时,可以将该数组的长度省略 V()2、数组的下标从 0 开始。V()3、数组的下标从 1 开始。X ()4、数组名代表数组的首地址。V ()5、在 C 语言中,数组元素在内存中的存放顺序是按顺序存放的。V()6、字符数组可以存放字符串。V()7、字符串函数 strupr(str),可将串中大写字母变成小写字母。X()8、字符串函数 strrev(str),可将 str 串字符颠倒过来。V()9、字符串的结束符不是 0。X()10、可如此定义 a 数组:float a3=12.5,z,school;X()11、数组边定义边赋值时,大括号内数据项的数目可以大于或等于数组的长度。X ()12、数组边定义边赋值时,大括号内数据项的数目可以小于或等于数组的长度。V()13、字符串函数 strcat(str1,str2)的作用是将字符串str2 连接在字符串str1 后。V()14、定义字符型一维数组char a80;可用 gets(a0)给 a0赋值。X()15、数组定义int a10;也可以写成int a(10);。X 三、程序阅读题1、下面程序的输出结果是_6 5_。main()char ch7=65ab21;int i;for(i=0;chi=0&chi=9;i+)printf(%c,chi);2、下面程序执行后,s1=_15.0_,s2=_2.7_。float b=0.5,1.6,2.7,3.8,4.9,5,6.1,6.2,7.3,8.4,s1,s2;int i;for(i=0,s1=s2=0;i9;i+)if(i%2)s1+=(int)bi;if(i%3)s2+=bi (int)bi;3、将程序补充完整,实现功能:输出斐氏数列的前20 项,菲波纳契额数列具有这样的性质:F(0)=1 F(1)=2 F(N)=F(N-1)+F(N-2)#include stdio.h void main()int i;long f20=1,2;for(i=2;i20;i+)fi=fi-2+fi-1;for(i=0;i20;i+)printf(%ldt,fi);4、将程序补充完整,实现功能:输入 2 个字符串,判断两个串是否相同,相同输出 yes,不同输出 no。#include stdio.h#include string.h void main()char x80,y80;gets(x);gets(y);if(strcmp(x,y)=0)puts(yes);else puts(no);5、设有以下代码:#include stdio.h void main()int a33,s=0;int i,j;for(i=0;i3;i+)for(j=0;j3;j+)scanf(%d,&aij);for(i=0;i3;i+)for(j=0;ji;j+)s+=aij;printf(%dn,s);假设键盘上输入的9 个数据为:1 2 3 4 5 6 7 8 9,上面程序的输出结果是 _19_。