10月19日每日總結(補)
昨天好不容易把朗誦啥的事都搞完了,放鬆一下,有點過頭,所以20號補一下昨天的總結
課本習題2: 1.已定義a為字元型變數,則下列語句中正確的是______ A.a=‘97’ B.a=“97” C.a=97 D.a=“a” 好不容易老師叫我一次,呵呵,我一開始選的A,沒想就去下一題了,丟人丟大了。。。 注意: ‘ ’ 裡只能放一個數或字元!!!所以A超出了字元型別的範圍;B、D都是字串型別,我查了下沒太搞懂,等回頭把這裡給補上;最後,字元型變數也可以用十進位制數賦值,不過最後會轉化成ASCII碼裡相對應的字元罷了。
4題裡有個 b=a&&(-1) 又是之前的問題,我做出來的題又忘了,重新總結! **重點:**有邏輯運算子的賦值表示式只有真/假 即 1/0。
5.以下語句中,非法的賦值語句是______ A.n=(i=2,++i) B.j++ C.++(i+1) D.x=j>0 **總結:**在賦值語句中用“,”並列的表示式,最後會賦以最後一個“,”後的表示式的值;C中(i+1)是表示式而非變數,而自增++適用於變數而非表示式(我理解的是自增++其實是一個賦值表示式,就像i++等同於i=i+1,所以(i+1)=(i+1)+1的賦值表示式不符合編譯規範,故錯誤);D中有賦值和比較運算子,注意在所有運算子中,賦值運算子優先順序最低,所以先比較j和0的大小,判斷真假最後給x賦1/0。
懶得打題了:(嘿嘿)
記住在輸出時如果用%o八進位制%x十六進位制時不會輸出字首就對了!
定義 “ int n1=n2=10; ” 表達錯誤,此時n1=10但n2未定義 同理“ double c=d=1; ”此時d未定義
記住現實中數學的字元例如 “π” ,在計算機中可能沒有這種字元,不能直接使用,不識別
最後,‘\x’ 等同於ASCII碼中值為x的字元(x為某整數) 且 ‘0’=48,記住就好