数组2
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数组2
一、单项选择题
1. A. float f[3,4]; B. int a[ ][4];
C. char c(3);
D. double d[3+2][4];
2.一维数组初始化时,若对部分数组元素赋初值,则下面正确的说法是______。
A. 可以只对数组的前几个元素赋初值
B. 可以只对数组的中间几个元素赋初值
C. 可以只对数组的后几个元素赋初值
D. 以上说法全部正确
3.若有以下说明:int a[10]={1,2,3,4,5,6,7,8,9,10};char c='a';则数值为4的表达式是______。
A. a['f'-c]
B. a[4]
C. a['d'-'c']
D. a['d'-c]
4.当执行下面程序时,输出结果是______。
#include
void main()
{ int i;char b[6]={"12345"};
for(i=0;i<=4;i++) printf("%C",b[i]);}
A."12345"
B.'1''2''3''4''5'
C.12345
D.1,2,3,4,5
5.用数组名作为函数调用时的实参,实际上传送给形参的是______。
A. 数组首地址
B. 数组的第一个元素值
C. 数组中全部元素的值
D. 数组元素的个数
6.若已有char b[10]={'0','1','2','3','4'},则______。
A.元素b[5]到b[9]没有被赋值
B.元素b[5]到b[9]不存在
C.元素b[5]到b[9]自动为空字符
D.元素b[5]到b[9]自动为0字符
7.决定数组所占内存单元多少的是______。
A. 数组的长度
B. 数组的类型
C. 数组在初始化时被赋值的元素的个数
D. 数组元素的个数及其类型
8.已知有char a[]={"I\nsee\"ABC\""};a数组的长度是______。
A.7
B.8
C.9
D.10
9.若定义数组并初始化char a[10]={"HELLO"},该数组的元素中a[2]是______。
A. 'L'
B. 'E'
C. 'H'
D. 'O'
10. 设有数组定义: char a[2][3]={{'a','b'},{'e'}};则数组a所占空间的字节数为______。
A.3
B.2
C.5
D.6
11. 数组初始化时,下面说法错误的是______。
A.当对一维数组的全部元素赋初值时,可以不指定长度
B.当对二维数组的全部元素赋初值时,可以省略维数
C.用字符串对一维字符数组赋值时,可以不指定长度
D.用字符串对二维字符数组赋值时,可以省略维数
12. 如已有定义:int a[4];若要把10,20,30,40分别赋值给数组a的4个元素,下面正确的赋值方式是______。
A. scanf("%d%d%d%d",a[0],a[1],a[2],a[3]);
B. scanf("%s", a)
C. a[0]=10;a[1]=a[0]+10;a[2]=a[1]+10;a[3]=a[2]+10;
D. a={10,20,30,40};
13. 若定义数组并初始化char a[10]={'0','1 ','2','3','4','5','6','7','8','9'},指出以下会导致错误的语句______。
A. printf("%s",a[0]);
B. printf("%c",a[4]);
C. printf("%x", A);
D. printf("%s", A);
14. 设定义了:char a[10]={'1','2','3','4','5'};则a[5]的正确初值是______。
A. '5'
B. 5
C. '\0'
D. ' '
15. 以下程序的输出结果是______。
#include
void main()
{ int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);}
A.0650
B. 1470
C. 5430
D.输出值不确定
16. 下面程序的输出是______。
#include
void main()
{ struct cmplx int x;inf y;}cnum[2]={1,3,2,7};
printf(“%d、n”,cnum[0].y/cnum[0].x*cnum[1].x);}
A.0
B.1
C.3
D.6
17若定义数组并初始化
int i,j,a[2][3]= {{1,2},{3,4},{5,6}};
for(i=0;i<2;i++)
for(j=0;j<3;j++) printf("%d", a[i][j]);语句的结果是哪一个______。
A. 1,2,3,4,5,6
B. 1 2 3 4 5 6
C. 120340
D. 1 2 0 3 4 0
18. 若定义数组并初始化int b[2][3]= { 1,2,3,4,5,6},以下语句哪一个成立______。
A. 表达式b[1][2]的值为1
B. 表达式b[1][2]的值为4
C. 表达式b[1][2]的值为6
D. 表达式b[1][2]的值为2
19. 下述对C语言字符数组的描述中错误的是______。
A.字符数组可以存放字符串
B.字符数组中的字符串可以整体输入、输出
C.可以在赋值语句中通过运算符“=”对字符数组整体赋值
D.不可以用关系运算符对字符数组中的字符串进行比较
20. 设有程序:
#include
void main()
{ int i,a[5];printf("Please input number:\n");
for (i=0;i<=4;i++) scanf("%d",( ));
... ...
printf("输出数组:\n");
for(i=0;i<=4;i++) printf("%d,",( ));}
则在程序中的两个括号中应填入______。
A. a[i]和&a[i]
B. &a[i]和&a[i]
C. &a[i]和a[i]
D. a[i]和a[i]
21. 若定义数组并初始化int a[10]={ 1,2,3,4},以下语句哪一个不成立______。