1樓:妖搦天
首先,這種題要知道答案很簡單,自己把題目放到編譯軟體上執行一下就行,然後可以通過結果反推過程。
這道題我編譯出來結果是2,以下是我的邏輯:
首先,要知道else配對的是哪個if,這個配對方法很簡單,由於沒加括號,直接往上行找離它最近的沒配對的if就行。本題與else配對的是第二個if;
其次,由於沒有加括號,第一個if只能控制下一行的語句,即第二個if;第一個if無效,所以程式判定下一行的第二個if無效,而再往下一行的語句又受第二個if控制,所以它受到連鎖反應,間接被無效了。下面的else與第二個if配對,第二個if無效就是else配對物件無效,else自然就跟著無效了。那麼c=2就沒有受到任何改變,原樣輸出。
這道題,雖然沒有加括號括住下面的內容,但是最後因為if的性質,產生了連環無效,實際上與加了括號的效果一樣
這裡引起迷惑的應該是與else配對的if被無效後,else的反應;尤其是本題有兩個if,會讓人想到配對了的if無效後,else還可能直接與另一個if形成配對關係。但是由實際編譯的結果可知,else是從一而終的,它最開始配對的if無效,它也會直接跟著無效,不會與其他else配對。
2樓:百i度網友
程式中初始化a等於2,b等於-1,c等於2,因此第一個if語句的判斷條件(a
只有在條件判斷語句if的條件表示式為「真」的時候,程式才會執行if語句內的操作。
3樓:匿名使用者
a = 2 b = -1
所以a
第一個if判斷就是為真,繼續下一層的if(b<0),但是實際上為假,直接到else了
設有語句int a 3,執行語句a a a a後,變數a的值是多少啊
墨汁諾 從右往左左運算,a a 36,執行語句a a 36,得到值 30,然後執行語句a a 30,得到值 60。賦值語句,從右到左依次執行 int a 3 a a a a 相當於 a a a a a 然後相當於 a a a a a a a 由於a初始化為3 a a a a 3 3 3 6 a a ...
勞動仲裁後單位不執行怎麼申請強制執行
先生軒 勞動者可以攜帶生效的裁決書,用人單位的註冊資訊,組織機構 強制執行書向當地的人民法院申請強制執行。1 只有法院執行庭有強制執行的權力,仲裁裁決書或法院判決書生效後,可以向法院執行庭申請強制執行 2 執行費用,對方承擔 個別地區要求申請人先墊付執行費,執行後再返還給你 3 可以查封對方的銀行賬...
魔獸世界執行不起來,為什麼我的魔獸世界執行不了
按下面一步步做,第一步不行,換第二步,以此類推。肯定有一步能解決。1把遊戲全刪乾淨,重灌遊戲 2重新安裝系統 3換根新點的,好點的記憶體條 問題多數集中在這 4如果還是不行,買臺新機器吧 有可能就是計算機硬體配置不合適,或者是你的記憶體,視訊記憶體,主辦有問題。把外掛刪除試試,如果還不行試試暴雪修復...