若有如下变量定义,则正确的叙述为:char x[] = "abcd"; char y[] = {'a', 'b', 'c', 'd'};A.数组x的长度大于数组y的长度B.两个数组的长度相同C.数组x的长度小于数组y的长度D.数组x和数组y的值相同

题目

若有如下变量定义,则正确的叙述为:char x[] = "abcd"; char y[] = {'a', 'b', 'c', 'd'};

A.数组x的长度大于数组y的长度

B.两个数组的长度相同

C.数组x的长度小于数组y的长度

D.数组x和数组y的值相同


相似考题
更多“若有如下变量定义,则正确的叙述为:char x[] = "abcd"; char y[] = {'a', 'b', 'c', 'd'};”相关问题
  • 第1题:

    若有以下类型说明语句: char w;int x;float y, z; 则表达式w*x+z-y的结果为______类型。

    A.float

    B.char

    C.int

    D.double


    正确答案:A
    解析:在进行运算时,不同类型的数据参加运算;需要先将其转换成同一类型的数据,然后再进行运算。转换的顺序由低到高为:char,shor→int→unsigned→long→double←float,故结果为float型。

  • 第2题:

    下列判断正确的是( )。

    A.char a="ABCD";等价于char*a:*a="ABCD";

    B.char str[10]={"ABCD"};等价于char str[10];str[]={"ABCD"};

    C.char*s="ABCD";等价于char s;*s="ABCD";

    D.char c[5]="ABCD",d[5]="ABCD";等价于char c[5]=d[5]="ABCD";


    正确答案:D
    解析:a="ABCD"书写错误,因为“=”左边不能出现常量;数组名s是代表s数组首地址的地址常量,而不是变量;字符串只有在定义时维数可以省略。

  • 第3题:

    若有

    char x=32,y=3

    则表达试~x&y的值为【 】。


    正确答案:3
    3

  • 第4题:

    若有char a[5],*pa;则下面的选项中正确的赋值语句是()。

    A.p“abcd”

    B.a“abcd”

    C.*p“abcd”

    D.*a“abcd”


    正确答案:A

  • 第5题:

    下列对字符数组进行初始化的语句中,______ 是正确的。

    A.char s 1[]=“abcd”;

    B.char s2[3]=”xyz”;

    C.char s 3[][3]={‘a’,‘x’,‘y’}

    D.char s3[][3]={“xyz”,“mnp”};


    正确答案:A
    解析:BCD选项都不合字符数组的定义。

  • 第6题:

    对于下列定义,不正确的叙述是( )。 union data { int a; char b; double c; }x=y;

    A.变量x所占内存的长度等于成员c的长度

    B.变量x的地址和它的各成员地址都是相同的

    C.可以在定义时对x初始化

    D.不能对变量x赋值,故x=y非法


    正确答案:C
    解析: 本题主要考查的知识点是联合体的内存使用。联合体所占用的内存空间为最长的成员所占用的空间,各个成员分量全部是从低地址方向开始使用内存单元。不能在定义共用体变量时对它初始化。

  • 第7题:

    给出发下定义: char x[]="abcdefg"; char y[]={'a', 'b', 'c', 'd', 'e', 'f', 'g' };则正确的叙述为______。

    A.数组x和数组y等价

    B.数组x和数组y的长度相同

    C.数组x的长度大于数组y的长度

    D.数组x的长度小于数组y的长度


    正确答案:C

  • 第8题:

    若有如下定义和声明: struct s { int m;char ch;double x; union t {char a[6];int b[3];}tt;}ss; 则sizeof(struets)的值是( )

    A.6

    B.14

    C.17

    D.20


    正确答案:C

  • 第9题:

    若有定义如下:char x[10]="Visual C",y[]="++6.0"; 则下列选项中对字符串操作错误的是( )。

    A.strcpy(x,y);

    B.strcat(x,y);

    C.gets(x);

    D.cout<<strlen(x);


    正确答案:B
    解析:选项A将字符数组y的内容复制到字符数组x中,操作后x的内容为++6.0,而字符数组y不变;选项C将键盘输入字符串赋给x字符数组;选项D输出字符串x的长度;而选项B要将字符数组y的内容连接到字符数组x的后面由于连接后的字符串长度为14(8+5+1)字节,超过字符数组x的声明长度,因此操作不合法。

  • 第10题:

    设int型变量a、b,float型变量x、y,char型变量ch均已正确定义并赋值,正确的switch语句是()。

    • A、switch(x+y){……}
    • B、switch(ch+1){……}
    • C、switch ch{……}
    • D、switch(a+b){……}

    正确答案:B,D

  • 第11题:

    若有定义如下classdog{floatx;staticinty;…},则下列说法中正确的是()

    • A、x称为类变量,y为实例变量
    • B、"x,y均为类变量"
    • C、"x,y均为实例变量"
    • D、"x为实例变量,y为类变量"

    正确答案:D

  • 第12题:

    单选题
    设x为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型变量,则表达式x+y*a/x+b/y+c的值为()类型。
    A

    int

    B

    long

    C

    double

    D

    char


    正确答案: C
    解析: 暂无解析

  • 第13题:

    已知有变量datal定义如下: union data { int i; char ch; float f; }datal; 则变量datal所占的内存存储空间可表示为(57)。

    A.sizeof(int)

    B.sizeof(char)

    C.sizeof(float)

    D.SiZCOf(mt)+sizeof(char)+sizeof(float)


    正确答案:C
    解析:本题考查C语言编程的基本知识。本题变量datal定义为联合结构。联合中所有数据项占有相同的内存空间。联合体所占的内存存储空间为所包含数据项所占的内存存储空间的最大值。

  • 第14题:

    下列对字符数组进行初始化中,( )是正确的。

    A.char s1[]="abcd";

    B.char s2[3]="xyz";

    C.char s3[][]={'a','x', 'y');

    D.char s4 [2][3]={"xyz", "rnnp"};


    正确答案:A

  • 第15题:

    要禁止修改指针p本身,又要禁止修改p所指向的数据,这样的指针应定义为( )。

    A.const char *p=”ABCD”;

    B.char const *p=”ABCD”;

    C.char *const p=”ABCD”;

    D.const char *const p=”ABCD”;


    参考答案:D

  • 第16题:

    定义如下变量:char one_char,则语句cin>>one_char等价于C语言中的( )语句。

    A.printf(one_char);

    B.prinft("%c",one_char);

    C.scanf(one_char);

    D.scanf("%c",& one_char);


    正确答案:D

  • 第17题:

    若有如下语句: struct a { char x[10] int y; }s,*t; t=&S; 则对结构体变量s中的成员y的正确引用是( )。

    A.a.y;

    B.t->y;

    C.t.y;

    D.*t->y;


    正确答案:B
    解析:本题中的a是结构体名,s是结构体a的变量,t是结构体a的指针。通过变量直接访问结构体成员应该使用“.”运算符,而通过指针间接访问结构体成员应该使用“->”运算符。故本题的正确答案为B。

  • 第18题:

    设int型变量a、b,float型变量x、y,char型变量ch均已正确定义并赋值,则正确的swith语句是( )。

    A.switch (x+y) {...}

    B.switch (ch+1) {...}

    C.switch ch {...}

    D.switck (a+b) {...}


    正确答案:B
    解析:switch的表达式的值不可以是float类型,因此选项A错误;选项C的switch后没有括号,所以错误;选项D,不应该有分号。所以选项B正确。

  • 第19题:

    设有以下变量定义,并已赋确定的值: char w; int x; float y; double z; 则表达式:w*x+z-y所求得的数据类型为( )。

    A.char

    B.int

    C.float

    D.double


    正确答案:D
    解析:本题考核表达式计算时数据类型的转换。C++中,参加运算的各个数据类型都转换成数据类型最长的数据类型,然后计算,表达式值的类型也就是数据长度最长的数据类型,在char、int、float、double中,double型的数据最长,所以表达式所求得的数据类型为double。

  • 第20题:

    若有如下定义: union aa {int n; char c[9]; float x;}a,b,c; 则下列叙述中不正确的是( )

    A.union aa是定义的共用体类型

    B.a,b,c是定义的共用体类型名

    C.n、c[9]和x是共用体的成员名

    D.a,b,c是定义的共用体变量名


    正确答案:B

  • 第21题:

    定义如下变量:char one_char;,则语句cout<<one_char;显示结果相当于C语言中的( )语句。

    A.printf(one_char);

    B.prinff("%c",one_char);

    C.scanf(one_char);

    D.scanf("%c",&one_char);


    正确答案:B

  • 第22题:

    设x为float型变量,y为double型变量,a为int型变量,b为long型变量, c为char型变量,则表达式x+y*a/x+b/y+c的值为()类型。

    • A、int
    • B、long
    • C、double
    • D、char

    正确答案:C

  • 第23题:

    多选题
    设int型变量a、b,float型变量x、y,char型变量ch均已正确定义并赋值,正确的switch语句是()。
    A

    switch(x+y){……}

    B

    switch(ch+1){……}

    C

    switch ch{……}

    D

    switch(a+b){……}


    正确答案: C,B
    解析: 暂无解析

  • 第24题:

    单选题
    若有定义如下classdog{floatx;staticinty;…},则下列说法中正确的是()
    A

    x称为类变量,y为实例变量

    B

    x,y均为类变量

    C

    x,y均为实例变量

    D

    x为实例变量,y为类变量


    正确答案: B
    解析: 暂无解析