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