Dev C++運算式解釋
#include <iostream.h>
#include <stdlib.h>
#include <stdio.h>
int main()
{
int a=2,b=3,c=4,d=5,e=6,f=7;
b+=c--+a*2/(d-f)?e-=b:e+=c++;
printf("a=%d b=%d c=%d d=%d e=%d f=%d\n",a,b,c,d,e,f);
system("PAUSE");
return 0;
}
結果:a=2 b=6 c=3 d=5 e=3 f=7
請解釋這6數值怎麼運算出的
並寫出運算過程
謝謝♥
如果可以
希望有Dev C++高手留下您的即時
讓我有相關問題時得以詢問ˊˇˋ"
Thanks!
1 則回答
最佳解答
b+=c--+a*2/(d-f)?e-=b:e+=c++;
(條件1)?敘述1:敘述2
這種叫做三元運算子
條件1成立則輸出敘述1 不成立則輸出敘述2
所以?前面都是條件
c--+a*2/(d-f)=4+(4/-2)=2[條件上非0(false)都表示1(True)]
ps.此時因c--的關係(c變成3了!)
所以b+=c--+a*2/(d-f)?e-=b:e+=c++;
變成
b=b+(e-=b)=3+3=6
a=2 b=6 c=3(條件執行一次c--) d=5 e=3(執行敘述1) f=7