Re: [課業] 程設重點提示

看板NTUE-CS100作者 (mat)時間18年前 (2007/11/20 01:33), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串4/5 (看更多)
應要求 ch4就兩個重點 1. operator的優先順序 2. 型別轉換 名詞記一下 operator 運算子 ex. +-*/% operand 運算元 ex. 1 3 4.56 x y z 等等 1.優先順序 通常分成五個部份 由高往低 Lv1.小括號() 不管什麼鬼operator,加了括號就括號內先做 Lv2.一元運算子 ex.++ -- -(負號) !(not) 這種operator通常黏在某個變數旁邊 像-5,!a 所以照著直覺走,先做就對了。 (註. 小心i++,++放後面是例外,Lv∞) Lv3.加減乘除 這邊記得先乘除後加減,%取餘數算在乘除那一掛的。 >> << (shift順序最低) Lv4.邏輯運算 if(a>=0 && a<=9){ /*如果a在0~9之間就跑這裡zzz...*/ } 順著直覺...<>(大於小於先做) && (AND後做) 這裡記得 <>先==後 &&先 ||後 Lv5.指定 x = a/b+5^&*%(一拖拉庫計算) 用膝蓋想也知道全部計算完才要存進x,所以優先最後。 包括所有有指定效果的+= -= %= 等等....。 (中間還有一個位元運算...這個...特殊用途,有興趣的自己記XD) 2.型別運算 (1) c++運算的時候會看型別 float x=5/3; //雖然x是float,但右邊是整數運算,小數點都捨去。 //答案x=1 (2) 兩個變數型別不同->用精確度高的。 int a=5; float b=3.3; //a+b會取float精確度,答案是8.3 但如果用精確度低的變數來接結果 int c=a+b //即使a+b結果是8.3,存進c之後小數點還是會被切掉。 (3) 想要提高精確度,就強制轉型吧。 像(1)的例子 float x= (float)5/3 //這樣5/3被強制轉成float運算 //結果x=1.66667 看了一下,Ch4後面的習題還蠻機歪的,做完應該很ok了XD -- -- P_Mat <無名個人版> bbs.wretch.cc -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.68.15.109 ※ 編輯: chchwy 來自: 203.68.15.109 (11/20 01:48)

11/20 02:00, , 1F
不愧是建中哥!! 感激~~~~~~~ 台藝有希望了
11/20 02:00, 1F
※ 編輯: chchwy 來自: 203.68.15.109 (11/20 02:36)

11/21 02:44, , 2F
THK!
11/21 02:44, 2F
文章代碼(AID): #17GSZW0p (NTUE-CS100)
文章代碼(AID): #17GSZW0p (NTUE-CS100)