第7章 数组习题解答.docx
- 文档编号:10822587
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:29
- 大小:28.95KB
第7章 数组习题解答.docx
《第7章 数组习题解答.docx》由会员分享,可在线阅读,更多相关《第7章 数组习题解答.docx(29页珍藏版)》请在冰点文库上搜索。
第7章数组习题解答
第7章数组习题解答
1.以下各题中,选择一个正确的翻案。
⑴能正确对一维数组a中所有元素进行初始化的是(D)。
A.inta[5]={}B.inta[]={0}C.inta[5]=0,0,0,0,0D.inta[5]={0}
#include
voidmain()
{
inti;
inta[5]={0};
for(i=0;i<5;i++)
printf("%d",a[i]);
}
⑵有说明intk=3,a[10];
则下列可以正确引用数组元素的表达式是(A)。
A.a[k]B.a[10]C.a[1.3]D.a[3*5]
⑶有定义intd[][3]={1,2,3,4,5,6};
执行语句printf("%c",d[1][0]+'A');
结果是(D)。
A.AB.BC.DD.E
#include
voidmain()
{
intd[][3]={1,2,3,4,5,6};
printf("%c",d[1][0]+'A');
}
⑷有定义charc='A',ch[20]={'a','b','c','\0','d','\0'};
若执行:
printf("%s",ch);
结果为(B)。
A.‘abc’B.abcC.abcdD.abc\0d
#include
voidmain()
{
charc='A',ch[20]={'a','b','c','\0','d','\0'};
printf("%s",ch);
}
⑸对数组进行初始化charcarr[]={'s','t','u','d','e','n','t'},barr[]="student";
则正确的是(D)。
A.carr与barr长度相同B.carr比barr
C.carr与barr相同D.carr比barr短
#include
voidmain()
{
charcarr[]={'s','t','u','d','e','n','t'},barr[]="student";
}
2.阅读下列程序,写出运行结果。
⑴
#include
voidmain()
{
inti,j,d[4][4]={{1,2,3,4},{5,6,7,8},{4,3,2,1},{1,2,3,4}};
for(i=0;i<4;i++)
for(j=0;j
if(d[i][j]>d[j][i])
d[j][i]=d[i][j];
for(i=0;i<4;i++)
{
printf("\n");
for(j=0;j<4;j++)
if(j>=i)
printf("%6d",d[i][j]);//显示主对角线以上的元素
else
printf("%6c",'');
}
putchar('\n');
}
运行结果:
1544
678
23
4
⑵若输入十进制数3291时,下列程序输出为:
6333
#include
voidmain()
{
inti,d,m,n;
chars[8];
scanf("%d",&n);
i=0;//存储字符数组下标
do
{
m=n/8;
d=n%8;
s[i]='0'+d;//余数转换为数字字符
i++;
n=m;//商作为下一轮行循环操作的被除数
}while(n!
=0);//商不为0,继续循环
for(i--;i>=0;i--)
putchar(s[i]);
}
3.程序填空。
⑴从键盘输入一个数,将其插入到一个升序数组中,保持数组仍然按升序排列。
#include
voidmain()
{
intdata,temp,k;
staticinta[9]={-10,2,4,8,10,15,25,50};
printf("\nEnteradata:
");
scanf("%d",&data);
a[8]=data;
for(k=8;k>=0;k--)
{
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第7章 数组习题解答 数组 习题 解答