[理工] 程式設計

看板Grad-ProbAsk作者 (ching)時間4年前 (2020/02/13 16:50), 編輯推噓5(5030)
留言35則, 5人參與, 4年前最新討論串2/2 (看更多)
https://i.imgur.com/ImThqxn.jpg
想問這題答案為什麼是B -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.11.69.109 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1581583846.A.549.html

02/13 17:10, 4年前 , 1F
因為X==0 之後另一邊讀1&&k 得正就跳出去了 所以=8
02/13 17:10, 1F

02/13 17:10, 4年前 , 2F
講義有優先順序要讀熟
02/13 17:10, 2F

02/13 17:10, 4年前 , 3F
X=0 手殘按到多一個=
02/13 17:10, 3F

02/13 17:17, 4年前 , 4F
不是==的優先度最高,再來是&&,最後是=嗎?
02/13 17:17, 4F

02/13 17:18, 4年前 , 5F
我以為是:看1==0,得0
02/13 17:18, 5F

02/13 17:18, 4年前 , 6F
0&&k++
02/13 17:18, 6F

02/13 17:18, 4年前 , 7F
因為已經有0在&&前面了,直接跳掉
02/13 17:18, 7F

02/13 17:18, 4年前 , 8F
最後x=0,k=8
02/13 17:18, 8F

02/13 17:21, 4年前 , 9F
喔喔對欸 樓上正解
02/13 17:21, 9F

02/13 17:40, 4年前 , 10F
想問++是對哪個operand做運算? 我以為++優先是最高
02/13 17:40, 10F

02/13 17:42, 4年前 , 11F
喔喔 應該說&&結束就跳出去 為什麼會這樣 不太懂
02/13 17:42, 11F

02/13 17:50, 4年前 , 12F
我是這樣想的:
02/13 17:50, 12F

02/13 17:50, 4年前 , 13F
&&是and,如果已知左邊的是0,那右邊就不會判斷可以直
02/13 17:50, 13F

02/13 17:50, 4年前 , 14F
接跳過
02/13 17:50, 14F

02/13 17:50, 4年前 , 15F
所以這題k++根本不會運算
02/13 17:50, 15F

02/13 17:50, 4年前 , 16F
因為看到0&&……就可以直接跳掉了
02/13 17:50, 16F

02/13 17:50, 4年前 , 17F
有錯歡迎指出
02/13 17:50, 17F

02/13 17:55, 4年前 , 18F
你說的是對的 我剛剛跑了一下 改成1&&k++ 就變19 了
02/13 17:55, 18F

02/13 18:00, 4年前 , 19F
想另外再問一題int a=5; a= ++a + ++a; printf(a);
02/13 18:00, 19F

02/13 18:01, 4年前 , 20F
結果是14怎麼會這樣?
02/13 18:01, 20F

02/13 20:10, 4年前 , 21F
感覺要看compiler 我覺得沒人會這樣寫就是了
02/13 20:10, 21F

02/13 20:53, 4年前 , 22F
這個我先假設你要的是
02/13 20:53, 22F

02/13 20:53, 4年前 , 23F
(++a)+(++a)
02/13 20:53, 23F

02/13 20:53, 4年前 , 24F
如果不這樣打我的dev會直接不給過
02/13 20:53, 24F

02/13 20:53, 4年前 , 25F
先說我也不知道誰會這樣寫
02/13 20:53, 25F

02/13 20:53, 4年前 , 26F
不過概念應該是這樣
02/13 20:53, 26F

02/13 20:53, 4年前 , 27F
++a表示在整個東西跑之前先加
02/13 20:53, 27F

02/13 20:53, 4年前 , 28F
所以第一個++a會讓a變6
02/13 20:53, 28F

02/13 20:53, 4年前 , 29F
第二個變7
02/13 20:53, 29F

02/13 20:53, 4年前 , 30F
接著才是真正做這一行
02/13 20:53, 30F

02/13 20:53, 4年前 , 31F
a=a+a
02/13 20:53, 31F

02/13 20:53, 4年前 , 32F
也就是a=7+7
02/13 20:53, 32F

02/13 20:53, 4年前 , 33F
最後印14
02/13 20:53, 33F

02/14 09:22, 4年前 , 34F
知道了 感謝!
02/14 09:22, 34F

02/21 02:13, 4年前 , 35F
google Short-circuit evaluation
02/21 02:13, 35F
文章代碼(AID): #1UHGtcL9 (Grad-ProbAsk)
文章代碼(AID): #1UHGtcL9 (Grad-ProbAsk)