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的正确说明是_____。
2016全新精品资料-全新公文范文-全程指导写作 –独家原创
1 / 23
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
2016全新精品资料-全新公文范文-全程指导写作 –独家原创
2 / 23
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 {
2016全新精品资料-全新公文范文-全程指导写作 –独家原创
3 / 23
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}; 则下面语句的输
2016全新精品资料-全新公文范文-全程指导写作 –独家原创
4 / 23
出结果是__。
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 (其中_
2016全新精品资料-全新公文范文-全程指导写作 –独家原创
5 / 23
C语言第六章数组习题



