2024年3月21日发(作者:表雅寒)
第6章-数组和字符串-练习题
一、选择题
1.下面正确的初始化语句是___
A. char str[]="hello";
B. char str[100]="hello";
C. char str[]={'h','e','l','l','o'};
D. char str[]={'hello'};
2.定义了一维int型数组a[10]后,下面错误的引用是___
A. a[0]=1;
B. a[10]=2;
C. a[0]=5*2;
D. a[1]=a[2]*a[0];
3.下面的二维数组初始化语句中,正确的是____
A. float b[2][2]={0.1,0.2,0.3,0.4};
B. int a[][]={{1,2},{3,4}};
C. int a[2][]= {{1,2},{3,4}};
D. float a[2][2]={0};
4.引用数组元素时,数组下标可以是____
A. 整型常量
B. 整型变量
C. 整型表达式
D. 以上均可
5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元
素个数为____
A. 24
B. 25
C. 18
D. 17
6.下列初始化字符数组的语句中,正确的是____
A. char str[5]="hello";
B. char str[]={'h','e','l','l','o','0'};
C. char str[5]={"hi"};
D. char str[100]="";
7.给出下列代码,则数组初始化中哪项是不正确的?
byte[]array1,array2[];
byte array3[][];
byte [][]array4;
A.array2 = array1 B.array2=array3
C.array2=array4 D.array3=array4
8.下面程序的运行结果是____
main() {
int x=30;
int[] numbers=new int[x];
x=60;
n();
}
A. 60
B. 20
C. 30
D. 50
9.下面不是创建数组的正确语句
f[][]=new float[6][6];
f[]=new float[6];
f[][]=new float[][6];
[][]f=new float[6][];
10.下列关于Java语言的数组描述中,错误的是()。
A.数组的长度通常用length表示B.数组下标从0开始
C.数组元素是按顺序存放在内存的D.数组在赋初值和赋值时都
不判界
11.数组a的第三个元素表示为()
A. a(3)
B. a[3]
C.a(2)
D. a[2]
12.当访问无效的数组下标时,会发生
A. 中止程序
B. 抛出异常
C. 系统崩溃
D. 直接跳过
13.使用arraycopy()方法将数组a复制到b正确的是
A. arraycopy(a,0,b,0,)
B. arraycopy(a,0,b,0,)
C.. arraycopy(b,0,a,0,)
D. arraycopy(a,1,b,1,)
14.关于数组默认值,错误的是()。
A. char—>'u0000'
B. Boolean—>true
C. float—>0.0f
D. int—>0
15.执行String[] s=new String[10];语句后,哪些结论是正确的?
()
A.s[0] 为未定义B. 为9
C.s[9] 为null D.s[10] 为""
16.关下面的表达式哪些是不正确的? ()
A.String s="你好";int i=3; s+=i;
B.String s="你好";int i=3; if(i==s){ s+=i};
C.String s="你好";int i=3; s=i+s;
D. String s=null; int i=(s!=null)&&(()>0)?():0;
17.下列语句会造成数组new int[10]越界是
A. a[0] += 9;
B. a[9]=10;
C. —a[9]
D. for(int i=0;i<=10;i++) a[i]++;
18.以下程序的运行效果。下面程序段执行完毕后,cont的值是()
String strings[ ]={"string","starting","strong","street","soft"};
int cont=0;
for(int i=0;i<;i++)< p="">
if(strings[i].endsWith("ng"))
cont++;
A. 1
B. 2
C.3
D.4
19.如定义对象StringBuffer ch = new StringBuffer("Shanghai")
则
()=()
A. 7B.8C.9D.23
20.执行完代码"int[] x=new int[25];"后以下( )说明正确的
A. x[24]为0
B. x[24]未定义
C. x[25]为0
D. x[0]为空
21.关于char类型的数组,说法正确的是( )
A. 其数组的默认值是'A'
B. 可以仅通过数组名来访问数组
C. 数组不能转换为字符串
D. 可以存储整型数值
22.对于数组a[10],下列表示错误的是
A. a[0]
2024年3月21日发(作者:表雅寒)
第6章-数组和字符串-练习题
一、选择题
1.下面正确的初始化语句是___
A. char str[]="hello";
B. char str[100]="hello";
C. char str[]={'h','e','l','l','o'};
D. char str[]={'hello'};
2.定义了一维int型数组a[10]后,下面错误的引用是___
A. a[0]=1;
B. a[10]=2;
C. a[0]=5*2;
D. a[1]=a[2]*a[0];
3.下面的二维数组初始化语句中,正确的是____
A. float b[2][2]={0.1,0.2,0.3,0.4};
B. int a[][]={{1,2},{3,4}};
C. int a[2][]= {{1,2},{3,4}};
D. float a[2][2]={0};
4.引用数组元素时,数组下标可以是____
A. 整型常量
B. 整型变量
C. 整型表达式
D. 以上均可
5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元
素个数为____
A. 24
B. 25
C. 18
D. 17
6.下列初始化字符数组的语句中,正确的是____
A. char str[5]="hello";
B. char str[]={'h','e','l','l','o','0'};
C. char str[5]={"hi"};
D. char str[100]="";
7.给出下列代码,则数组初始化中哪项是不正确的?
byte[]array1,array2[];
byte array3[][];
byte [][]array4;
A.array2 = array1 B.array2=array3
C.array2=array4 D.array3=array4
8.下面程序的运行结果是____
main() {
int x=30;
int[] numbers=new int[x];
x=60;
n();
}
A. 60
B. 20
C. 30
D. 50
9.下面不是创建数组的正确语句
f[][]=new float[6][6];
f[]=new float[6];
f[][]=new float[][6];
[][]f=new float[6][];
10.下列关于Java语言的数组描述中,错误的是()。
A.数组的长度通常用length表示B.数组下标从0开始
C.数组元素是按顺序存放在内存的D.数组在赋初值和赋值时都
不判界
11.数组a的第三个元素表示为()
A. a(3)
B. a[3]
C.a(2)
D. a[2]
12.当访问无效的数组下标时,会发生
A. 中止程序
B. 抛出异常
C. 系统崩溃
D. 直接跳过
13.使用arraycopy()方法将数组a复制到b正确的是
A. arraycopy(a,0,b,0,)
B. arraycopy(a,0,b,0,)
C.. arraycopy(b,0,a,0,)
D. arraycopy(a,1,b,1,)
14.关于数组默认值,错误的是()。
A. char—>'u0000'
B. Boolean—>true
C. float—>0.0f
D. int—>0
15.执行String[] s=new String[10];语句后,哪些结论是正确的?
()
A.s[0] 为未定义B. 为9
C.s[9] 为null D.s[10] 为""
16.关下面的表达式哪些是不正确的? ()
A.String s="你好";int i=3; s+=i;
B.String s="你好";int i=3; if(i==s){ s+=i};
C.String s="你好";int i=3; s=i+s;
D. String s=null; int i=(s!=null)&&(()>0)?():0;
17.下列语句会造成数组new int[10]越界是
A. a[0] += 9;
B. a[9]=10;
C. —a[9]
D. for(int i=0;i<=10;i++) a[i]++;
18.以下程序的运行效果。下面程序段执行完毕后,cont的值是()
String strings[ ]={"string","starting","strong","street","soft"};
int cont=0;
for(int i=0;i<;i++)< p="">
if(strings[i].endsWith("ng"))
cont++;
A. 1
B. 2
C.3
D.4
19.如定义对象StringBuffer ch = new StringBuffer("Shanghai")
则
()=()
A. 7B.8C.9D.23
20.执行完代码"int[] x=new int[25];"后以下( )说明正确的
A. x[24]为0
B. x[24]未定义
C. x[25]为0
D. x[0]为空
21.关于char类型的数组,说法正确的是( )
A. 其数组的默认值是'A'
B. 可以仅通过数组名来访问数组
C. 数组不能转换为字符串
D. 可以存储整型数值
22.对于数组a[10],下列表示错误的是
A. a[0]