niusouti.com

以下程序的输出结果是main(){ int x=1,y=3;printf("%d,",x++);{ int x=0;x+=y*2;printf("%d,%d, ",x,y);}printf("%d,%d\n",x,y);}A.1,6,3,1,3B.1,6,3,6,3C.1,6,3,2,3D.1,7,3,2,3

题目

以下程序的输出结果是

main()

{ int x=1,y=3;

printf("%d,",x++);

{ int x=0;x+=y*2;

printf("%d,%d, ",x,y);

}

printf("%d,%d\n",x,y);

}

A.1,6,3,1,3

B.1,6,3,6,3

C.1,6,3,2,3

D.1,7,3,2,3


相似考题
参考答案和解析
正确答案:C
更多“以下程序的输出结果是 main() {intx=1,y=3; printf("%d,",x++); {intx=0;x+=y*2; print ”相关问题
  • 第1题:

    有以下程序: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。

  • 第2题:

    有以下程序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,~z的值为0,所以进行&运算后,整个表达式的值为0。

  • 第3题:

    以下程序的输出结果是() main() { int x=2,y=-1,z=2; if(x<y) if(y<0) z=0; else z+=1; printf(“%dn”,z); }

    A.3

    B.2

    C.1

    D.0


    0 0 3

  • 第4题:

    有以下程序

    main( )

    { int x=0,y=0,i;

    for(i=1;++i)

    { if(i%2==0){x++;continue;}

    if(i%5==0){y++;break;}}

    printf("%d,%d",x,y);}

    程序的输出结果是

    A.2,1

    B.2,2

    C.2,5

    D.5,2


    正确答案:A
    解析:本题考查了continue和break语句在循环语句中的作用。break语句的作用是结束本层循环,而continue语句的作用是结束本次循环直接进入到下次循环。

  • 第5题:

    以下程序的输出结果是includevoid main(){int x=1,y=3; cout<

    以下程序的输出结果是 #include<iostream.h> void main() { int x=1,y=3; cout << x++ << " , "; { int x=0;X+=y*2; cout<<x<<" ,"<<y<<" ;"; } cout<<x<<" ,"<<y; }

    A.1,6,3,1,3

    B.1,6,3,6,3

    C.1,6,3,2,3

    D.1,7,3,2,3


    正确答案:C
    解析:coutx++;语句中,程序先输出x的值,然后再加l,所以结果为1,此时x的值为2;布intx=0;x+=y*2;语句中,将0的值赋给x,然后再运算x+=y*2的值,结果为x=6(此时x的值为局部变量),y的值不变,在最后在执行了x语句后的值,所以应为2。