更多“下列字符数组的初始化,正确的是()。A.char ch[5]={"a","b","c","d","e"};B.char ch[]={'a','b'};C ”相关问题
  • 第1题:

    下列程序段中,不能正确赋值的是

    A.char*p,ch; p=&ch; scanf("%c,&p")

    B.char*p; p=(char*)malloc(1); scanf("%c",p);

    C.char*p; *p=getchar();

    D.char*p,ch; p=缸h; *p=getchar();


    正确答案:C
    解析: 本题考查了字符的输入函数getchax和利用scanf函数输入一个字符。用scanf输入字符时,格式说明字符应该为%c。本题选项C)因为指针P没有赋初值,所以是一个不定值,不能直接将getchar读入的字符赋给指针p所指向的字符,所以选项C错误。

  • 第2题:

    下列程序段中,不能正确赋值的是( )。

    A.char*p,ch; p=&ch; scanf("%c",&p);

    B.char*p; p=(char*)malloc(1); scanf("%c",p);

    C.char*p; *p=getchar();

    D.char*p,ch; p=&ch; *p=getchar();


    正确答案:C
    解析:地址变量p指向的存储空间一定要明确,否则可能影响程序的正确性。

  • 第3题:

    指向4个字符串的指针数组的正确的定义是()。

    A.char (*p)[ ]

    B.char *p[4]

    C.char *(p[])

    D.char (*p)[4]


    char *p[4]

  • 第4题:

    若有char ch[10],则下列字符串数组的赋值中不正确的是( )。

    A.ch="welcome";

    B.ch[0]='w';

    C.strcpy(ch,"welcome");

    D.char ch1[]="welcome";strcpy(ch,ch1);


    正确答案:A
    解析:ch是数组名,代表该数组的地址,是常量,不是变量,不能给其赋值。

  • 第5题:

    下列初始化字符数组的语句中,正确的是()。

    A.char str[5] = "hello";

    B.char[] str = {'h', 'e', 'l', 'l', 'o'};

    C.char str[5] = {"hi"};

    D.char str[100] = "";


    B

  • 第6题:

    下列初始化字符数组的语句,正确的是()。

    A.char[] str = {'h', 'e', 'l', 'l', 'o'};

    B.char[5] str = "hello";

    C.char[5] str = {"hi"};

    D.char[100] str = "";


    A