Re: [考題] C語言
※ 引述《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
12/09 17:15, 1F
※ 編輯: a33445500 來自: 1.160.229.144 (12/09 18:14)
→
12/09 18:15, , 2F
12/09 18:15, 2F
討論串 (同標題文章)