C语言数组选择题(新)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、以下定义语句中,错误的是________。
A) int a[]={1,2}; B) char a[]={"test"};
C) char s[10]={"test"}; D) int n=5,a[n];
D
2、以下对一维数组a进行正确初始化的是__________。
A) int a[10]=(0,0,0,0,0); B) int a[10]={ };
C) int a[ ]={0}; D) int a[10]={ 10*2};
C
3、以下对二维数组a进行正确初始化的是__________。
A) int a[2][3]={ {1,2},{3,4},{5,6} };
B) int a[ ][3]={1,2,3,4,5,6 };
C) int a[2][ ]={1,2,3,4,5,6};
D) int a[2][ ]={ { 1,2},{3,4}};
B
4、在定义int a[5][4]; 之后,对a的引用正确的是________。
A) a[2][4] B) a[1,3]
C) a[4][3] D) a[5][0]
C
5、以下给字符数组str定义和赋值正确的是________。
A) char str[10]; str={"China!"};
B) char str[ ]={"China!"};
C) char str[10]; strcpy( str,"abcdefghijkl");
D) char str[10]={"abcdefghijkl"};
B
6、以下一维数组a的正确定义是________ 。
A) int a(10); B) int n=10,a[n];
C) int n; D) #define SIZE 10
scanf("%d",&n); int a[SIZE];
int a[n];
D
7、在执行语句:int a[ ][3]={1,2,3,4,5,6}; 后,
a[1][0]的值是________。
A) 4 B) 1
C) 2 D) 5
A
8、当接受用户输入的含有空格的字符串时,应使用________函数。
A) gets( ) B) getchar( )
C) scanf( ) D) printf( )
A
9、在定义int a[5][6];
后,数组a中的第10个元素是________。(设a[0][0]为第一个元素)A) a[2][5] B) a[2][4]
C) a[1][3] D) a[1][5]
C
10、执行下面的程序段后,变量k中的值为__________。
int k=3,s[2];
s[0]=k; k=s[1]*10;
A) 不定值B) 33
C) 30 D) 10
A
11、下列程序执行后的输出结果是__________。
main()
{int a,b[5];
a=0; b[0]=3;
printf("%d,%d\n",b[0],b[1]); }
A) 3,0 B) 3 0
C) 0,3 D) 3,不定值
D
12、设有数组定义:char array[]="China";则strlen(array)
的值为________ 。
A) 4 B) 5
C) 6 D) 7
B
13、下列程序执行后的输出结果是__________。
main()
{ int i,j,a[3][3];
for(i=0;i<3;i++)
for(j=0;j<=i;j++) a[i][j]=i*j;
printf("%d,%d\n",a[1][2],a[2][1]);
}
A) 2,2 B) 不定值,2
C) 2 D) 2,0
B
14、设有数组定义:char array[]="China";则数组array所占
的存储空间为________。
A) 4个字节B) 5个字节
C) 6个字节D) 7个字节
C
15、设有数组定义:char array[10]= "China";则数组array所占
的存储空间为________。
A) 4个字节B) 5个字节
C) 6个字节D) 10个字节
D
16、已知数组a的赋值情况如下所示,则执行语句a[2]++;后a[1]和a[2]的值分别是________。
a[0] a[1] a[2] a[3] a[4]
┌──┬──┬──┬──┬──┐
│10 │20 │30 │40 │50 │
└──┴──┴──┴──┴──┘
A) 20和30 B) 20和31
C) 21和30 D) 21和31
B
17、以下程序输出a数组中的最小值及其下标,在划线处应填入的是________。main( )
{ int i,p=0,a[10];
for(i=0;i<10;i++) scanf("%d",&a[i]);
for(i=1;i<10;i++)
if(a[i]<a[p])_______________;
printf("%d,%d\n",a[p],p);
}
A) i=p B) a[p]=a[i]
C) p=j D) p=i
D
18、以下程序的输出结果是________。
main( )
{ int i,p=0,a[10]={1,5,9,0,-3,8,7,0,1,2};
for(i=1;i<10;i++)
if(a[i]<a[p]) p=i;
printf("%d,%d\n",a[p],p);
}
A) -3,4 B) 0,1
C) 9,2 D) 2,9
A
19、有如下说明:
int a[10]={0,1,2,3,4,5,6,7,8,9};
则数值不为9的表达式是________。
A) a[10-1] B) a[8]
C) a[9]-0 D) a[9]-a[0]
B
20、有如下程序
main()
{ int n[5]={0,0,0},i,k=3;
for(i=0;i<k;i++) n[i]=i+1;
printf("%d\n",n[k]);
}
该程序的输出结果是________。
A) 不确定的值B) 4
C) 2 D) 0
D
21、有如下程序
main()
{ int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=1;i<3;i++)
for(j=0;j<=i;j++) s+=a[i][j];