首页 > 试题广场 >

以下程序输出结果是: main ( ) { int m=5;

[单选题]

以下程序输出结果是:

int main ()
{
    int m=5;
    if (m++>5)
        printf ("%d\n",m);
    else
        printf ("%d\n",m--);
}


  • 7
  • 6
  • 5
  • 4
1、首先int m=5;结束后,m=5;
2、进入if条件判断语句,m++>5不成立,因为m++为先参加运算,语句结束后再自增,故5>不成立,进入else语句,并且执行m++,m=6;
3、else printf ("%d\n",m--);语句执行时,m=6,故本题答案为6,选择B;语句结束后,m--,m=5;

编辑于 2022-02-12 19:35:43 回复(0)
自增自减单独作为语句没有前后区别,可做优化效率将符号置前。 如果在其它语句中,要考虑加减的位置。 本题if语句符号在后 先执行判断,自增 printf同理
发表于 2022-07-02 21:26:35 回复(0)
如果else改为else if(m==6),那么是用m=5还是6来判断
发表于 2023-03-30 22:47:21 回复(1)
m++是先算后加
发表于 2022-05-28 17:05:58 回复(0)