第 3 章 表達(dá)式
問題列表:
3.1 為什么這樣的代碼: a[i] = i++; 不能工作?
3.2 使用我的編譯器,下面的代碼int i=7; printf("%d\n", i++ * i++); 返回49?不管按什么順序計算, 難道不該打印出56嗎?
3.3 對于代碼int i = 3; i = i++; 不同編譯器給出不同的結(jié)果, 有的為3, 有的為4, 哪個是正確的?
3.4 這是個巧妙的表達(dá)式: a.=b.=a.=b 它不需要臨時變量就可以交換a 和b 的值。
3.5 我可否用括號來強(qiáng)制執(zhí)行我所需要的計算順序?
3.6 可是&& 和|| 運算符呢?
3.7 我怎樣才能理解復(fù)雜表達(dá)式?“序列點” 是什么?
3.8 那么, 對于a[i] = i++; 我們不知道a[] 的哪一個分量會被改寫,但i的確會增加1, 對嗎?
3.9 ++i 和i++ 有什么區(qū)別?
3.10 如果我不使用表達(dá)式的值, 我應(yīng)該用++i 或i++ 來自增一個變量嗎?
3.11 為什么如下的代碼int a = 100, b = 100; long int c = a * b; 不能工作?
3.12 我需要根據(jù)條件把一個復(fù)雜的表達(dá)式賦值給兩個變量中的一個。
相關(guān)推薦:
2010年9月計算機(jī)等級考試成績查詢時間匯總
2011年計算機(jī)等級考試二級C語言基礎(chǔ)教程匯總