C语言习题九数组的定义和使用.pdfVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

习题九数组的定义和使用

1.有以下程序

voidf(intb[])

{inti;

for(i=2;i6;i++)b[i]*=2;}

main()

{inta[10]={1,2,3,4,5,6,7,8,9,10},i;

f(a);f(a);

程序运行后的输出结果是______。

A、1,2,3,4,5,6,7,8,9,10,B、1,2,6,8,10,12,7,8,9,10,

C、1,2,3,4,10,12,14,16,9,10,D、1,2,6,8,10,12,14,16,9,10,

解析:本题在调用函数时,实参是a[0]的地址,即把a[0]的地址传给形参,由条件i=2且i6得出函数

将对a[2]开始的4个元素(3,4,5,6)进行乘以2操作,结果分别为:a[2]=6,a[3]=8,a[4]=10,a[5]=12。

a[0]、a[1]、a[6]、a[7]、a[8]、a[9]的值并没有发生变化,所以最后的输出结果为:

1,2,6,8,10,12,7,8,9,10,。故本题答案选B。

2.有以下程序

main()

{inta[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}},i,j,k,t;

for(i=0;i4;i++)

for(j=0;j3;j++)

for(k=j+1;k4;k++)

if(a[j][i]a[k][i])

{t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;}/*按列排序*/*/

}

程序运行后的输出结果是______。

A、1,6,5,7,B、8,7,3,1,C、4,7,5,2,D、1,6,2,1,

解析:本题首先定义了一个4行4列的二维数组a,并用了三层循环来进行按列由小到大排序操作。外层

循环变量i表示数组的列,第二层循环变量j表示数组的行,第三层循环用于求第i列第j行的最小值,其中

通过if语句对相关数值进行比较和交换。然后再通过for语句对排序数组对角线上的值进行输出,即输出

a[0][0]、a[1][1]、a[2][2]、a[3][3]。故本题答案选A。

3.有以下程序

main()

{inti,t[][3]={9,8,7,6,5,4,3,2,1};{inti,t[][3]={9,8,7,6,5,4,3,2,1};

}

程序执行后的输出结果是______。

A、753B、357C、369D、751

解析:本题考查的是二维数组的应用。将初始值放在一对大括号内,按数组元素排列的顺序对各元素

赋值,二维数组中行下标可以省略,但列下标必须要指定,由此题可以看出数组t是一个三行三列的二维数

组,执行for循环语句t[2-i][i]分别为t[2][0],t[1][1],t[0][2],得出输出结果为357。故本题答案

为B。

4.有以下程序

#includestring.h

main()

{{charcharp[]={a,b,c},q[10]={a,b,c};p[]={a,b,c},q[10]={a,b,c};

以下叙述中正确的是______。

A、在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3

B、由于p数组中没有字符串结束符,长度不能确定;但q数组中字符长度为3

C、由于q数组中没有字符串结束符,长度不能确定;但p数组中字符长度为3

D、由于p和q数组中没有字符串结束符,故长度都不能确定

解析:strlen是计算以是计算以结束的字符串的长度的函数,函数的值为字符串中实际长度,不包括不包括。

题中题中虽然给出了数组大小,即数组实际分配的存储空间,但此字符串只占用前3个

存储单元,其余存储单元系统自动加上存储单元,其余存储单元系统自动加上,故数组q的长度为3;由于p数组中没有字符串结束符,故字符

串的长度不能确定。故本题答案为B。

5.有以下程序

voidsort(in

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档