1樓:左自強
a++的意思是自加一1次,然後又回到原來的值,++a的意思是a+1.所以最後輸出的是0.
2樓:匿名使用者
a++是a的自增
int a =a++;意思是將a++表示式的值賦值給a(a++就是先賦值後運算)
所以a++表示式的值是0把它賦值給a,所以a的值為0.
3樓:匿名使用者
執行步驟為這樣的
int a = 0
a = a++ 可以執行步驟是先賦值給a 然後++ a = 1 然後才執行++但是呢++之後並沒有再次賦值給a
所以列印的時候a= 0
4樓:匿名使用者
編輯原理的問題...在系統執行時..先調值並沒有賦值..賦值放在執行的最後一步...
5樓:
因為a=a++是先把a的值先執行再加的,如果是a=++a輸出就是1了
6樓:秋風掃走廊
a=a++;
可分解為;
int b=a;
a++;
a=b;
7樓:匿名使用者
如果輸入++a就是1了
8樓:
a=a++ 的順尋
1:先返回a (0)
2: 執行++ a為1
3: 在賦值 a=a(0)
所以為0
int a=10; int b= a++; system.out.print(a);. system.out.print(b); a為什麼是11,b10是
9樓:匿名使用者
a++的順序是,先使用值,再計算,
所以**可以解析為:
int a=10;
int b=a;
a=a+1;
所以a值為11,b為10,
如果用b=++a;
則a,b都是11
10樓:匿名使用者
a之所為11是因為在賦值給b以後做了一次累加
b之所為10是因為在a=10的時候賦值給了b
11樓:滄海雄風
b=a++ 先把a值賦值給b 然後a自加 因此 b=10 a =11
如果是 b= ++a的話 那麼是先執行自加 然後賦值給b a,b兩個都是11
這個東西 考試必考 都考爛了
int a=1, b=2;int c=a+b++; system.out.print(c++);system.out.print(c+a);
12樓:菜鳥學c加加
剛開始a = 1, b = 2;經過int c = a+b++;後 a = 1,b=3, c=3因為b++是先輸出後加1,然後第一個輸入是3,因為c=3先輸出後加1,此時a=1, b=3, c=4,所以第二個輸出為5.
13樓:匿名使用者
c=a+b++ = 1+2 = 3
所以第一個輸出是 3
輸出後執行 c++ 變成 c=4 ,所以 c+a = 5所以第二個輸出是 5
14樓:匿名使用者
第一個輸出:5
第二個輸出:6
int a 0,b 0,c 0 c a a 5a b,b 3 printfd,d,d n ,a,b,c 執行過程是怎麼的 詳細些
if a b,b c,c d 逗號表示式與加減乘除本質上是一樣的,它的求值是從左向右依次對表示式求值,整個表示式的結果取逗號表示式中最後一個表達的的結果,如果非零,就會使 if 成立 依照上面的理論 c a a 5 a b,b 3 的執行順序是這樣的 1 首先分兩塊,逗號前面的是第一塊,先執行,逗號...
C語言中,int a 3,b 0a a b a中, a具體定義是什麼 為什麼得出來是
是非運算,參與 運算的量是真,結果為假 參與運算的量為假,結果為真c語言版規定 1為真,0為假 但對於變數,權非零即為真,0為假 所以 a 3 a表示假 a a b a 這個整體是與運算,有一個為假 整個結果就為假 在c語言中是邏輯非的意思,即為0或者是非0,題中a 3,所以 a就是0了 c語言裡i...
C語言中。inta1,b0,c1執行語句bac後,a,b,c
或運算,而且是左結合,b為真,整個表示式就為真了,不再繼續運算,也就是 a和 c沒有運算,表示式的結果就出來了。後首先根據運算子優先順序和結合性。b a c 然後先算 b,此時 b 1,為true,於是不需要專算 後的內容了。屬 因為 true 任意表示式 true。注意,運算子優先順序不代表計算優...