[請益]啥?這種變形條件式~誰來救我???

看板Soft_Job (軟體人)作者 (☆癡心處男乖寶寶☆)時間14年前 (2011/10/30 15:02), 編輯推噓16(16041)
留言57則, 30人參與, 最新討論串1/1
請問下列程式: int i=3,j=5; (1) if(i=2||j=4){ printf(%d,i); printf(%d,j); <--output: i=2, j=5 } (2) if(i==2||j==4){ printf(%d,i); printf(%d,j); <--output: 條件不成立,不印出訊息 } (3)if(i==2||j=4){ printf(%d,i); printf(%d,j); <--output: i=3, j=4 } (4)if(i=2 && j=4){ printf(%d,i); printf(%d,j); <--output: i=2, j=4 } (5)if(i==2 && j==4){ printf(%d,i); printf(%d,j); <--output: 條件不成立,不印出訊息 } ================================================================ #各位強者大大~上述5小題,我只能了解(2)和(5)~ 但是(1)(3)(4)這幾題~用指定運算子或指定與關係運算子混用的條件式, 我就搞不懂他的邏輯是啥~為何會output出那種結果.... 麻煩大大賜教解惑...謝謝喔咪! [PS.好怪!條件式不是應該由關係運算子構成嗎??怎麼有指定運算子這種的咧??] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ※ 編輯: superman999 來自: 118.171.32.136 (10/30 15:03)

10/30 15:08, , 1F
有assignment 的是用 assign 完之後的值是 0 或非0判斷
10/30 15:08, 1F

10/30 15:08, , 2F
不過基本上除非有特別理由,正常在寫不建議這樣寫。
10/30 15:08, 2F

10/30 15:10, , 3F
i=n,n給值後,n非0則true. ||前面成立就直接進入if
10/30 15:10, 3F

10/30 15:14, , 4F
所以題(3)若改成if(i==3||j=4),輸出會是i=3,j=5 ???
10/30 15:14, 4F

10/30 15:17, , 5F
嗯,||前面成立,後面的運算式就不會處理,是種陷阱題
10/30 15:17, 5F

10/30 15:29, , 6F
我覺得c/c++板說明的已經很清楚了 @_@
10/30 15:29, 6F

10/30 15:51, , 7F
C++板大家都願意教你,結果你就這樣轉過來
10/30 15:51, 7F

10/30 15:51, , 8F
感覺還真像是被耍了呢。
10/30 15:51, 8F

10/30 15:54, , 9F
感覺像是不會寫程式的人,想去考資訊類的公職
10/30 15:54, 9F

10/30 16:22, , 10F
這判斷式編譯怎會過的@@
10/30 16:22, 10F

10/30 16:23, , 11F
噓專板專用
10/30 16:23, 11F

10/30 16:25, , 12F
會過啊,只是正常不會這樣寫,所以判斷式常數最好在左邊
10/30 16:25, 12F

10/30 16:32, , 13F
阿 我知道了 他少了()
10/30 16:32, 13F

10/30 16:39, , 14F
j大在氣什麼?因為我仍不太懂~想廣納高見激勵腦腺增長~
10/30 16:39, 14F

10/30 16:41, , 15F
真有趣的問題,雖然自己不可能這樣寫,但也多了小知識
10/30 16:41, 15F

10/30 16:42, , 16F
分享給其他大大動動腦;怎麼這樣就罵我耍你??不懂&=.=&
10/30 16:42, 16F

10/30 16:42, , 17F
在C/C++版的推文已經回答很清楚了 只能說妳根本不懂C
10/30 16:42, 17F

10/30 16:45, , 18F
我不懂的是~"n非0則true. ||前面成立就直接進入if"~
10/30 16:45, 18F

10/30 16:46, , 19F
這個怪現象是純粹適用條件式為指定運算子構成者~
10/30 16:46, 19F

10/30 16:47, , 20F
還是即使條件式是關係運算子者亦適用??
10/30 16:47, 20F

10/30 16:55, , 21F
這不叫怪現象叫你書讀不夠熟...
10/30 16:55, 21F

10/30 16:57, , 22F
多看點書多寫點程式可以嗎? 這應該是很基本的東西..
10/30 16:57, 22F

