Re: [考題] C語言

看板Examination作者 (能登かわいいよ能登)時間13年前 (2012/12/09 14:25), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串3/3 (看更多)
※ 引述《jojonina (努力)》之銘言: : 98身心障礙 : 求以下執行結果 : int i, j=2; : i=(j=3) && 1 ; 判斷i是否等於true前 先注意C語言中的運算順序 寫成這樣 i=((j=3) && 1 ) 或許比較可以看出他在語言中運算的順序 由左至右 括號先運算 (j = 3) 不同於(j > 3)或( j < 3)這類的邏輯判斷 前面推文也有人說了 非0就是true 所以經過上面的運算後會變成 i = ( 1 && 1) 即是true 以下類推 : printf("%d %d \ n" , i, j); 1 3 : i=-1 || (j=5); : printf ("%d %d \n", i, j); 1 3 : i=0 || (j=5); : printf("%d %d\n", i , j); 1 5 : 這題 該如何下手呢?? 我知先用 邏輯運算子 判斷 true 或 false 的確是先用邏輯運算判斷true或false 判斷結果true的話電腦會回1;false會回0 這三題i值判斷都是true 所以都是1 j值都已經給了:第一題j=3 ; 第二題||運算 前一篇推文提到 (-1)已為true 不再看後方判斷 ; 第三題 j=5 : 然後 呢?? : 請高手 指點 非常謝謝 對C語言還有問題的話可以去C語言板,高手眾多 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.160.229.144

12/09 17:15, , 1F
剛去翻高X的講義,解答為:1 3, 1 3, 1 5
12/09 17:15, 1F
※ 編輯: a33445500 來自: 1.160.229.144 (12/09 18:14)

12/09 18:15, , 2F
已修正 感謝提醒
12/09 18:15, 2F
文章代碼(AID): #1Gn2xR-J (Examination)
討論串 (同標題文章)
文章代碼(AID): #1Gn2xR-J (Examination)