MOOC第六章测试答案
1单选(10分)
以下正确的数组定义语句是:
A.char d[5]="CHINA";
B.int b[2][ ]={{1}, {2}};
C.float c[ ][3]={1, 2, 3, 4, 5};
D.char a[5]={'1', '2', '3', '4', '5', '\0'};
2.设有说明性语句:char s[]="a\'\029";sizeof(s)的结果是:
A.3
B.6
C.5
D.4
3.一个数组作为实参调用某个函数,实际传递给形参的值是
A.整个数组。
B.该数组的元素个数。
C.该数组的首地址。
D.该数组的长度。
4.设有声明"int p[10]={1,2},i=0;",以下语句中与"p[i]=p[i+1],i++;"等价的是:
A.p[i]=p[i++];
B.p[++i]=p[i];
C.i++,p[i-1]=p[i];
D.p[++i]=p[i+1];
5. 设有说明语句:char s[5][5] ={"abc","efgh"}; 值为字符g的数组元素是:
A.s[1][3]
B.s[1][2]
C.s[1][4]
D.s[4][4]
6.以下数组声明中正确的是
A.int a[3]={1,2,3,4}
B.int a[3.14];
C.int a[];
D.int a[2+3]={0};
7.下面哪一个语句编译会告警?
A.char cc[] { 128, 127, 126 };
B.int a[] { 1, 2, 3, 4 }
C.float b[]{ 1.1f, 2.2f, 3.3f };
D.double c[]{ 3, 4.3, 5.5, 6 };
8.下面哪一个数组说明语句是正确的?
A.char s3[][]={'x','y','z'};
B.char s2[3]="xyz";
C.char s1[]="xyz"
D.char s4[2][3]={"xyz","abc"};
9.下面哪一个数组说明语句是错误的?
A.char s4[]="Ctest\n";
B.char s3[20]="Ctest";
C.char s1[10];
s1="Ctest";
D.char s2[]={'C', 't', 'e', 's', 't'};
10.下列程序的输出结果是 。
int main(){
int i, k, a[10], p[3];
k=5;
for (i=0; i<10; i++) a[i]=i;
for (i=0; i<3; i++) p[i] = a[i *(i+1)];
for (i=0; i<3; i++) k+=p[i] *2;
cout<<k<<endl;
return 0;
}
A.24
B.21
C.22
D.23