第4章 数组练习题答案

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

第4章数组练习题

一、选择题

1.在c语言中,引用数组元素时,其数组下标的数据类型允许是()。

A)整型常量 B)整型表达式C)整型常量或整型表达式 D)任何类型的表达式

2.要说明一个有10个int元素的数组,应当选择语句()。

A) int a[10]; B) int a(10); C) int a[9] D) int a[11]

3.对以下说明语句的正确理解是()。

int a[10]={6,7,8,9,10};

A)将5个初值依次赋给a[1]至a[5]

B)将5个初值依次赋给a[0]至a[4]

C)将5个初值依次赋给a[6]至a[10]

D)因为数组长度与初值的个数不相同,所以此语句不正确

4.已知:int a[10];则对a数组元素的正确引用是()。

A) a[10] B) a[3.5] C) a(5) D) a[10-10]

5.以下对一维整型数组a的正确说明是()。

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

C) int n; D)#define SIZE 10;

scanf("%",&n); int a[SIZE];

int a[n];

6.要定义一个int型一维数组art,并使其各元素具有初值89,-23,0,0,0,不正确的定义

语句是()。

A) int art[5]={89,-23};

B) int art[ ]={89,-23};

C) int art[5]={89,-23,0,0,0};

D) int art[ ]={89,-23,0,0,0};

7.在C语言中,二维数组元素在内存中的存放顺序是()。

A)按行存放 B)按列存放 C)由用户自己定义 D)由编译器决定

8.以下对二维数组a的正确说明是()。

A)int a[3][] B) float a(3,4) C) double a[1][4] D) float a(3)(4) 9.已知:int a[3][4];则对数组元素引用正确的是()。

A)a[2][4] B)a[1,3] C) a[2][0] D) a(2)(1) 10.已知:int a[3][4]={0};则下面正确的叙述是()。

A)只有元素a[0][0]可得到初值0

B)此说明语句是错误的

C)数组a中的每个元素都可得到初值,但其值不一定为0

D)数组a中的每个元素均可得到初值0

11.以下各组选项中,均能正确说明二维实型数组a的是()。

A) float a[3][4]; B) float a(3,4);

float a[][4]; float a[3][4];

float a[3][]={{1},{0}}; float a[][]={{0},{0}};

C) f loat a[3][4]; D) float a[3][4];

float a[][4]={{0},{0}}; float a[3][];

float a[][4]={{0},{0},{0}}; float a[][4];

12.已知:int a[][3]={1,2,3,4,5,6,7};则数组a的第一维的大小是()。

A)2 B)3 C)4 D)无确定值

13.若二维数组a有m列,则在a[i][j]之前的元素个数为()。

A) j*m+i B) i*m+j C) i*m+j-1 D) i*m+j+1

14.要使字符数组str存放一个字符串"ABCDEFGH",正确的定义语句是()。

A) char str[8]={'A','B','C','D','E','F','G','H'};

B) char str[8]="ABCDEFGH";

C) char str[ ]={'A','B','C','D','E','F','G','H'};

D) char str[ ]="ABCDEFGH";

15.下面是对数组s的初始化,其中错误的是()。

A) char s[5]={"abc"} B) char s[5]={'a','b','c'};

C) char s[5]=""; D) char s[5]="abcde";

16.对两个数组a和b进行如下初始化

char a[]="ABCDEF";

char b[]={'A','B','C','D','E','F'};

则以下叙述正确的是()。

A) a与b数组完全相同 B) a与b长度相同

C) a和b中都存放字符串 D) a数组比b数组长度长

17.下面程序的运行结果是()。

char c[5]={'a','b','\0','c','\0'};

printf("%s",c);

A) 'a''b' B) ab C) ab c D) 以上三个答案均有错误

18.下面程序段运行的结果是()。

char s[]="a book!";

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

A) a book! B) a bo

C) a boo D) 格式描述不正确,没有确定的输出

19.合法的数组定义是()。

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','4','5'};

20.要使字符串数组STR含有"ABCD","EFG"和"xy"三个字符串,不正确的定义语句有()。

A)char STR[ ][4]={"ABCD","EFG","XY"};

B)char STR[ ][5]= {"ABCD","EFG","XY"};

C)char STR[ ][6]= {"ABCD","EFG","XY"};

D)char STR[ ][7]={{'A','B','C','D','\0'},"EFG","XY"};

21.有两个字符数组a、b,则以下正确的输入格式是()。

A) gets (a,b); B) scanf ("%s%s",a,b);

C) scanf ("%s%s",&a,&b); D) gets ("a"), gets ("b");

22.判断字符串a和b是否相等,应当使用()。

A) if (a==b) B) if (a=b)

C) if (strcpy(a,b)) D) if (strcmp(a,b))

23.下述对C语言字符数组的描述中错误的是()。

A)字符数组可以存放字符串

B)字符数组的字符串可以整体输入、输出

C)可以在赋值语句中通过赋值运算符"="对字符数组整体赋值

D)不可以用关系运算符对字符数组中的字符串进行比较

24.运行下面程序段的输出结果是()。

char s[12]="string";

printf("%d",strlen(s));

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

25.函数调用strcat ( strcpy ( str1,str2 ), str3 )的功能是()。

A)将字符串str1复制到字符串str2中,再连接到字符串str3之后

B)将字符串str1连接到字符串str2之后,再复制到字符串str3之后

C)将字符串str2复制到字符串str1中,再将字符串str3连接到字符串str1之后

D)将字符串str2连接到字符串str1之后,再将字符串str1复制到字符串str3之中

26.有下面的程序段

char a[3],b[]="china";

相关文档
最新文档