数组c语言考试题及答案_第1页
数组c语言考试题及答案_第2页
数组c语言考试题及答案_第3页
数组c语言考试题及答案_第4页
数组c语言考试题及答案_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数组c语言考试题及答案一、选择题(8题,每题3分,共24分)

1.在C语言中,以下哪个标识符可以作为合法的数组名?

A.2array

B.intArray

C.#array

D.array_123

2.以下哪个语句可以正确地声明一个包含10个整数的数组?

A.intarr[10];

B.intarr(10);

C.intarr={10};

D.intarr[10]=10;

3.以下哪个选项是访问数组元素的正确方式?

A.arr[0]

B.arr()

C.arr{}

D.arr[1,2]

4.在C语言中,数组的大小必须是?

A.动态的

B.静态的

C.可变的

D.任意值

5.以下哪个语句可以正确地初始化一个包含5个浮点数的数组?

A.floatarr[5];

B.floatarr[5]={1.0,2.0,3.0,4.0,5.0};

C.floatarr[]={1.0,2.0,3.0,4.0,5.0};

D.floatarr[5]={1,2,3,4,5};

6.以下哪个选项是错误的?

A.可以通过数组名来获取数组的大小

B.数组名是数组首元素的地址

C.数组的大小可以是变量

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

7.以下哪个语句可以正确地遍历一个数组?

A.for(inti=0;i<arr;i++)

B.for(inti=0;i<=arr;i++)

C.for(inti=0;i<arr.length;i++)

D.for(inti=0;i<sizeof(arr);i++)

8.以下哪个选项是错误的?

A.可以使用多维数组

B.多维数组的声明方式与一维数组相同

C.多维数组的元素可以是不同类型

D.多维数组的访问方式与一维数组相同

二、(一)多项选择题(5题,每题4分,共20分)

1.以下哪些是数组的特性?

A.可以通过下标访问元素

B.大小固定

C.元素类型相同

D.可以通过数组名获取大小

E.元素可以是不同类型

2.以下哪些语句是正确的数组初始化方式?

A.intarr[5]={1,2,3,4,5};

B.intarr[5];

C.intarr[]={1,2,3,4,5};

D.intarr[5]={1,2,3};

E.intarr[5]={1,2,3,4,5,6};

3.以下哪些是访问数组元素的正确方式?

A.arr[0]

B.arr[1]

C.arr[-1]

D.arr[5]

E.arr[10]

4.以下哪些是数组的操作?

A.遍历

B.初始化

C.排序

D.查找

E.删除

5.以下哪些是多维数组的特性?

A.可以有多于两维

B.声明方式与一维数组相同

C.元素可以是不同类型

D.访问方式与一维数组相同

E.大小固定

(二)判断题(5题,每题2分,共10分)

1.数组名是数组首元素的地址。(正确)

2.数组的大小可以是变量。(错误)

3.可以通过数组名来获取数组的大小。(正确)

4.数组元素的下标从1开始。(错误)

5.多维数组的元素可以是不同类型。(错误)

三、(一)填空题(5题,每题4分,共20分)

1.在C语言中,声明一个包含10个整数的数组名为`arr`,访问第5个元素的语句是______。

2.初始化一个包含5个浮点数的数组,数组元素分别为1.0,2.0,3.0,4.0,5.0的语句是______。

3.遍历一个包含10个整数的数组`arr`的for循环语句是______。

4.声明一个包含2行3列的二维数组`matrix`的语句是______。

5.访问二维数组`matrix`第2行第3列元素的语句是______。

(二)计算题(4题,每题6分,共24分)

1.声明一个包含5个整数的数组`arr`,并初始化为{1,2,3,4,5},然后通过循环计算数组所有元素的和。

2.声明一个包含3行4列的二维数组`matrix`,并初始化为:

1234

5678

9101112

然后通过嵌套循环计算二维数组所有元素的和。

3.声明一个包含10个浮点数的数组`floatArr`,并初始化为{1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0},然后通过循环计算数组所有元素的平均值。

4.声明一个包含2行3列的二维数组`matrix`,并初始化为:

123

456

