有以下程序 main() { char a,b,C,*d; a='\'; b=\\xbc'; c='\0xab'; d="\0127"; princf("%c%c%c%c\n",a,b,c,*D) ; } 编译时出现错误,以下叙述中正确的是A.程序中只有a='\';语句不正确B.b='\xbc';语句不正确C.d="\0127":语句不正确D.a='\';和c='\0xab';语句都不正确

题目

有以下程序 main() { char a,b,C,*d; a='\'; b=\\xbc'; c='\0xab'; d="\0127"; princf("%c%c%c%c\n",a,b,c,*D) ; } 编译时出现错误,以下叙述中正确的是

A.程序中只有a='\';语句不正确

B.b='\xbc';语句不正确

C.d="\0127":语句不正确

D.a='\';和c='\0xab';语句都不正确


相似考题
更多“有以下程序main(){chara,b,C,*d; a='\';b=\\xbc'; c='\0xab';d="\0127"; princf("%c%c%c%c\n",a, ”相关问题
  • 第1题:

    有以下程序:include main ( ){char a :'a',b; printf( "% c," , + + a); printf("%c

    有以下程序: #include <stdio. h> main ( ) { char a :'a',b; printf( "% c," , + + a); printf("%c \n" ,b =a++); }程序运行后的输出结果是( )。

    A.b,b

    B.b,c

    C.a,b

    D.a,c


    正确答案:A
    解析:程序中pdntf("%c",++a)是先将a加1,再输a,因此输出的是'b',而pfintf("%c\n",b=a++)是先将a的值赋给b,a再加1,所以输出的也是'b'。

  • 第2题:

    有以下程序 include main() { char a=4; printf("%d/n,a=a

    有以下程序 #include <stdio.h> main() { char a=4; printf("%d/n,a=a<<1); } 程序的运行结果是______。

    A.40

    B.16

    C.8

    D.4


    正确答案:C
    解析:“”是按位左移运算符,左移一位相当于该数乘以2,左移两位相当于该数乘以2的2次方,所以本题相当于将4乘以2,结果为8。

  • 第3题:

    有以下程序 main() { char a,b,c,*d; a='\';b='\xbc'; c='\0xab';d="\0127"; pfintf("%c%c%c%c\n",a,b,c,*d) ; } 编译时出现错误,以下叙述中正确的是

    A.程序中只有a='\';语句不正确

    B.b='\xbc';语句不正确

    C.d="\0127";语句不正确

    D.a='\';和c=,'0xab';语句都不正确


    正确答案:D
    解析:给字符变量赋值只能赋一个字符,包括转义字符,语句“a='\'”是错误的,因为“\”是转义字符,应该用“\\”来表示,语句“B='\xbe';”是正确的,它是将一个用十六进制表示的转义字符赋给一个字符型变量;语句“c=\0xab;”是正确的,反斜线后的十六进制只可由小写x开头,不能用0x。语句“d=”\0127“;”是正确的,可以给字符型指针变量赋一个字符串,其作用是让该指针变量指向该字符串。

  • 第4题:

    有以下程序 main() { char a,b,c, *d; a='\';b='\xbc'; c='\0xab';d="\0127"; cout<<a<<b<<c<<*d<<endl; } 编译时出现错误,以下叙述中正确的是

    A.程序中只有a='\=;语句不正确

    B.b='\xbc';语句不正确

    C.d="\0127";语句不正确

    D.a='\';和c='\0xab';语句都不正确


    正确答案:D
    解析:本题考察C++中各种类型在输出时的转化关系。斜杠为转义控制字符,其后必须紧跟一个字符,故首先可以确定的是a的赋值语句是错误的,根据选项我们直接看c的赋值语句是否正确。斜杠后跟。表示其后为八进制,其值从0到7,因此c的赋值语句也是错误的.据此可以判断本题的正确答案应该为D。

  • 第5题:

    有以下程序: main() { char a,b,c,*d; a='\';b='\xbc'; c='\0xab';d="\017"; printf("%c%c%c\n",a,b,c,*d); } 编译时出现错误,以下叙述中正确的是( )。

    A.程序中只有“a='\';”语句不正确

    B.“b='\xbc';”语句不正确

    C.“d="\0127";”语句不正确

    D.“a='\';”和“c='\0xab';”语句都不正确


    正确答案:D
    解析:语句a='\'是错误的,因为\是转义字符,应该用\\来表示,语句“B='\xbc';”是正确的,它是将一个用十六进制表示的转义字符赋给一个字符型变量;语句“c=\0xab;”是错误的,反斜线后的十六进制只可由小写x开头,不能用0x。语句“d="\0127";”是正确的,可以给字符型指针变量赋一个字符串常量,其作用是让该指针变量指向该字符串常量。所以,D选项为所选。