数组试题库
选择题
★1、若有以下说明语句:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c=’a’,d,g;
则数值为4的表达式是__________。
A、a[g-c] B、a[4] C、a[‘d’-‘c’] D、a[‘d’-c]
★2、假设int型变量占两个字节的存储单元,若有定义:
int x[10]={0,2,4};
则数组x在内存中所占字节数为______。
A、3 B、6 C、10 D、20
★3、下列合法的数组定义是_________。
A、int a[]=”string”; B、int a[5]={0,1,2,3,4,5};
C、char a=”string”; D、char a[]={0,1,2,3,4,5};
★4、若给出以下定义:
char x[]=”abcdefg”;
char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’};
则正确的叙述为__________。
A、数组x和数组y等价 B、数组x和数组y的长度相同
C、数组x的长度大于数组y的长度 D、数组y的长度大于数组x的长度
5、若定义如下变量和数组_________。
int j;
int x[3][3]={1,2,3,4,5,6,7,8,9};
则下面语句的输出结果是_________。
For (j=0;j<3;j++)
Printf(“%d”,x[j][2-j]);
A、1 5 9 B、1 4 7 C、3 5 7 D、3 6 9
6、下列程序运行后的输出结果是______。
Main()
{int n[3],t,j,k;
for(t=0;t<3;t++)
n[t]=0;
k=2;
for(t=0;t
for(j=0;j<3;j++)
n[j]=n[t]+1;
printf(“%d\n”,n[1]);}
A、 2 B、 1 C、 0 D、3
7、有以下程main()
{ int p[7]={11,13,14,15,16,17,18}, i=0,k=0;
while(i<7 && p[i]%2) { k =k+ p[i]; i++; }
printf("%d\n", k);
}
执行后输出结果是A、58 B、56 C、45 D、24
★8、以下能正确定义数组并正确赋初值的语句是A、int N=5,b[N][N]; B、int a[1][2]={{1},{3}};
C、int c[2][]= {{1,2},{3,4}}; D、int d[3][2]={{1,2},{34}};
9、有以下程序main()
{ int m[][3]={1,4,7,2,5,8,3,6,9};
int i,j,k=2;
for(i=0; i<3; i++)
{ printf("%d ",m[k][i]); }
}
执行后输出结果是A、4 5 6 B、2 5 8 C、3 6 9 D、7 8 9
★10、以下能正确定义一维数组的选项是int num[]; B) #define N 100 int num[N];
C、int num[0..100]; D) int N=100;int num[N];
★11、下列选项中正确的语句组是char s[8]; s={"Beijing"}; B、char *s; s={"Beijing"};
C、char s[8]; s="Beijing"; D、char *s; s="Beijing";
★12、有以下程序段
int?a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;
b=p[5];
b中的值是__________。
A、5????? B、6????? C、8????? D、9
13、有以下程序
main(?)
{??char?a[]="abcdefg",b[10]="abcdefg";
? ??printf