计算机等级考试(二级C语言)

设有如下数组定义:charstr[8]={"Fujian"};则分配给数组str的存储空间是()字节A、6B、7C、8D、9

题目

设有如下数组定义:charstr[8]={"Fujian"};则分配给数组str的存储空间是()字节

  • A、6
  • B、7
  • C、8
  • D、9
参考答案和解析
正确答案:C
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

假定一个二维数组的定义为“int a[3][5];”,则该数组所含元素的个数为【 】,所占字节存储空间的字节数为【 】。


正确答案:15 60
15 60 解析:所含元素的个数为15个,所占存储空间的字节数为15*4=60个。

第2题:

假定一维数组的定义为“chara[8];”,则该数组a所占用的存储空间的字节数为()。

A.8

B.10

C.64

D.32


参考答案:D

第3题:

设有:charstr[]=“123456789”;,数组str的长度是()。

A.9

B.10

C.11

D.12


正确答案:B

第4题:

设有如下数组定义:charstr[8]={"Fujian"};则分配给数组str的存储空间是()字节

A.6

B.7

C.8

D.9


参考答案:C

第5题:

设有定义charstr[80];以下不能将输入数据first\nsecond\n<CR>读取到数组str中的语句是( )。

A.cin.get(str,strlen(str));

B.cin.getline(str,strlen(str));

C.cin>>str;

D.cin.read(str,strlen(str));


正确答案:D
D。【解析】本题考查cin流对象的几种成员函数get,getline,read及流提取符>>的使用规则。

第6题:

设有定义charstr[80]以下不能将输人数据nrst\nsecond\<CR)读取到数组str的语句是( )。

A.cin.get(str,strlen(str));

B.cin.getline(str,strlen(str));

C.cin>>str;

D.dn.read(str,strlen(str));


正确答案:D
解析: 本题考查cin流对象的几种成员函数get,getline,read及流提取符>>的使用规则。

第7题:

设有数组定义chararray[]="program";则数组array所占空间为()个字节。

A. 5

B. 6

C. 7

D. 8


正确答案:D

第8题:

已知C语言中定义的数组char array[]="program";则数组所占的空间为______。

A.7个字节

B.8个字节

C.9个字节

D.6个字节


正确答案:B
解析:字符型数组并进行初始化,系统按照C语言对字符串处理规定,在字符串的末尾自动加上串结束标记'\O',占用一个字节,因此数据array所占的空间为8。

第9题:

设有数组定义:char array[]="Chinese";则数组array所占的空间为A.6个字节 B.7个字节 C.8个字节 D.9个字节


正确答案:C
本题主要考查字符数组的初始化操作。字符数组的初始化可以逐个元素赋值,也可以作为字符串赋值。
逐个元素赋值初始化形式:
char 数组名[n]={字符1,字符2,……,字符n};
char 数组名[]={字符1,字符2,……,字符n};
作为字符串赋值形式:
char 数组名[n]="字符串";
char 数组名[]="字符串";
在C语言中,为了方便确定字符串的长度,编译系统在字符串后增加了一个结束标识’\0’,即ASCII码的0。因此,当采用字符串初始化字符数组时,必须为其保留一个存放结束标识符的位置。
在本题中,用一个字符串作为数组的初值,这种方法直观、方便,而且符合人们的习惯。数组array的长度是7,但所占的空间是8,这点必须要注意。因为字符串常量的最后由系统加上一个’\0’,因此,上面的初始化是char array[]={′C′,′h′,′i′,′n′,′e′, ′s′, ′e′,′\0′}。

第10题:

设有数组定义:char array[]="China";则数组array所占的空间是( )。

A.4个字节

B.5个字节

C.6个字节

D.7个字节


正确答案:C
解析:在定义字符数组时,可以用一个字符串作为初值,对数组进行初始化。要注意的是,数组array的长度不是5,而是6,因为系统将自动在字符串常量的后面加上一个"\0",因此,题干中的初始化语句与chararray[]={"C","h","i","n","9","\0"};等价。