C语言程序设计教程第五章练习题题目

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单选题

1、关于数组的定义与初始化,下列哪一项是错误的()

arr[5] = {1,2,3,4,5};

arr[] = {1,2,3,4,5};

arr[5] = {1,2,3};

arr[5] = {1,2,3,4,5,6};

2、在定义数组int arr[10]后,下列选项中对arr的引用正确的是()

[10]

[]

(6)

[0]

3、在C语言中,引用数组元素时,其数组下标的数据类型允许是()

A.整型常量

B.整型表达式

C.整型常量或整型表达式

D.任何类型的表达式

4、若int arr[5] = {1,2,3}; 则arr[2]的值为()

5、在执行int arr[][3] = {1,2,3,4,5,6}:语句后,arr[1][0]的值为()

6、关于二维数组,下列选项能正确定义并赋初值的是()

n = 5,b[n][n];

a[1][2] = {{1},{3}};

c[2][] = {{1,2},{3,4}};

a[3][2] = {{1,2},{3,4}};

7、阅读下列程序段:

char s[18] = "a book!";

printf("%.4s\n", s);

其输出结果为()

book!

book

bo

8、阅读下列程序:

int a[4][4] = { { 1, 3, 5, }, { 2, 4, 6 }, { 3, 5, 7 } };

printf("%d%d%d%d\n", a[0][0], a[1][1], a[2][2], a[3][3]);

正确的输出结果为()

D.输出值不定

9、阅读下面程序:

int i;

int x[4][4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 };

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

printf("%3d", x[i][3 - i]);

下列选项中哪一项是正确的输出结果()

5 9 13

6 11 16

7 10 13

8 12 16

10、下列描述中不正确的是()。

A.字符型数组中可以存放字符串

B.可以对字符型数组进行整体输入、输出

C.可以对整型数组进行整体输入、输出

D.不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值

11、以下定义语句中,错误的是()。

a[]={1,2};

*a[3];

s[10]="test";

n=5,a[n];

12、下列选项中,合法的数组定义是()。

a[]="string";

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

s="string";

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

13、int类型变量在内存中占用四个字节,其有定义:int x[10]={0,2,4}; 那么数组x在内存中所占字节数是()。

14、C语言中数组下标的下限是()。

C.视具体情况

D.无固定下限

15、以下程序的输出结果是()。

void main()

{

int i, a[10];

for (i=9;i>=0;i--)

a[i]=10-i;

printf("%d%d%d",a[2],a[5],a[8]);

}

16、若有以下说明:

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g;

那么数值为4的表达式是()。

[g-c]

[4]

['d'-'c']

['d'-c]

17、C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为()。

A.该数组的长度

B.该数组的元素个数

C.该数组中各元素的值

D.该数组的首地址

18、当调用函数时,实参是一个数组名,则向函数传送的是()。

A.数组的长度

B.数组的首地址

C.数组每一个元素的地址

D.数组每个元素中的值

19、以下程序的输出结果是()。

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];

}

D.输出值不定

多选题

1、关于数组类型的定义,下列描述中正确的是()

A.数组的大小一旦定义就是固定的

B.一个数组中的各元素类型可以不一样

C.数组的下标类型为整型

D.数组元素的下标从1开始

2、下面对数组描述正确的是()

A.数组的长度是不可变的

B.数组不能先声明长度再不赋值

C.数组只能存储相同数据类型的元素

D.数组没有初始值

判断题

1、在C语言中,只有一维数组和二维数组()。

2、数组的索引是从1开始的()。

3、数组属于构造类型的数据()。

4、数组名的命名较为特别,它不符合标识符的命名规范()。

5、数组在初始化时不可以只赋值一部分,必须全部赋值初始化()。

6、对于一维数组,例如int arr[3];则arr[2]表示数组的第2个元素()。

7、数组的下标范围是0-[数组长度-1] ()。

8、二维数组进行定义与初始化时,行下标与列下标均不能省略()。

9、在程序设计中,一组具有相同数据类型的变量集合称为数组()。

10、数组元素的下标用于表示元素在数组中的位置序号,该下标是从1开始的()。

11、数组元素下标的个数也称为维数,根据维数的不同,可将数组分为一维数组、二维数组、三维数组、四维数组等()。

12、一维数组指的是只有一个下标的数组,用来表示一组具有相同类型的数据()。

13、数组初始化的常见方式有三种:直接对数组中的所有元素赋值、只对数组中的一部分元素赋值、对数组全部元素赋值但不指定长度()。

14、数组中的元素可以通过数组名和下标来引用()。

15、数组的下标都有一个范围,即“0 ~ 数组长度”()。

16、初始化二维数组时,如果对全部数组元素置初值,则二维数组的第一个下标可省略,但第二个下标不能省略()。

填空题

1、C语言中数组名代表数组的()地址。

2、数组是一组具有()类型的数据的集合。

3、对于二维数组int arr[3][4],其中3为()下标,4为()下标。

4、若定义二维数组int arr[5][6];则数组的列下标的取值范围为()。

5、二维数组是通过数组名和()来引用其元素的。

6、C语言中数组必须先()再使用。

7、二维数组的定义格式为()。

8、一维数组指的是只有一个()的数组,用来表示一组具有相同类型的数据。

9、数组的下标是用()括起来的,而不是圆括号。

10、假设定义一个3行4列的二维数组,那么共包含()个元素。

11、二维数组同一维数组一样,也是通过()和下标的方式来引用数组元素。

12、假设定义数组int a[3][4],数组a可用的行下标范围是(),列下标范围是()。

相关文档
最新文档