m0_67802447 2022-05-30 21:10 采纳率: 25%
浏览 11

关于#else#的问题,如何解决?

下列程序的运行结果是# include < stdio . h > main (){
int a , b , c, x ;
a = b = c=0, x =35; if ( !a ) x --;
else if ( b ) x++; if ( c ) x =3;
else x =4;
printf ("% d ", x );

A .3
B .4
C .34
D .35
正确答案 B ,

  • 写回答

2条回答 默认 最新

  • 缓慢前进的小菜 2022-05-30 22:13
    关注

    a=0 !a为真 执行 x-- x=34
    if elseif有一个执行,其余一个就不执行,此时b为真或者假都不执行 else if(b) 不执行
    c=0 if(c) 不执行
    if else 只执行一个,C为假,执行 else x=4 所以输出结果是x=4
    可以结合代码看下注释理解

    • ```c
      int a, b, c, x;
      a = b = c = 0, x = 35;
      if (!a) x--;// a为0,!a为真,执行x--;此时x等于34
      else if (b) x++; // if elseif有一个执行,其余一个就不执行,此时b为真或者假都不执行
      if (c) x = 3; // if else 只执行一个,C为假,执行 else x=4 所以输出结果是x=4
      else x = 4;

    ```

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 5月30日