C语言第六章数组习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言第六章数组习题
第六章数组
6.1 选择题
[题]在C语言中,引用数组元素时,其数组下标的数据类型允许是_____.
A)整型常量B)整型表达式 C)整型常量或整型表达式D)任何类型的表达式 [题]以下对一维整型数组a的正确说明是_____。 A)int a(10);B)int n=10,a[n];
C)int n;D)#define SIZE 10 scanf(\%d,&n);int a[SIZE]; int a[n];
[题]若有说明:int a[l0];则对a数组元素的正确引用是_____。
A) a[10] B)a[3.5] C)a(5) D)a[10-10] [题]在C 语言中,一维数组的定义方式为:类型说明符数组名_____。
A)[常量表达式] B)[整型表达式] C)[整型常量]或[整型表达式] D)[整型常量]
[题]以下能对一维数组a进行正确初始化的语句是_____。 A)int a[l0]=(0,0,0,0,0); B)int a[l0]={}; C)int a={0};D)int a[10]={10*1}; [题]以下对二维数组a的正确说明是_____。
1
A)int a[3]; B)float a(3,4); C)double a[1][4];
D)float a(3)(4);
[题]若有说明:int a[3][4];则对a数组元素的正确引用是_____。
A)a[2][4] B)a[1,3] C)a[1+1][0] D)a(2)(1)
[题]若有说明:int a[3][4];则对a数组元素的非法引用是_____。
A)a[0][2*1] B)a[1][3] C)a[4-2][0] D)a[0][4] [题]以下不能对二维数组a进行正确初始化的语句是_____。
A)int a[2][3]={0};
B)int a[3]={{1,2},{0}};
C)int a[2][3]={{l,2},{3,4},{5,6}}; D)int a[3]={1,2,3,4,5,6};
[题]若有说明:int a[3][4]={0};则下面正确的叙述是_____。
A)只有元素a[0][0]可得到初值0 B)此说明语句不正确 C)数组a中各元素都可得到初值,但其值不一定为0 D)数组a中每个元素均可得到初值0
[题]若有说明:int a[3][4];则数组a中各元素_____。
2
A)可在程序的运行阶段得到初值0 B)可在程序的编译阶段得到初值0 C)不能得到确定的初值
D)可在程序的编译或运行阶段得到初值0
[题]以下各组选项中,均能正确定义二维实型数组a的选项是_____。
A)float a[3][4]; float a[4];
float a[3]={{l},{0}}; B)float a(3,4); float a[3][4];
float a={{0};{0}}; C)float a[3][4];
Static float a[4]={{0},{0}};auto float a[4]={{0},{0},{0}}; D)float a[3][4]; float a[3];float a[4]
[题6.16]下面程序____(每行程序前面的数字表示行号)。 1 main() 2 {
3 float a[10]={};
3
4 int i;
5 for(i=0;i A)没有错误B)第3行有错误 C)第5行有错误 D)第7行有错误
[题6.17]下面程序中有错误的行是___(每行程序前面的数字表示行号)
1 main()
2 {
3 int a[3];
4 int i;
5 scanf(”%d”,&a);
6 for(i=1;i A)3 B)6 C)
7 D)5
[题6.20]对以下说明语句的正确理解是___。 int a[10]={6,7,8,9,10}; A)将5个初值依次赋给a[1]至a[5]
4
B)将5个初值依次赋给a[0]至a[4] C)将5个初值依次赋给a[6]至a[l0]
D)因为数组长度与初值的个数不相同,所以此语句不正确 [题6.21]以下不正确的定义语句是___。 A)double x[5]={,,,,}; B)int y[5]={0,1,3,5,7,9};
C)char c1={‘1’,’2’,’3’,’4’,’5’} D)char c2={‘\x10’,’\xa’,’\x8’};
[题6.22] 若有说明:int a[3]={1,2,3,4,5,6,7};则a数组第一维的大小是___。 A) 2 B)3 C)4 D)无确定值
[题6.23]若二维数组a有m列,则在a[i][j]前的元素个数为____。
A)j*m+i B)i*m+j C)i*m+j-1 D)i*m+j+1 [题6.24]定义如下变量和数组: int k;
int a[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输
出结果是__。
for(k=0;k [题6.27]下面程序的运行结果是___.
5
main()
{ int a[6][6],i,j; for(i=1;i a[i][j]=(i
/j)*( j/i); for(i=1;i printf(”%2d”,a[i][j]);printf(“\n”);}
}
A)1 1 1 1 1 B)0 0 0 0 1 C)1 0 0 0 0 D)1 0 0 0 1
1 1 1 1 1 0 0 0 l 0 0 1 0 0 0 0 1 0 1 0 1 1 1 1 1 0 0 1 0 0 0 0 l 0 0 0 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 l 0 0 l 0 1 0 1 1 1 1 1 l 0 0 0 0 0 0 0 0 1 1 0 0 0 l [题6.29]下面是对s的
初始化,其中不正确的是___。 A)char s[5]={”abc\;
B)char s[5]={‘a’,’b’,’c’}; C)char s[5]=””;D)char s[5]=”abcdef”;
[题] 下面程序段的运行结果是___.
6
char c[5]={‘a’,’b’,’\0’,’c’, ’\0’} printf(”%s”,c);
A)’a’’b’B)ab C)ab_c D)a_b (其中_