广技师C语言复习题5练习数组有答案Word格式文档下载.docx
《广技师C语言复习题5练习数组有答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《广技师C语言复习题5练习数组有答案Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。
A.inta[2][]={{1,0,1},{5,2,3}};
B.inta[][3]={{1,2,3},{4,5,6}};
C.inta[2][4]={{1,2,3},{4,5},{6}};
D.inta[][3]={{1,0,1,0},{},{1,1}};
7.下面程序段(每行代码前面的数字表示行号)。
1inta[3]={3*0};
2inti
3for(i=0;
i<
3;
i++)scanf(“%d”,&
a[i]);
4for(i=1;
i++)a[0]=a[0]+a[i];
5printf(“%d\n”,a[0]);
A.第1行有错误B.第5行有错误
C.第3行有错误D.没有错误
8.若有定义floatx[4]={1.3,2.4,5.6},y=6;
则错误的语句是。
A.y=x[3];
B.y=x+1;
C.y=x[2]+1D.x[0]=y;
9.定义如下变量和数组:
intk;
inta[3][3]={1,2,3,4,5,6,7,8,9};
则下面语句的输出结果是。
for(k=0;
k<
k++)printf(“%d”,a[k][2-k]);
A.357B.369C.159D.147
11.下面是对数组s的初始化,其中错误的语句是。
#include<
stdio.h>
intmain()
{inta[2][3]={{1,2,3},{4,5,6}};
intb[3][2],i,j;
printf("
arraya:
\n"
);
for(i=0;
i<
=1;
i++)
{for(j=0;
;
j++)
{printf("
%5d"
a[i][j]);
;
}
arrayb:
{for(j=0;
j<
printf("
b[i][j]);
return0;
}
7.下面程序段的运行结果是。
intx[5],i;
x[0]=1;
x[1]=2;
for(i=2;
5;
i++)x[i]=x[i-1]+x[i-2];
i++)printf("
%d"
x[i]);
8.下面程序的运行结果是。
{inta[5][5],i,j,n=1;
for(j=0;
a[i][j]=n++;
Theresultis:
=i;
%4d"
10.下面程序的运行结果是。
{inta[10]={7,3,5,2,9,1,0,6,8,4},i=0,j=9,t;
while(i<
j)
{t=a[i];
a[i]=a[j];
a[j]=t;
i+=2;
j-=2;
10;
i+=2)printf("
a[i]);
12.下面程序的功能是检查一个二维数组是否对称(即对所有i、j都有a[i][j]=a[j][i])。
请填空。
{inta[4][4]={1,2,3,4,2,2,5,6,3,5,3,7,4,6,7,4};
inti,j,found=0;
4;
for(;
i++)
if(a[j][i]!
=a[i][j])
{;
break;
if(found==1)printf("
No\n"
elseprintf("
Yes\n"
13.设数组a中的元素均为正整数,以下程序是求a中偶数的个数和偶数的平均值。
{inta[10]={1,2,3,4,5,6,7,8,9,10};
intk,s,i;
floatave;
for(k=s=i=0;
{if(a[i]%2!
=0);
s+=;
k++;
if(k!
=0)
{ave=s/k;
%d,%f\n"
k,ave);
14.以下程序是将矩阵a、b的和存入矩阵c中并按矩阵形式输出。
{inta[3][4]={{3,-2,7,5},{1,0,4,-3},{6,8,0,2}};
intb[3][4]={{-2,0,1,4},{5,-1,7,6},{6,8,0,2}};
inti,j,c[3][4];
j++)
{c[i][j]=;
%3d"
c[i][j]);
15.以下程序段的功能是求数组num中小于零的数据之和。
intnum[20]={10,20,1,-20,203,-21,2,-2,-2,11,-21,22,12,-2,-234,-90,22,90,-45,20};
intsum=0,i;
=19;
if()sum=;
sum=%6d"
sum);
16.以下程序段的功能是,运行后输出结果是。
intnum[10]={103,1,-20,-203,-21,2,-2,-2,13,-21};
if(num[i]>
0&
&
num[i]%10==3)
sum=sum+num[i];
sum=%d\n"
21.下面程序段将输出computer。
charc[]="
Itisacomputer"
;
inti,j;
{;
%c"
c[j]);
23.下面程序段的功能是将字符数组a[6]={'
a'
'
b'
c'
d'
e'
f'
}变为a[6]={'
}。
{chart,a[6]={'
};
inti;
for(i=4;
i>
=0;
i--);
a[0]=t;
=5;
i++)putchar(a[i]);
24.下面程序的功能是在任意的字符串a中,将与字符c相等的所有元素的下标值分别存放在整型数组b中。
{chara[80];
inti,b[80],k=0;
gets(a);
a[i]!
='
\0'
if(){b[k]=i;
k;
b[i]);
}
答案:
1.1560
2.04
3.doublea[M][M]={0};
4.06
5.scanf(“%d”,&
a[i])
i%4==0printf(“\n”);
6.j<
=2
b[j][i]=a[i][j]
7.358
8.1
67
111213
16171819
2122232425
9.m=100;
m<
=999
m/10%10
a[i]=m
10.46108
11.k=i
j=i
a[j]=min;
a[k]=max;
12.i=j+1
found=1;
13.continue
a[i]
14.a[i][j]+b[i][j]
printf(“\n”)
15.num[i]<
0sum+num[i]
16.计算数组num中大于零且个位数为3的数据之和
116
17.a[8]=xi<
8
18.i-1
a[j+1]=a[j]
a[j+1]
19.b[j]<
a[i]
3
j<
5
20.9
21.i<
=7
j=i+8
22.a[0]=c-1
a[2]=c+1
23.t=a[5]
a[i+1]=a[i]
24.a[i]==’c’k++
25.a[i]=s[i][0]
a[i]=s[i][j]