然后通过嵌套循环将二维数组的每一行元素逆序输出。

四、综合题(2题,每题10分,共20分)

1.编写一个C语言程序,声明一个包含10个整数的数组`arr`,并初始化为{1,2,3,4,5,6,7,8,9,10},然后通过循环将数组中的元素逆序排列。

2.编写一个C语言程序,声明一个包含3行4列的二维数组`matrix`,并初始化为:

1234

5678

9101112

然后通过嵌套循环将二维数组的每一列元素逆序输出。

五、材料分析题(4题,每题14分,共56分)

1.分析以下代码的功能:

#include<stdio.h>

intmain(){

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

for(inti=0;i<5;i++){

arr[i]=arr[i]*2;

}

for(inti=0;i<5;i++){

printf("%d",arr[i]);

}

return0;

}

2.分析以下代码的功能:

#include<stdio.h>

intmain(){

intmatrix[3][4]={

{1,2,3,4},

{5,6,7,8},

{9,10,11,12}

};

for(inti=0;i<3;i++){

for(intj=0;j<4;j++){

printf("%d",matrix[j][i]);

}

printf("\n");

}

return0;

}

3.分析以下代码的功能:

#include<stdio.h>

intmain(){

floatfloatArr[10]={1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0};

floatsum=0.0;

for(inti=0;i<10;i++){

sum+=floatArr[i];

}

printf("Average:%.2f\n",sum/10.0);

return0;

}

4.分析以下代码的功能:

#include<stdio.h>

intmain(){

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

for(inti=4;i>=0;i--){

printf("%d",arr[i]);

}

return0;

}

答案部分:

一、选择题

1.B

2.A

3.A

4.B

5.C

6.D

7.D

8.C

二、(一)多项选择题

1.A,B,C,D

2.A,C

3.A,B

4.A,B,D

5.A,B

(二)判断题

1.正确

2.错误

3.正确

4.错误

5.错误

三、(一)填空题

1.arr[4]

2.floatarr[5]={1.0,2.0,3.0,4.0,5.0};

3.for(inti=0;i<10;i++)

4.intmatrix[2][3]

5.matrix[1][2]

(二)计算题

1.

#include<stdio.h>

intmain(){

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

intsum=0;

for(inti=0;i<5;i++){

sum+=arr[i];

}

printf("Sum:%d\n",sum);

return0;

}

2.

#include<stdio.h>

intmain(){

intmatrix[3][4]={

{1,2,3,4},

{5,6,7,8},

{9,10,11,12}

};

intsum=0;

for(inti=0;i<3;i++){

for(intj=0;j<4;j++){

sum+=matrix[i][j];

}

}

printf("Sum:%d\n",sum);

return0;

}

3.

#include<stdio.h>

intmain(){

floatfloatArr[10]={1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0};

floatsum=0.0;

for(inti=0;i<10;i++){

sum+=floatArr[i];

}

printf("Average:%.2f\n",sum/10.0);

return0;

}

4.

#include<stdio.h>

intmain(){

intmatrix[2][3]={

{1,2,3},

{4,5,6}

};

for(inti=0;i<2;i++){

for(intj=2;j>=0;j--){

printf("%d",matrix[i][j]);

}

printf("\n");

}

return0;

}

四、综合题

1.

#include<stdio.h>

intmain(){

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

for(inti=0;i<5;i++){

inttemp=arr[i];

arr[i]=arr[9-i];

arr[9-i]=temp;

}

for(inti=0;i<10;i++){

printf("%d",arr[i]);

}

return0;

}

2.

#include<stdio.h>

intmain(){

intmatrix[3][4]={

{1,2,3,4},

{5,6,7,8},

{9,10,11,12}

};

for(intj=0;j<4;j++){

for(inti=2;i>=0;i--){

printf("%d",matrix[i][j]);

}

printf("\n");

}

return0;

}

五、材料分析题

1.该代码声明一个包含5个整数的数组`arr`,并初始化为{1,2,3,4,5},然后通过循环将数组中的每个元素乘以2,最后通过循环输出数组中的元素。

2.该代码声明一个包含3行4列的二维数组`matrix`,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论