10/30 16:57, , 23F
o(><;)o o o(><;)o o o(><;)o o
10/30 16:57, 23F

10/30 17:26, , 24F
還好~算是基本題的變形 也算有陷阱
10/30 17:26, 24F

10/30 18:03, , 25F
這不是某些公司面試的考題嗎???
10/30 18:03, 25F

10/30 18:08, , 26F
反正題目少了()就錯很大了 此題送分
10/30 18:08, 26F

10/30 18:08, , 27F
這學校101就會了吧 公司要考這種? 哪間?
10/30 18:08, 27F

10/30 18:13, , 28F
去過不少公司面試會考這種,只是考這種真的很無聊,測不出程度
10/30 18:13, 28F

10/30 18:14, , 29F
但是至少可以先刷掉完全不會寫程式的人,不過要刷這種人也不需
10/30 18:14, 29F

10/30 18:14, , 30F
要這種題目....
10/30 18:14, 30F

10/30 18:16, , 31F
最近還很流行考1+2+..+100不可以用for, while, 十行內KO ...
10/30 18:16, 31F

10/30 18:18, , 32F
那樣是考背公式嗎?
10/30 18:18, 32F

10/30 21:10, , 33F
說真的,還滿多大公司愛考這種題目
10/30 21:10, 33F

10/30 21:26, , 34F
C++的定義是非0為T 0為F ; ||為OR運算子 有個T結果就只能是T
10/30 21:26, 34F

10/30 22:23, , 35F
latw大 那遞迴可以嗎?
10/30 22:23, 35F

10/30 22:40, , 36F
請問latw不用遞迴是數學算式對吧?@@
10/30 22:40, 36F

10/30 22:45, , 37F
這種題目連國考跟大企業都不屑考阿 到底哪間有考?
10/30 22:45, 37F

10/30 22:48, , 38F
上底加下底乘高除以2?
10/30 22:48, 38F

10/30 22:53, , 39F
我想的太簡單了 = =
10/30 22:53, 39F

10/30 23:10, , 40F
cout<<5050; 有誰可以比我快...
10/30 23:10, 40F

10/30 23:10, , 41F
@latw
10/30 23:10, 41F

10/30 23:14, , 42F
如果是1+到10000呢?
10/30 23:14, 42F

10/30 23:18, , 43F
觀念題...我相信你翻一翻螞蟻書會有收穫
10/30 23:18, 43F

10/31 00:00, , 44F
正常來說,沒幾個人會去哪樣子寫程式法, 會這樣寫的
10/31 00:00, 44F

10/31 00:00, , 45F
還故意弄出正確結果來的人, 可以直接fire掉.
10/31 00:00, 45F

10/31 00:01, , 46F
程式是寫來給人看的,不是寫來玩的,要玩什麼無聊的語法
10/31 00:01, 46F

10/31 00:02, , 47F
問題, 回去查書即可.
10/31 00:02, 47F

10/31 00:10, , 48F
寫程式, 是為了解決問題, 不是製造問題.
10/31 00:10, 48F

10/31 09:06, , 49F
正常人一看也知道這是測驗題吧 別coding到連基本思考都無
10/31 09:06, 49F

10/31 12:00, , 50F
這種題目有意義嗎?還要考慮compile行為才能得出答案耶
10/31 12:00, 50F

10/31 12:17, , 51F
我倒是常寫 if (ret = foo()) 這種程式碼...會被fire嗎
10/31 12:17, 51F

10/31 12:18, , 52F
會出這種考題的公司,我才不屑面試. :P
10/31 12:18, 52F

10/31 12:19, , 53F
糟蹋郎喔?
10/31 12:19, 53F

10/31 17:44, , 54F
我是去被考的人 我也不知道他要考啥 我丟完公式就繳卷啦XD
10/31 17:44, 54F

10/31 22:18, , 55F
期中考到了。
10/31 22:18, 55F

11/02 12:02, , 56F
這不用期中考吧= =只有第一次小考的水準...超基礎...
11/02 12:02, 56F

11/02 16:02, , 57F
這原PO...不是某版的名人嗎?
11/02 16:02, 57F
文章代碼(AID): #1EhFQKNx (Soft_Job)
文章代碼(AID): #1EhFQKNx (Soft_Job)