设有程序:

main()

{inti,a[11]

printf("给数组赋值:\n")

for (i=0i<=10i++)

scanf("%d"())

... ...

printf("输出数组:\n")

for(i=0i<=10i++

printf("%d,",())

}

则在程序中的两个园括号中分别应填入:

A) &a[i]&a[i] 

B) a[i]&a[i]

C) &a[i]a[i]

D) a[i]a[i]

设已定义:int a[15]; 则数组a占用的内存单元数是().

A) 15B) 16C) 30D) 32

阅读程序:

main()

{int a[2]={0},i,j,k=2;

for(i=0;i<k;i++)

for(j=0;j<k;j++) a[j]=a[i]+1;

printf("%d\n",a[k]);

}

以上程序的输出结果是().

A) 1B) 3C) 2D) 不确定的值

阅读程序:

f(int b[],int n)

{ int i,r=1;

for(i=0;i<=n;i++) r=r*b[i];

return r;

}

main()

{ int x,a[]={2,3,4,5,6,7,8,9};

x=f(a,3);

printf("%d\n",x);

}

以上程序的输出结果是().

A) 720B) 6C)24D) 120

以下定义语句中,错误的是().

A) int a[ ] = {6,7,8};

B) int n=5, a[n];

C) char a[ ]= "string";

D) char a[5 ]={'0','1','2','3','4'};

以下描述中正确的是().

A) 数组名后面的常量表达式C语言的头文件用一对圆括弧括起来

B) 数组下标从1开始 

C) 数组下标的数据类型可以是整型或实型

D) 数组名的规定与变量名相同

若定义数组并初始化char a[10]={'0','1 ','2','3','4','5','6','7','8','9'};指出以下错误语句().

A)scanf("%c",a[0]);

B)scanf("%s",&a);

C)printf("%c",a[3]);

D)printf("%s",a);

若定义数组int a[10] ,其最后一个数组元素为().

A)a[0]

B)a[1]

C)a[9]

D)a[10]

若定义数组并初始化int a[10]={ 1,2,3,4},以下语句哪一个不成立()

A)a[8] 的值为0

B)a[1] 的值为1

C)a[3] 的值为4

D)a[9] 的值为0

指出以下错误语句().

A)int n=10,a[n];

B)int n,a[10];

C)int a[10]={1,2,3};

D)int a[10]={1,2,3,4,5,6,7,8,9,10};

请读程序:

main()

{int n[2],i,j,k;

for(i=0;i<2;i++) n[i]=0;

k=2;

for(i=0;i<k;i++)

for(j=0;j<k;j++) n[j]=n[i]+1;

printf("%d\n",n[k]);

}

上面程序的输出结果是().

A)不确定的值B)3C)2D)1

若有以下的定义和语句:

int str[12]={1,2,3,4,5,6,7,8,9,10,11,12};

char c='e',

则数值为2的表达式是().

A)str['g'-c]B)str[2]C)str['d'-'c']D)str['d'-c]

设有数组定义:int a[5];则下列给数组元素赋值错误的是().

A) a[3]=93;

B) scanf("%c",a[3]);

C) a[3]=getchar();

D) a[3]='a'+3;

以下数组定义中错误的是().

A) #define N 30

int a[N+30];

B) #define N 30

int a[N]; 

C) int a[30];

D) int a[N];

在定义一个一维数组时,不能用来表示数组长度的是().

A)常量B)符号常量C)常量表达式D) 已被赋值的变量

float型变量占用4个字节,有定义float a[20]={1.1,2.1,3.1};则数组a在内存中所占的字节数是().

A)12B)20C)40D)80

设已定义:int x[2][4]={1,2,3,4,5,6,7,8}; 则元素x[1][1]的正确初值是().

A) 6B) 5C) 7D) 1

设有定义:int a[][3]={{1,2,3},{4,5,6},{7,8,9}}; a[1][2]的初值为().

A) 2B) 4C) 6D) 8

设有:int a[4][5]; 则数组a占用的内存字节数是().

A) 12B) 24C) 40D) 20

以下数组定义中,不正确的是().

A) int b[3][4]; 

B) int c[3][ ]={{1,2},{1,2,3},{4,5,6,7}}; 

C) int b[200][100]={0}; 

D) int c[ ][3]={{1,2,3},{4,5,6}}; 

定义数组:int x[2][3]; 则数组的维数是().

A) 1B) 2C) 3D) 6

若定义数组并初始化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

若定义数组并初始化int 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)123456

