作者yantchen (球童Yanting)
看板NTUE-CS101
標題[課業] C++
時間Mon Nov 10 00:31:29 2008
別說助教沒照顧你門啊
問了一下兩屆的題目
他大概會考
1. 選擇
前面第一章第二章習題的選擇題看一下吧
2. 程式改錯
給你一段程式 少個分號 ; 括號 { } 呀 單引號 '' 雙引號 "" 用錯啦
前面沒有using namespace std;的時候 下面要用 std::cin / std::cout
3. 程式結果
給你一段程式 把 cout 的結果寫出來
( 要注意 \n 跟 endl )
4. 寫一段小程式
別緊張 他真的是小程式
我門當時考的是 輸入半徑 算圓面積
因為才教到 if 所以能寫的程式不多
找錢、算面積、畢氏定理
接下來我整理一些各章節會讀漏掉他又會考的題目
C++簡介
Q: cpp原始檔 要經過什麼步驟才會轉成 可執行的exe檔?
大家都會說 compile編譯
然後我說錯的話 很多人會說 要先存檔
( 要存檔沒錯 不過這不是重點 XD )
請看課本p1-12的圖
他兩次都考這個圖
cpp原始檔 先經過編譯(compile)出目的檔obj 再
連結(link)產生 exe可執行檔
變數
Q: 請寫出下面程式碼顯示在螢幕上的結果
float a = 3/2;
cout << a;
寫 1.5 的要注意囉
在電腦裡面 計算除法的時候
除號兩邊兩個人
至少要有一個人是浮點數 結果才會是浮點數
所以
cout << 3/2 ; ← 這裡 3 跟 2 都是 整數 計算出來的結果也會是整數 答案是 1
下面雖然用拿浮點數float去存結果 不過
float a = 3/2; ← 3/2的結果是整數 1 , 所以 a 裡面存到的是 1 不是 1.5
cout << a; ← 程式顯示 1
那
要 1.5 的話 要怎麼做勒
請看上面的紅字
隨便給一個人.0就好囉
cout << 3.0/2 ; 或是 cout << 3/2.0; 或是 cout << 3.0/2.0; 的結果都是 1.5 喔
或者你也可以加上(float) 例如 cout << (float)3/2
最後看
float a=3;
cout << a/2;
答案也是 1.5 喔 清楚了嗎
運算子和運算式
課本p4-26 27兩頁的順序要記
記得簡單的原則
1.放在前面的一元( 負號 - 、 not ! 等)最優先
2.先乘除後加減(注意取餘數% 跟乘除同等級喔)
3.位移(<<、>>)
4.比較(>、>=、<、<=、==、!=)
5.位元(and & 、 xor ^ 、 or |)
6.邏輯(and && 、 or || )
5跟6的差別在於
5會算出一個數字 6的結果不是true就是false
例如 a=10(1010) b=6(0110) , a&b=2(0010) ; a|b=14(1110)
a>b&&a>10=false ; a>b||a>10=true
清楚了嗎?
Q: 請寫出下面程式碼顯示在螢幕上的結果
int i=10,j=5;
cout<<i*j-++i;
cout<<i;
答案是 3911 喔 ( 沒有 endl 所以不換行 )
程式碼由左往右讀
i*j-++i; ( i=10,j=5 )
10*5-++i; ( i=10,j=5 )
50-++i; ( i=10,j=5 )
50-i; ( i=11, j=5 )
39; ( i=11, j=5 )
我整理出來的重點大概是這樣
有什麼問題看到我在線上都可以敲我
大家考試加油囉~!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.68.15.209
推 jerry771210:學長有沒有JAVA跟資料結構的考古題分享 11/10 00:34
推 daniel114:彥廷真用心 11/10 00:37
※ 編輯: yantchen 來自: 203.68.15.209 (11/10 00:49)
推 nash3629:大二也順便照顧一下好不好 11/10 00:52
推 feather427:耶嘿 學長超棒的也:D 謝謝!! 11/10 01:23
推 einstein1217:大二也要 11/10 01:56
推 ice1024:突然覺得我的程設出現一絲曙光 11/10 08:36
推 rockmyangel:v學長一級棒v 11/10 13:03
推 StranGhost:推學長用心~謝謝! 11/10 18:54
推 aklewis1128:感謝學長~推 11/10 19:47
推 ledacase:感謝學長!! 推~~~ 11/10 19:52
推 tommyccc2007:來照顧100級吧(揮手) 11/10 19:58
推 jonas518:雖然算出來是3911..可是程式跑出來是4411= =怪怪的 11/10 20:23
推 linjrming:我的是跑出3911沒錯 11/10 20:57
推 WAYS22275:學弟有看要推阿 助教可不是做白工的 11/10 23:16
推 silufy:謝謝學長!!!!:) 11/10 23:17
推 cindy1006:謝謝學長!!! 11/10 23:44
推 brightevil:謝謝學長~ 11/10 23:45
推 Gary2005123:學長謝謝你拉,但我考完才看到= = 11/12 22:48
→ rockmyangel:謝謝學長 我考得還不錯喔 11/18 15:58