[問題] c語言printf的問題

看板C_and_CPP作者 (真實的生活)時間14年前 (2011/03/19 20:23), 編輯推噓5(5020)
留言25則, 12人參與, 最新討論串1/2 (看更多)
int a = 11, b = 2, c = 7; printf("%d\n", a+b++-++c); printf("%d\n", a = b += c); printf("%d %d", a, b); 可以及告訴我這題怎麼解嗎? 我剛剛用c跑 答案是 5 11 11 11 第一個和第二個printf都不會=.= 第三個前面是a我知道 可是第二個b怎麼變11?? 謝謝 -- 肝不好 肝若好 人生是黑白的 考卷是空白的 、 ﹐ ● ●b ▎ ●> ● ▌ ﹍﹍ 囧> 幹... ▲ ■┘ ▎ ■ ▋ ︶■ 〈﹀ ∥ ▁▁∥ ▎ ﹀〉▊ 〈\ ψcockroach727 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.252.222.5

03/19 20:25, , 1F
請修改標題
03/19 20:25, 1F

03/19 20:27, , 2F
要改哪一個?
03/19 20:27, 2F

03/19 20:28, , 3F
第一行後 a=11,b=3,c=8, 第2行應該是先做 += 在做assign
03/19 20:28, 3F

03/19 20:29, , 4F
請問第一行怎麼看
03/19 20:29, 4F

03/19 20:30, , 5F
還有+=怎麼做=.=
03/19 20:30, 5F

03/19 20:31, , 6F
先看書吧...
03/19 20:31, 6F

03/19 20:31, , 7F
a += b; 就是 a = a + b;
03/19 20:31, 7F

03/19 20:31, , 8F
標題可以改成: "大家可以告訴我廁所在哪裡嗎? 很急!"
03/19 20:31, 8F

03/19 20:31, , 9F
跟原本的意思差不多 :P
03/19 20:31, 9F

03/19 20:32, , 10F
=.=
03/19 20:32, 10F

03/19 20:33, , 11F
以前當學生會接受著面對這樣的問題. 畢業久了, 對這種東
03/19 20:33, 11F

03/19 20:33, , 12F
b += c b=9 怎麼變11..
03/19 20:33, 12F

03/19 20:33, , 13F
西都很反感.
03/19 20:33, 13F

03/19 20:33, , 14F
第一行好像是 a + [b++] - [(++c)]
03/19 20:33, 14F

03/19 20:34, , 15F
你先確定運算子的優先順序吧
03/19 20:34, 15F

03/19 20:34, , 16F
d大的答案是6耶 跟我跑出來的5不依樣=.=
03/19 20:34, 16F

03/19 20:37, , 17F
應該是這樣(a+b)++-(++c)
03/19 20:37, 17F

03/19 20:41, , 18F
喔喔 同等級是左至右
03/19 20:41, 18F

03/19 20:44, , 19F
一元運算子++ 比二元運算子+優先高喔
03/19 20:44, 19F

03/19 21:00, , 20F
翻書 + 1
03/19 21:00, 20F

03/19 22:30, , 21F
考這個其實還好,有助了解 ++ 的性質
03/19 22:30, 21F

03/19 22:56, , 22F
腦筋急轉彎 ._.
03/19 22:56, 22F

03/19 23:40, , 23F

03/20 16:13, , 24F
a+(b++)-(++c) ----> 11+2-8 a=11 b=3 c=8
03/20 16:13, 24F

03/20 16:15, , 25F
a=(b+=c) ---->b=b+c a=b
03/20 16:15, 25F
文章代碼(AID): #1DXA0juZ (C_and_CPP)
文章代碼(AID): #1DXA0juZ (C_and_CPP)