有以下程序 main() { int x,y,z; x=y=1;z=X++,y++,++y; printf("%d,%d,%d\n",x,y,z); } 程序运行后的输出结果是A.2,3,3B.2,3,2C.2,3,1D.2,2,1

题目

有以下程序 main() { int x,y,z; x=y=1;z=X++,y++,++y; printf("%d,%d,%d\n",x,y,z); } 程序运行后的输出结果是

A.2,3,3

B.2,3,2

C.2,3,1

D.2,2,1


相似考题
更多“有以下程序main(){int x,y,z;x=y=1;z=X++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序运行后的输 ”相关问题
  • 第1题:

    有以下程序 include mare() { int x=1,y=2,z=3; if(x>y) if

    有以下程序 #include <stdio.h> mare() { int x=1,y=2,z=3; if(x>y) if(y<z) printf("%d",++z); else printf("%d",++y); printf("%d\n",x++); } 程序的运行结果是______。

    A.331

    B.41

    C.2

    D.1


    正确答案:D
    解析:本题考查的是if语句的嵌套。C语言规定else总是与它上面的最近的且不带else的if配对,所以本题else与if(yz)配对,即为内嵌if。在程序执行时,先判断if(x>y)的条件表达式x>y,即1>2,不成立,所以不执行内嵌if,直接执行“printf("%d",x++);”语句。由于x++表示在使用后再将x加1,所以输出1。

  • 第2题:

    有以下程序: main() { int x=5,y=2,z=1; printf("%d\n",x%y&~z); }程序运行后的输出结果为______。

    A.3

    B.2

    C.1

    D.0


    正确答案:D

  • 第3题:

    阅读以下程序,并给出程序输出结果: #include <stdio.h> int main() { int m=3,x=4,y=4,z=7; m=(m<x) ? x++ : m; m=(m<y) ? y++ : m; m=(m<z) ? z++ : m; printf("%d,%d,%d,%dn",m,x,y,z); return 0; }


    #* #*#* #*#*#* #*#*#*#*

  • 第4题:

    有以下程序:includemain(){int x=3,y=2,z=1; printf("%d\n",x/y&~z);程序运行后的

    有以下程序: #include <stdio.h> main() { int x=3,y=2,z=1; printf("%d\n",x/y&~z); 程序运行后的输出结果是( )。

    A.3

    B.2

    C.1

    D.0


    正确答案:D
    解析:&是按位“与”运算符,若参加运算的两个运算量的相应位都为1,则该位的结果值为1,否则为0。~是“取反”运算符,用来对一个二进制数按位取反,即将0变1,1变0。对于x/y&~z,先计算x/y的值,结果为1,用十六进制表示为0001;z用十六进制表示为0001,则~z为FFFE;最后进行&运算,整个表达式的值为0。

  • 第5题:

    有以下程序: main() {int x,y,z; x=y=1; z=x++,y++,++y; printf("%d,%d,%d,%d\n",x,y,z); 程序运行后的输出结果是( )。

    A.2,3,3

    B.2,3,2

    C.2,3,1

    D.2,2,1


    正确答案:C
    解析:z=x++是先把x的值1赋给z,所以z=1,然后再把x加1赋给x,x=2,++y后y又加1,所以y=3。