选择题:
1、下面关于数组的描述错误的是( D )。
A、在c++语言中数组的名字就是指向该数组第一个元素的指针。
B、长度为n的数组,下标的范围是0一n-l。
C、数组的大小必须在编译时确定。
D、.数组只能通过值参数和引用参数两种方式传递给函数。
2、下列一维数组定义格式正确的是( C )。
A、int x[4];y[6]; B、int x=6;float min[x];
C、double x,y[8]; D、float sum[8.6];
3、下列对数组元素初始化正确的是( A )。
A、int x[5]={1,2,3,4}; B、int y[5]={1,2,3,4,5,6};
C、int a[5]=1; D、float b[5]={1.0;2.0;3.0;4.0;5.0};
4、下列二维数组定义格式正确的是( C )。
A、int x{2,3} B、float x[2,3] C、double x[2][3] D、float x{2}{3}
5、下列二维数组元素初始化格式正确的是( A )。
A、int x[3][4]={1,2,3,4}; B、int x[3][4]={1,1,1,1,1,1,1,1,1,1,1,1,1}
C、int x[3][4]={ }; D、int x[3][4]={{1,2,3},{4,5,6},{7,8,9},{10,11,12}};
6、设有数组定义:char array[]="China";,则数组array所占的空间为( C )。
A、4个字节 B、5个字节 C、6个字节 D、7个字节
7、下列字符数组初始化正确的是( A )。
A、char arr[5]="abcd"; B、char arr[5]="abcdef";
C、char arr="abcdef"; D、char arr[5]={abcde};
8、在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队尾(即最后一个)元素的位置为( C )。
A、length+1 B、first+length C、(first+length-1)%MS D、(first+length)%MS
9、在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队尾的后一个位置为( D )。
A、length+1 B、first+length C、(first+length-1)%MS D、(first+length)%MS
10、在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队首的后一个位置为( B )。
A、first+1 B、 (first+1)%MS C、(first-1)%MS D、(first+length)%MS
11、有数组定义 double d[10]; 以下叙述不正确的是( B )。
A、数组d有10个元素 B、数组d的最后一个元素是d[10]
C、数组d的第一个元素*d D、数组d的字节数是sizeof(double)*10
12、以下对一维数组a的定义正确的是( C )。
A、int n = 5, a[n]; B、int a(5);
C、const int N = 5; int a[N]; D、int n; cin>>n; int a[n];
13、下列数组定义语句中,不合法的是( A )。
A、int a[3] = { 0, 1,2, 3 }; B、int a[] = { 0, 1,2 };
C、int a[3] = { 0, 1,2 }; D、int a[3] = { 0 };
14、若有定义语句:int a[3][6];按在内存中存放的顺序,a数组的第10个元素是( D )。
A、a[0][3] B、a[1][4] C、a[0][4] D、a[1][3]
15、以下数组定义中错误的是( B )。
A、int x[][3]={0}; B、int x[2][3]={{1,2},{3,4},{5,6}};
C、int x[][3]={{1,2,3},{4,5,6}}; D、int x[2][3]={1,2,3,4,5,6};
判断题:
1、在C++中可以利用字符数组表示字符串。( √ )
2、strcat()函数实现两个字符串的连接,结果中包含两个"\0"。( × )