1. 程式人生 > >10月19日每日總結(補)+(一丟丟)字元數值概念

10月19日每日總結(補)+(一丟丟)字元數值概念

昨天好不容易把朗誦啥的事都搞完了,放鬆一下,有點過頭,所以20號補一下昨天的總結

課本習題2:
1.已定義a為字元型變數,則下列語句中正確的是______
A.a=‘97’ B.a=“97” C.a=97 D.a=“a”
好不容易老師叫我一次,呵呵,我一開始選的A,沒想就去下一題了,丟人丟大了。。。
注意: ‘ ’ 裡只能放一個數或字元!!!所以A超出了字元型別的範圍;B、D都是字串型別,我查了下沒太搞懂,等回頭把這裡給補上;最後,字元型變數也可以用十進位制數賦值,不過最後會轉化成ASCII碼裡相對應的字元罷了。選C



4題裡有個 b=a&&(-1)
又是之前的問題,我做出來的題又忘了,重新總結!
重點

有邏輯運算子的表示式運算結果只有真/假 即 1/0。

5.以下語句中,非法的賦值語句是______
A.n=(i=2,++i) B.j++ C.++(i+1) D.x=j>0
總結:A 在賦值語句中用 “ ,” 並列的表示式,最後會賦以最後一個 “ ,” 後的表示式的值;C 中(i+1)是表示式而非變數,而自增++適用於變數而非表示式(我理解的是自增++其實是一個賦值表示式,就像i++等同於i=i+1,所以(i+1)=(i+1)+1的賦值表示式不符合編譯規範,故錯誤);D中有賦值和比較運算子,注意在所有運算子中,賦值運算子優先順序最低,所以先比較j和0的大小,判斷真假最後給x賦 1或0。 選C



懶得打題了:(嘿嘿)

記住在輸出時如果用%o(八進位制)和%x(十六進位制)時不會輸出字首就對了!

定義 “ int n1=n2=10; ” 表達錯誤,此時n1=10但n2未定義
同理“ double c=d=1; ”此時d未定義

記住現實中數學的字元例如 “π” ,在計算機中可能沒有這種字元,不能直接使用,不識別

最後,‘\x’ 等同於ASCII碼中數值為x的字元(x為某整數)
且 ‘0’=48,記住就好