第07部份 数组.docx
- 文档编号:27741541
- 上传时间:2023-07-04
- 格式:DOCX
- 页数:39
- 大小:27.15KB
第07部份 数组.docx
《第07部份 数组.docx》由会员分享,可在线阅读,更多相关《第07部份 数组.docx(39页珍藏版)》请在冰豆网上搜索。
第07部份数组
第7章数组
一、单选题
1.在C语言中,一维数组的定义方式为:
类型说明符数组名( )。
A.[常量表达式]B.[整型表达式]
C.[整型常量]或[整型表达式]D.[整型常量]
(知识点:
一维数组的定义; 难度系数:
1; 答案:
A)
2.以下关于数组的描述中,正确的是:
( )。
A.在程序中可以对数值数组中的数据进行整体使用
B.数组与基本类型变量一样,在使用前必须先定义
C.在同一个数组中,不同的元素可能会是不同的数据类型
D.在定义数组时,数组大小可以是变量或变量表达式
(知识点:
一维数组的定义; 难度系数:
1; 答案:
B)
3.以下关于数组的描述中,错误的是:
( )。
A.对于同一个数组,其所有元素的数据类型都是相同的
B.数组的类型实际上是指数组元素的取值类型
C.有定义:
inta[3];则定义了a[1]、a[2]、a[3]三个数组元素
D.inta[10];说明整型数组a,有10个元素
(知识点:
一维数组的定义; 难度系数:
1; 答案:
C)
4.假设int型变量占两个字节的存储单元,若有定义:
intx[10]={0,2,4};
则数组x在内存中所占字节数为:
( )。
A.3B.6C.10D.20
(知识点:
一维数组的定义; 难度系数:
1; 答案:
D)
5.以下关于数组的描述中,正确的是:
( )。
A.数组元素可以像普通变量一样使用
B.C语言规定可以一次引用整个数组,而不需要逐个引用数组元素
C.引用数组元素时,数组的下标可以是任何类型的表达式
D.输出有10个元素的数组,可以只用一个printf语句实现输出整个数组
(知识点:
一维数组元素的引用; 难度系数:
1; 答案:
A)
6.以下关于数组的描述中,错误的是:
( )。
A.如果定义数组的长度为n,那么引用数组元素的下标最多到n-1
B.C语言规定,数组下标的最小值是1,最大值为数组的大小减1
C.数组元素可以像普通变量一样使用
D.引用数组元素一定要使用下标运算符[],不能使用圆括号()
(知识点:
一维数组元素的引用; 难度系数:
1; 答案:
B)
7.若有说明:
inta[10];,则对a数组元素的正确引用是:
( )。
A.a[10]B.a[3.5]C.a(5)D.a[10-10]
(知识点:
一维数组元素的引用; 难度系数:
1; 答案:
D)
8.在C语言中,引用数组元素时,其数组下标的数据类型允许是:
( )。
A.字符常量B.浮点型常量
C.整型常量或整型表达式D.任何类型的表达式
(知识点:
一维数组元素的引用; 难度系数:
1; 答案:
C)
9.以下关于数组初始化赋值的描述中,错误的是:
( )。
A.可以给元素逐个赋值,也可以给数组整体赋值
B.数组初始化赋值是指在数组定义时给数组元素赋予初值
C.在给数组元素赋值时,可以只给部分元素赋初值
D.如给全部元素赋值,则在数组说明中,可以不给出数组元素的个数
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
A)
10.以下关于数组的描述中,正确的是:
( )。
A.若有inta[3]=1;,则表示该数组的3个元素的值都被赋值为1
B.若有inta[5]={1,2,3};,则是将3个初值依次赋给a[1]至a[3]
C.如给全部数组元素都赋予初值,则可以不指定数组长度
D.在给数组元素赋予初值以后,其值就固定,不再变化
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
C)
11.下列数组定义、初始化或赋值语句中,正确的是:
( )。
A.intx[5]={1,2,3,4,5,6};B.intn=8;intscore[n];
C.inta[8];a[8]=100;D.intx[]={1,2,3,4,5,6};
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
D)
12.合法的数组说明语句是:
( )。
A.inta[]=“string”;B.chara[]={0,1,2,3,4,5};
C.chara=“string”;D.inta[5]={0,1,2,3,4,5};
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
B)
13.以下关于二维数组的描述中,错误的是:
( )。
A.在定义二维数组时,可以将该数组的两个维数全部省略
B.在C语言中,二维数组元素在内存中的存放顺序是按行存放
C.如有定义inta[1][2]={1,1};,则数组a的所有元素初值均为1
D.a[3][4]可理解为:
有3个元素a[0]、a[1]、a[2],每个元素是一个包含4个元素的数组
(知识点:
二维数组的定义; 难度系数:
1; 答案:
A)
14.已知inta[][3]={1,2,3,4,5,6,7};,则数组a的第一维的大小是:
( )。
A.2B.3C.4D.无确定值
(知识点:
二维数组的定义; 难度系数:
1; 答案:
B)
15.若有说明:
inta[3][4];,则对a数组元素的非法引用是:
( )。
A.a[0][2*1]B.a[1][3]C.a[4-2][0]D.a[0][4]
(知识点:
二维数组的引用; 难度系数:
1; 答案:
D)
16.若有定义inta[2][3],i=1,j=2,k=0;,则对a数组元素的非法引用是:
( )。
A.a[i][k]B.a[j-1][i]C.a[i+j][2]D.a[1][j+k]
(知识点:
二维数组的引用; 难度系数:
1; 答案:
C)
17.以下不能对二维数组a进行正确初始化的语句是:
( )。
A.inta[][3]={1,2,3,4,5,6};
B.inta[2][3]={{1,2},{3,4},{5,6}};
C.inta[][3]={{1,2},{0}};
D.inta[2][3]={0};
(知识点:
二维数组的初始化; 难度系数:
1; 答案:
B)
18.以下能正确定义数组并正确赋初值的语句是:
( )。
A.intN=5,b[N][N];B.inta[1][2]={{1},{3}};
C.intc[2][]={{1,2},{3,4}};D.intd[3][2]={{1,2},{3,4}};
(知识点:
二维数组的初始化; 难度系数:
1; 答案:
D)
19.以下能正确定义一维数组的选项是:
( )。
A.inta[5]={0,1,2,3,4,5};B.chara[]={0,1,2,3,4,5};
C.chara={'A','B','C'};D.chara[5]="0123";
(知识点:
字符数组的定义; 难度系数:
1; 答案:
D)
20.以下不正确的定义语句是:
( )。
A.charch[3]={'c','a','r','\0'};
B.charc1[]={'a','b','c'};
C.charc2[]={'\x10','\xa','\x8'};
D.doublex[5]={2.0,4.0,6.0,8.0,10.0};
(知识点:
字符数组的定义; 难度系数:
1; 答案:
A)
21.已有定义:
chara[]="xyz",b[]={'x','y','z'};,以下叙述中正确的是:
( )。
A.数组a和数组b的长度相同B.a数组长度小于b数组长度
C.a数组长度大于b数组长度D.数组a和数组b等价
(知识点:
字符数组的定义; 难度系数:
1; 答案:
C)
22.下面是对数组s的初始化,其中错误的是:
( )。
A.chars[5]={"abc"};B.chars[5]="abcdef";
C.chars[5]="";D.chars[5]={'a','b','c'};
(知识点:
字符数组的初始化; 难度系数:
1; 答案:
B)
23.下列选项中正确的语句组是:
( )。
A.chars[8];s={"Beijing"};B.char*s;s={"Beijing"};
C.chars[8];s="Beijing";D.char*s;s="Beijing";
(知识点:
字符数组的初始化; 难度系数:
1; 答案:
D)
24.对两个数组a和b进行如下初始化:
chara[]=“ABCDEF”;
charb[]={‘A’,‘B’,‘C’,‘D’,‘E’,‘F’};
则以下叙述正确的是:
( )。
A.数组a与数组b完全相同B.数组a与数组b长度相同
C.数组a与数组b中都存放字符串D.数组a比数组b长度长
(知识点:
字符数组的初始化; 难度系数:
1; 答案:
D)
25.有下面的程序段:
chara[3],b[]=“China”;
a=b;
printf(“%s”,a);
A.运行后将输出ChinaB.运行后将输出Ch
C.运行后将输出ChiD.编译出错
(知识点:
字符数组的引用; 难度系数:
1; 答案:
D)
26.下面程序的运行结果是:
( )。
charc[5]={‘a’,‘b’,‘\0’,‘c’,‘\0’};
printf(“%s”,c);
A.abB.abcC.ab\0D.ab\0c\0
(知识点:
字符数组的引用; 难度系数:
1; 答案:
A)
27.下面程序的运行结果是:
( )。
charch[3][5]={"AAAA","BBB","CC"};
printf("%s",ch[1]);
A.AAAAB.BBBC.CCD.BBBCC
(知识点:
字符数组的引用; 难度系数:
1; 答案:
B)
28.设有数组定义:
chararray[]=“china”;,则数组array所占的空间为:
( )。
A.4个字节B.5个字节C.6个字节D.7个字节
(知识点:
字符串和字符串结束标志; 难度系数:
1; 答案:
C)
29.不能把字符串"Hello!
"赋给数组b的语句是:
( )。
A.charb[10]={'H','e','l','l','o','!
'};B.charb[10];b="Hello!
";
C.charb[10];strcpy(b,"Hello!
");D.charb[10]="Hello!
";
(知识点:
字符串和字符串结束标志; 难度系数:
1; 答案:
B)
30.下面程序的运行结果是:
( )。
chara[]="abcdefg",b[10]="abcdefg";
printf("%d,%d\n",sizeof(a),sizeof(b));
A.7,7B.8,8C.7,10D.8,10
(知识点:
字符串和字符串结束标志; 难度系数:
1; 答案:
D)
31.以下关于数组的描述中,错误的是:
( )。
A.字符型数组中可以存放字符串
B.可以对字符型数组进行整体输入、输出
C.可以对整型数组进行整体输入、输出
D.不能在赋值语句中通过"="对字符型数组进行整体赋值
(知识点:
字符数组的输入输出; 难度系数:
1; 答案:
C)
32.设已定义chara[10]和intj,则下面输入函数调用中错误的是:
( )。
A.scanf("%s",a);B.for(j=0;j<9;j++)scanf("%c",a[j]);
C.gets(a);D.for(j=0;j<9;j++)scanf("%c",&a[j]);
(知识点:
字符数组的输入输出; 难度系数:
1; 答案:
B)
33.设已定义charc[8]="Tianjin"和intj,则下面的输出函数调用中错误的是:
( )。
A.printf("%s",c);B.for(j=0;j<8;j++)printf("%c",c[j]);
C.puts(c);D.for(j=0;j<8;j++)puts(c[j]);
(知识点:
字符数组的输入输出; 难度系数:
1; 答案:
D)
34.以下关于字符串的描述中,正确的是:
( )。
A.字符个数多的字符串比字符个数少的字符串大
B.字符串”That”小于字符串”The”
C.字符串”Hello”与”hello”相等
D.两个字符串所包含的字符个数相同时,才能比较字符串
(知识点:
字符串处理函数; 难度系数:
1; 答案:
B)
35.判断字符串s1是否大于字符串s2,应当使用:
( )。
A.if(s1>s2)B.if(strcmp(s1,s2))
C.if(strcmp(s2,s1)>0)D.if(strcmp(s1,s2)>0)
(知识点:
字符串处理函数; 难度系数:
1; 答案:
D)
36.函数调用strcat(strcpy(str1,str2),str3)的功能是:
( )。
A.将串str1复制到串str2中后在连接到串str3之后
B.将串str1连接到串str2之后再复制到串str3之后
C.将串str2复制到串str1中后再将串str3连接到串str1之后
D.将串str2连接到串str1中后再将串str1复制到串str3中
(知识点:
字符串处理函数; 难度系数:
1; 答案:
C)
二、多选题
1.以下关于数组的描述中,正确的有:
( )。
A.在定义数组时,有时可以将该数组的维数省略
B.数组名实质上是数组的首地址,是一个变量地址,可对其进行赋值
C.构成数组的各个元素可以有不同的数据类型
D.有定义:
inta[3];则定义了a[0]、a[1]、a[2]三个数组元素
E.在程序中可以对数值数组中的数据进行整体使用
(知识点:
一维数组的定义; 难度系数:
1; 答案:
AD)
2.以下关于数组的描述中,错误的有:
( )。
A.引用数组元素时,其数组下标的数据类型允许的是:
整型常量或整型表达式
B.可以通过数组名来整体引用一个数组
C.在程序中可以对数值数组中的数据进行整体使用
D.若有说明:
inta[10];,则可以a[10]引用数组a的第9个元素
E.若有说明:
inta[10];,则可以a[10]引用数组a的第10个元素
(知识点:
一维数组的引用; 难度系数:
1; 答案:
BCDE)
3.以下关于数组的描述中,错误的有:
( )。
A.可以通过如下语句来完成对一个数组的输入:
inta[10];scanf("%d",a);
B.可以通过如下语句来完成对一个数组的输入:
inta[10];scanf("%d",&a);
C.若有inta[10]={6,7,8,9,10};,则是将5个初值依次赋给a[0]至a[4]
D.数组元素可以像普通变量一样使用
E.inta[9];则数组a的下标范围是1-9
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
ABE)
4.以下关于数组的描述中,正确的有:
( )。
A.数组名实质上是数组的首地址,是一个常量,不能对其赋值
B.在定义数组时,有时可以将该数组的维数省略
C.一个一维数组,它的每一个元素也是类型相同的一维数组时,便构成二维数组
D.如有定义inta[3][4]={0};,则数组a的所有元素初值均为0
E.可以通过数组名来整体引用一个数组
(知识点:
二维数组的定义; 难度系数:
1; 答案:
ABCD)
5.以下关于数组的描述中,错误的有:
( )。
A.如有定义inta[2][3];则数组a的最后一个元素为a[1][2]
B.一个一维数组,它的每一个元素也是类型相同的一维数组时,便构成二维数组
C.若有说明:
staticinta[3][3];那么数组a中每个元素初值为0
D.在定义二维数组时,可以将该数组的两个维数全部省略
E.如有定义chara[20];则可以通过a="Iamaboy";给a赋值
(知识点:
二维数组的引用; 难度系数:
1; 答案:
DE)
6.若有说明:
inta[][4]={0,0};,则下面正确的叙述有:
( )。
A.数组a的每个元素都可得到初值0
B.二维数组a的第一维大小为1
C.因为二维数组a中初值的个数不能被第二维大小的值整除,则第一维的大小等于所得商数再加1,故数组a的行数为1
D.只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值
E.只有元素a[1][1]和a[1][2]可得到初值0,其余元素均得不到初值
(知识点:
二维数组的初始化; 难度系数:
1; 答案:
ABC)
7.以下关于数组的描述中,正确的有:
( )。
A.若有定义chara[]="hello";,则数组a的长度为6
B.有定义chara[3];则定义了a[1]、a[2]、a[3]三个数组元素
C.构成字符数组的各个元素必须是字符类型的数据
D.可以通过数组名来整体引用一个数组
E.设有数组定义chararray[]="China";则数组array所占的空间为5个字节
(知识点:
字符数组的定义; 难度系数:
1; 答案:
AC)
8.以下关于数组的描述中,正确的有:
( )。
A.在C语言中,允许用字符串来直接初始化字符数组
B.若有定义chara[20];,则可以通过a="Iamaboy";给a赋值
C.若有chara[10]={1,2,3};,则是将3个初值依次赋给a[1]至a[3]
D.构成字符数组的各个元素必须是字符类型的数据
E.数组名实质上是数组的首地址,是一个常量,不能对其赋值
(知识点:
字符数组的初始化; 难度系数:
1; 答案:
ADE)
9.以下关于数组的描述中,错误的有:
( )。
A.字符数组的输出不能一次性的整体输出
B.若有chara[10]={1,2,3};,则是将3个初值依次赋给a[0]至a[2]
C.构成字符数组的各个元素可以是不同数据类型的元素
D.构成字符数组的各个元素必须是字符类型的数据
E.若有定义charb[]="good";,则数组b的长度为5
(知识点:
字符数组的引用; 难度系数:
1; 答案:
AC)
10.下列语句中,正确的有:
( )。
A.charstr[5]="hello";
B.charstr[]={'h','e','l','l','o','\0'};
C.charstr[5]={"hi"};
D.charstr[100]="";
E.charstr[3]="this";
(知识点:
字符串和字符串结束标志; 难度系数:
1; 答案:
BCD)
11.以下关于数组的描述中,正确的有:
( )。
A.可以对字符型数组进行整体输入、输出
B.可以对整型数组进行整体输入、输出
C.字符型数组中可以存放字符串
D.可以用"%c"格式符逐个对字符元素进行输入、输出
E.可以用"%s"格式符按字符串形式进行输入、输出
(知识点:
字符数组的输入输出; 难度系数:
1; 答案:
ACDE)
12.函数调用strcat(strcpy(str1,str2),str3)的功能,以下说法错误的有:
( )。
A.将串str1复制到串str2中后在连接到串str3之后
B.将串str1连接到串str2之后再复制到串str3之后
C.将串str2复制到串str1中后再将串str3连接到串str1之后
D.将串str2连接到串str1中后再将串str1复制到串str3中
E.将串str2连接到串str1中后再将串str3复制到串str1中
(知识点:
字符串处理函数; 难度系数:
1; 答案:
ABDE)
三、判断题
1.( )C语言中数组名实质上是数组的首地址,是一个变量地址,可对其进行赋值。
(知识点:
一维数组的定义; 难度系数:
1; 答案:
F)
2.( )构成数组的各个元素可以有不同的数据类型。
(知识点:
一维数组的定义; 难度系数:
1; 答案:
F)
3.( )在定义数组时,数组名不能与其它变量名相同。
(知识点:
一维数组的定义; 难度系数:
1; 答案:
T)
4.( )在定义数组时,不能在方括号中用变量来表示元素的个数。
(知识点:
一维数组的定义; 难度系数:
1; 答案:
T)
5.( )若有说明:
inta[10];,则可以a[10]引用数组a的第10个元素。
(知识点:
一维数组元素的引用; 难度系数:
1; 答案:
F)
6.( )若有说明:
inta[10];,则可以a[9]引用数组a的第9个元素。
(知识点:
一维数组元素的引用; 难度系数:
1; 答案:
F)
7.( )引用数组元素时,其数组下标的数据类型允许的是:
整型常量或整型表达式。
(知识点:
一维数组元素的引用; 难度系数:
1; 答案:
T)
8.( )在C语言中只能逐个地使用下标变量引用数组元素,而不能一次引用整个数组。
(知识点:
一维数组元素的引用; 难度系数:
1; 答案:
T)
9.( )若想将全部数组元素赋值为1,则可以写为:
inta[10]=1;。
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
F)
10.( )在数组初始化赋值时,如给全部元素赋值,则在数组说明中可以不给出数组元素的个数。
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
T)
11.( )若有inta[10]={6,7,8,9,10};,则是将5个初值依次赋给a[0]至a[4]。
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
T)
12.( )可以通过如下语句来完成对一个数组的输入:
inta[10];scanf("%d",a);。
(知识点:
一维数组的初始化; 难度系数:
1; 答案:
F)
13.( )一个一维数组,它的每一个元素也是类型相同的一维数组时,便构成二维数组。
(知识点:
二维数组的定义; 难度系数:
1; 答案:
T)
14.( )在C语言中,二维数组元素在内存中的存放顺序是按行存放。
(知识点:
二维数组的定义; 难度系数:
1; 答案:
T)
15.( )若有定义inta[2][3];,则数组a的最后一个元素为a[1][2]。
(知识点:
二维数组的引用; 难度系数:
1; 答案:
T)
16.( )若有定义inta[3][2];,则可以用a[0,0]引用数组a的第一个元素。
(知识点:
二维数组的引用; 难度系数:
1; 答案:
F)
17.( )若有说明:
staticinta[3][4];,则数组a中每个元素初值为0。
(知识点:
二维数组的初始化; 难度系数:
1; 答案:
T)
18.( )若有说明:
inta[3][2]={1};,则数组a中每个元素初值为1。
(知识点:
二维数组的初始化; 难度系数:
1; 答案:
F)
19.( )构成字符数组的各个元素必须是字符类型的数据。
(知识点:
字符数组的定义; 难度系数:
1; 答案:
T)
20.( )若有定义chara[]="student";,则数组a的长度为7。
(知识点:
字符数组的定义; 难度系数:
1; 答案:
F)
21.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第07部份 数组 07 部份
![提示](https://static.bdocx.com/images/bang_tan.gif)