Re: [問題] 新手問一個巢狀if else if的問題
看板C_and_CPP (C/C++)作者LPH66 ((short)(-15074))時間16年前 (2009/03/05 03:24)推噓1(1推 0噓 0→)留言1則, 1人參與討論串2/2 (看更多)
※ 引述《SUPERSUGO (sugo)》之銘言:
: 最近在分析一個物理問題,需要用到很多條件判斷
: 所以想用巢狀if else if來分析
: 寫一下我的想法
: if(判斷條件一) {
: 通過第一個if之後接下來是我想問的
: 如果我有四個判斷條件,若是滿足其中一個再進入到下一個if判斷條件
: 要怎麼寫好呢? 我之前是這樣寫
: if( ( ( (判斷條件二) || (判斷條件三) ) || (判斷條件四) ) || (判斷條件五) ){
: 這樣寫有錯嗎??只是這樣寫都會寫很長,我想改成用四行if else if寫
: if(判斷條件二){
: }
: esle if(判斷條件三){
: }
: esle if(判斷條件四){
: }
: esle if(判斷條件五){
: 滿足上面四個其中一個 再進到下一個if
: if{
: .
: .
: .
: 這樣有錯嗎?! 用C++一陣子,覺得語法問題錯還比較好解決,在編譯時就會知道有問題
: 偏偏編譯時沒出錯,只是結果常跟想的不一樣
: 不然就是就是得到結果很怪,不知道對不對
: 就會開始懷疑是程式寫錯還是結果真的這麼怪 囧
第一個沒什麼問題
第二個的話你需要把內層的 if 寫好幾次 不推薦
基本上C語言在這方面還滿鬆的
|| 可以長連 (就是你可以寫 A || B || C || D ) 加上一條式子不一定要寫在一行內
所以那個大if你可以寫成
if ( (條件二) ||
(條件三) ||
(條件四) ||
(條件五) )
{
//裡面的條件
}
這樣既清楚又容易檢查有沒有問題
善用換行和排版就可以讓code寫起來方便讀也方便
--
'Oh, Harry, dont't you see?' Hermione breathed. 'If she could have done
one thing to make absolutely sure that every single person in this school
will read your interview, it was banning it!'
---'Harry Potter and the order of the phoenix', P513
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.84
推
03/05 03:30, , 1F
03/05 03:30, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章