更多“已知C语言中定义的数组char array[]="program";则数组所占的空间为______。A.7个字节B.8个字节C.9 ”相关问题
  • 第1题:

    设有数组定义: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′}。

  • 第2题:

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

    A.4个字节

    B.5个字节

    C.6个字节

    D.7个字节


    正确答案:C
    解析:本题考察在C++语言中,字符串的存放规则。即字符串存放在字符数组中,而且在字符的后面自动插入标识字符串结束的标识符\0,因此,共6个字符,每个字符占用一个字节,故正确答案为C。

  • 第3题:

    在C语言中,设有数组定义:char array[]=“China”;则数组array所占用的空间为(28)。

    A.5个字节

    B.6个字节

    C.10个字节

    D.12个字节


    正确答案:B
    解析:字符数组是每个元素存放一个字符型数据的数组。C语言中规定用‘\0’作为字符串的结束标志,它占内存空间,但不计入字符串的长度。对数组array赋初值:chararray[]=“China”,此时系统末尾自动加入一个‘\0’,数组array的长度为6,所占用的空间为6个字节,即chararray[]=“China”等价于chararray[]={'C','h','i','n','a','\0')。若定义chararray[]={'C','h','i','n','a',),此时数组array的长度为5个字节。

  • 第4题:

    设有数组定义:char array[ ] ="China";,则数组array所占的空间为

    A.4个字节

    B.5个字节

    C.6个字节

    D.7个字节


    正确答案:C
    解析:在给数组赋值时,可以用一个字符串作为初值,这种方法直观、方便,而且符合人们的习惯。数组array的长度不是5,而是6,这点必须要注意。因为字符串常量的最后由系统加上一个'\0',因此,上面的初始化与下面的等价:
      Char array[ ] ={'C','h','i','n','a','\0'};

  • 第5题:

    在C语言中,设有数组定义:char array[]=“china”;则数组array所占用的空间为(58)。

    A.4个字节

    B.5个字节

    C.6个字节

    D.7个字节


    正确答案:C
    解析:字符串在内存的存放方式是:除了有效的字符之外,还要在字符串的末尾保存一个特殊的字符'\0'来作为字符串的结尾。