若定义数组并初始化int a[2][3]= {{1,2, 3},{4,5,6}};以下语句哪一个不成立()

A)a数组中有6个元素

B)a[2][3]a数组的最后一个元素的引用

C)a数组中每个元素都为整数

D)a数组是整型数组

定义如下变量和数组:

int i;

int x[3][3]={1,2,3,4,5,6,7,8,9};

则下面语句的输出结果是().

for(i=0;i<3;i++)printf("%d",x[i][2-i]);

A) 1 5 9B) 1 4 7C) 3 5 7 D) 3 6 9

如有以下定义:double s[][5]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14};则数值为2的元素是().

A) s[1][3]B) s[0][3]C) s[0][2]D) s[1][2]

以下程序的输出结果是().

main()

{int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

for(i=1;i<3;i++)

for(j=0;j<=i;j++)

s+=a[i][j];

printf("%d",s);

}

A) 18B)19C)20D) 21

若已有char b[10][50];则该二维字符数组在内存所占字节数为().

A) 10B)50C)60D)500

A)int a[2][3];B)int b[][3]={0,1,2,3}; 

C)int c[5][5]={0};D)int d[3][ ]={{1,2},{1,2,3},{1,2,3,4}};

设有:char a[10]; 下列语句那个是正确的()

A) scanf("%s",a[0]);

B) scanf("%s",&a);

C) printf("%s",a[0])

D) printf("%s",a)

阅读程序:

main()

{char a[10];

int i;

for(i=1;i<=5;i++)

scanf("%c",&a[i]);

printf("%c",a[0]);

}

设从键盘输入字符串:abcde,则程序的输出结果是().

A) aB)空格C)不确定D)0

设有:char a[4][5]; 则数组a占用的内存字节数是().

A) 12B) 24C) 40D) 20

合法的数组定义是().

A) int a[ ] = "string"; 

B) int a[5]={0,1,2,3,4,5}; 

C) char a= "string"; 

D) char a[ ]={'0','1','2','3'};

设有数组定义:char string[ ]="China";则数组string所占的空间为().

A) 5个字节 

B) 6个字节 

C) 7个字节 

D) 10个字节

定义字符数组cchar c[ ]={"c language"};数组c在内存中所占字节数是().

A) 9 B) 10  C) 11 D) 12

指出以下错误语句().

A)char a[10]={'0','1','2','3','4','5','6','7','8','9'};

B)char a[10]={'0','1 ','2','3'};

C)char a[2]= {"1","2"};

D)char a[2]= {'a’,'b’};

若定义数组并初始化char a[10]={"hello"},该数组的元素个数是().

A)10

B)5

C)6

D)7

若定义数组并初始化char a[10]={"HELLO"},该数组的元素中 a[2]().

A)'L'

B)'E'

C)'H'

D)'O'

若定义数组并初始化int b[10]={ 1,2,3,4},以下哪几个语句成立()

Ab[8]的值为0

Bb[1]的值为1

Cb[3]的值为整数

Db[10]不是b数组中的元素

若定义数组int a[10];指出下列错误语句:

A)a数组共有10个元素,其引用方法是:a[1],a[2]...a[10];

B)a数组是整型数组,其元素自动初始化为0;

C)a数组最后一个元素的引用方法是a[10];

D)a数组第一个元素的引用方法是a[1]; 

数组是数目固定的若干变量的有序集合,数组中各元素的类型可以不同。

数组是C语言的一种构造数据类型,其元素的类型可以是整型、实型、字符型甚至结构类型。

设需定义一个有15个元素的数组a,并对其前5个元素赋初值,可用如下语句实现:int a[]={1,2,3,4,5};

数组定义时,很多c语言编程教程只允许使用常量表达式定义数组的大小,其值必须是正整数,而不能用变量来定义数组长度。

C语言数组的下标从0开始,下标必须是整数型的常量或变量。

数组是数目固定、类型相同的若干变量的有序集合。数组中的每一个数(变量)称为数组元素,数组中的所有元素都属于同一种数据类型。

数组元素下标的下界是固定的,总是为0

一维数组在引用时下标的范围是:0 <= 下标 < 数组的长度

若有数组定义为:int a[100];则该数组的下界为0,上界为100。数组元素下标范围是:下界 <= 下标 < 上界。

设已定义:double a[5][5]; 则数组a在内存中的存放顺序是:a[0][0],a[0][1],a[0][2], ... ,a[4][3],a[4][4]