[問題] 請問這樣的寫法是一樣的意思嗎?

看板C_and_CPP (C/C++)作者 (幽默)時間15年前 (2011/03/03 14:07), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
我是剛開始學c的新手,附近也沒人可以問 所以想來問問看大家 下面的兩段程式雖然寫法不同,但是它應該是要達到一樣的目標 我的目標是 x=1 & y=1 則ref下降 x=0 & y=0 則ref下降 x=1 & y=0 則ref上升 x=0 & y=1 則ref上升 (x跟y只會有0跟1的值) 第一段程式如下: if(x == 1) { if(y == 1) { ref = ref - 1; } else { ref = ref + 1; } } else { if(y == 1) { ref = ref + 1; } else { ref = ref - 1; } } 第二段程式如下: if(x == y) { ref = ref - 1; } else if(x != y) { ref = ref + 1; } 總覺得這是一樣的東西 不過我實際測試之後發現結果不一樣 所以想請問大家這兩種寫法他邏輯是不是真的不一樣 哪裡我沒考慮到的地方 如果一樣的話那就是我測試的方法有問題了 謝謝大家QwQ 阿還有 雖然x跟y只有1跟0 但是這兩個變數我是用int定義的 這樣會有差嗎? 還是有更好的定義呢? 謝謝XD --  我抬頭看到一位老奶奶慈祥的臉。我抓住她的手…                         …但他竟然一腳踢到我的牙齒! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.20.119

03/03 14:08, , 1F
你可以說說你的x與y各多少的時候,結果會不一樣嗎?
03/03 14:08, 1F

03/04 03:49, , 2F
看起來是一樣的, 除非你x與y有0與1以外的case吧@_@"
03/04 03:49, 2F
文章代碼(AID): #1DRp08pi (C_and_CPP)
文章代碼(AID): #1DRp08pi (C_and_CPP)