版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、c语言 数组习题第章数组习题 a卷 . 单项选择题 (1) nt a4=5,8,9;其中 a3的值为(d )。d . 5. 3 . 8 d. 9 () 以下 4 个字符串函数中,( a)所在的头文件与其他 个不同。a . gt b. stcy strlend strc(3) 以下 4 个数组定义中,( d)是错误的。 aint7; b. #definn 5 lng bn;c. cha c5;d.ntn,n; () 对字符数组进行初始化,()形式是错误。a cha1 =, 2, 3; . char c2 =123; c. ca3 =1, 2, , ; . charc4=13;(5) 在数组中,数
2、组名表示(a )。 a. 数组第1个元素的首地址 .数组第 个元素的首地址c. 数组所有元素的首地址 d.数组最后 1 个元素的首地址(6) 若有以下数组说明,则数值最小的和最大的元素下标分别是(b ) binta=1,3,4,5,6,7,8,9,10,; a 1,2b.0,1 c1,1 d.,12 (7)若有以下说明,则数值为4 的表达式是()。 in 2 1,2,5,6,,8,9,10,1,12; ca=a,d, ; a. a-b. 4 c.d-c d. a-c () 设有定义:ars2 = ring; 则prinf(%dn,strln(s); 的输出是(a)。 a. 6 b. . 11d
3、. 12 (9) 设有定义:char s12= trn; 则pritf(%dn , sieof(); 的输出是(b)。a. 6 b. 7 c 1 d. 12 (10)合法的数组定义是( a)。a.cara trin ; .it a5=0,1,2,3,4,5; .car a=strg ; . car a =0,1,2,3,4,5 (11)合法的数组定义是(d )。 a int a3 =0,1,2,3,5; b. n a 3 =0,,2,3,4; c. inta23=,1,2,4,5,6; din2=0,,2,3,; (12) 下列定义的字符数组中,输出 printf(%n, str2);的输出是
4、(c)。 static str320 = bic, xpo, wdw; a. basicfoxpro c. wiws . 输出语句出错 (14)下列各语句定义了数组,其中哪一个是不正确的( c)。 a.char a310ina,amercan,sia; b. it x22=1,2,4; . flat x2 =1,2,4,6,8,1; d. intm3=1,2,,4,5,6; (1)数组定义为int32=,2,,5,6,值为的数组元素是(b)。 . 32 a21 c.a1 d a2 (16) 下面的程序中哪一行有错误( )。 #includ ai() foatra50.0; /第行int i;
5、for(i=0;i5;i+) san(%f,&array); fr(i=1;i5;i+) arry0=arry0+arrai;/第b行prinf(f,array0); /第行 . 第行 .第b行 c 第c行 没有 () 下面哪一项是不正确的字符串赋值或赋初值的方式(a )。 .charstr; sr=tring; b ca tr7,t,r,i,g;c. char sr110;str1=strin; . cha str1string,str=1345678; (8)若有以下说明和语句,则输出结果是哪一项(d )。(stlen()为求字符串s的长度的函数) char12a bok!; pinf(%
6、d,trln(s); a.12 b. c. 7 d (1) 若有以下说明和语句,则输出结果是( )。 (stre()为求字符串s的长度的函数) charspv0wn; rntf(%,strlen(s)); a14 .3 . 9 . 字符串中有非法字符 (20) 若有以下说明和语句,则输出结果是( c)。 charsr=c:ab.dt; pin(%,str);a.字符串中有非法字符 b c:abc.tc c:ac.at d. c:abcdat 2. 填空题(1) c 语言中,数组的各元素必须具有相同的(类型名),元素的下标下限为(0),下标必须是正整数、0、或者(变量)。但在程序执行过程中,不检
7、查元素下标是否()。(2)c 语言中,数组在内存中占一片()的存储区,由()代表它的首地址。数组名是一个()常量,不能对它进行赋值运算。 ()执行stic int b5, 3,4,5,6; 后,4 (),12 () 。 () 设有定义语句 stt nt 34 1,2,3;则 10值为 (),11 值为() ,a的值为() 。 (5) 如定义语句为 car = widos,b = 95;,语句 prit(s,strcat(a,b);的输出结果为 。 (6)根据以下说明,写出正确的说明语句:men是一个有10个整型元素的数组。 ste是一个有4个实型元素的数组,元素值分别为1.9,33, 0,20
8、.6。 gr是一个二维数组,共有4行,10列整型元素。 itrid1;(7) aay是一个一维整形数组,有10个元素,前6个元素的初值是9,4,7,49,3,-5,正确的说明语句为: 。该数组下标的取值范围是从_到_(从小到大)。用scan函数输入数组的第二个元素表示为 。用赋值语句把9存入第一个元素表示为: 。把第六个和第四个元素之和存入第一个元素表示为: 。 (8) 写出以下初始化数组的长度:int cn;数组h的长度为_。fl isa1.0,2.,3.0,4.0,50;数组sa的长度为_。int dom8;数组dom的长度为_。fot pci2;数组pc的长度为_。 ntast3;数组a
9、st的长度为_。inttt34;数组at的长度为_。 loatdl3=1,7,2,5,3,6,9;数组dell的长度为_。 () 若有以下整型的数组,数组元素和它们得值如下所示: 数组元素: a0 2aa4 a 6 a7 a8 a9 元素的值: 9 42 8 2 10 7 1 3 请写出对该数组的说明,并赋以上初值。 该数组的最小下标值为_,最大下标值为_。 写出下面各式的值:a9的值为_ ;aa4+a8的值为_。 (1) 字符串abn012/的长度为_。 3 判断题( )(1) c允许对数组的大小作动态定义,即可用变量定义数组的大小。( )(2) 字符数组不要求它的最后一个字符为0,甚至可以
10、不包含0。( )(3) 数组定义in a10; 也可以写成 int(10); 。( )(4) 在对全部数组元素赋初值时,可以不指定数组长度。()(5) 定义s为56(5行6列)的数组可写成foa a5,6; ( )(6) 数组定义 int a1; 表示数组名为a,此数组有10个元素。( )(7) 数组定义 int a1;表示数组名为a,此数组有1个元素,第0个元素为a0。()() tatic chc=“a ook”; 与staic chr c“a k”;等价。( )(9)sttic char =a , ,b,o,0;与 sttic chac=a, ,b,o,k; 等价。( )(0)设已有说明:
11、taic char 110,c210; 下面程序片段是合法的。c=“”; c2c;4 程序填空题 ()输入 0 个数,输出它们的平均值,输出与平均值之差的绝对值为最小的数组元素。请填空。 lue id mai() la a20,pz=0,s,t; int i,; or(i=0;i20;i+) pzai; s=fabs(a0-pz);fo(=1;i20;i+)if(fas(a-pjz)s) s=abs(ai-pjz);t=a; (2) 以下程序以每行 10个数据的形式输出a 数组,请填空。 oidmn( ) int a50,i; prtf(输入0个整数:); for(=0;i50; i+) an
12、f( %d, );for(i=1; 0; i+)f( ) printf( %dn , ) ;prntf( %3d,ai1); () 下面程序的功能是输出数组s 中最大元素的下标,请填空。 void main( ) in ,p; int s=1,-9,7,2,-10,; for(p0,kp; par) s= ; avege = ; pritf(20个数中最大值是%,mx);prit(最小值是%d,i); printf(和是%d,sum); pintf(平均值是%d.n,average); 5. 阅读程序,分析程序的功能。 (1) #iude #ivoidma( ) char s0; int ;
13、for(0;80; +) s=etcar( ); if(si=n) eak; si=0; i=; hil(s) puthar(s+); uch(n); 从键盘输入一个字符串,并逐一输出 () #lue #inlude oid min( )chrsr1080, c80; int ;for(i=; 0; i+) gets(ri); strcy(c,tr0);for(i=1; i10; i+)i(strlen() srln(str) trcp(,sti);print( %sn, c); pntf( %dn, trlen (c); 从键盘输入若干字符串,找到其中最长的一个输出及它的长度(3) oid
14、ma( ) ch a1080,c80;int, j,k; fr(i=0; i10;) ges(ai); fo(=0; i9;i+) =i ; for(j=+1; 10;j+) if(trmp(, ak)0) k=j;(k!= ) rpy(c,ai) ;strcpy(ai, k);stcpy(ak,); / 字符串交换 fr(i0; i10; i+) pus (ai); 从() 阅读程序,写出运行结果voidman() nta6=12,,17,25,2,6,b6=7,13,,2,23,16,i,j; for(0;i;+) or(j0;j6;j+) if(i=j)brak; if(j;k-) ak
15、=ak-1;a0=temp; prinf(%,a); g()阅读下列程序,写出程序运行的输出结果。 void main( ) chr t1 *; for(int =0;i;i+)prin(sn,str1); str1i ; trtren(s1)-1=0; (7) 该程序的运行结果是: m= ,=,n=。vod main() float ary43= 3.4,5.,6, 68,99.,-.023,05,-577,123.5, 3.4,0,112 ; int i,j; int min; itm,n; mi arr0; m=;0;fr(i=0;i3;+) o(=0;j=a&=)st32; i+; u
16、t(str); 程序运行时如果输入 pase,屏幕显示 程序运行时如果输入aabb2cc3, (0)以下程序的功能是输出如下形式的二项式系数表(杨辉三角)。要求表的行数在运行时输入,若行数小于或大于10则重新输入。填空11 2 11 3 1 46 41 10 0 1。ain ( ) nt 101=0,i,j,n; while(saf(%,&n),n10); r(i=0;n;i+) for(i=2;i;i+) fr(j=1;ji;j+) ; or(i=0;n;i+) r(j=;ji;j+) pintf(%4,aij); ()以下程序的功能是输入一个字符串,如果字符串中有连续的空格,只保留一个空格
17、符。如:输入:i bo.,输出字符串应为iam a boy.填空#inclu string.hain ( )cha b61; int i;(b); fr(i=0; ;i+) f(bi1= &bi=) (b+i-,+i);-; ;tch();(12)下列程序的输出结果是 。 main ( ) int m1,3,5,6,7,8,9,i,j,k; fr(i0;i4;i+) k=mi;mi=m8i;m-ik; for(=;j9;j+)p(%d,mj); utchar();本部分参考答案:.选择题 1 d a a6-10 d d a -5 d c cb 16-20 dc c 2.填空题 ()数据类型,0
18、,符号常量,越界 (2)连续,数组名,地址()0, 6 (4),0, ()windows95 (6)int mesh10; fat stp4 1.9,-.33, , 20.6; ()intay10= 9,4,7,4,3,-5; 09cnf(%d,&arra1); array0 39;arry0 rayary; (8)6 0 16 2 82 3 (9)int 0,4,2,8,,10,7,1,3; 0 9 8 (10)103. 判断题 只有4,6,8正确4.程序填空题(1)for(=0;i20;i+) af(“f”,ai); jz/=20; printf(“%f,%fn”,pjz,t);(2) &a i%10= i-1 ()k=p(4)0 0&ra 9 maxaryi;min=array
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论