C_and_CPP 板


LINE

※ 引述《qwe801031 (嗯哼)》之銘言: : 我是個剛接觸c++的學生 : 老師出了個題目 是2的五次方 : 要我寫個簡單的程式碼 : 我也只會最笨的方式 : int main() : { : int b; : b=2; : printf("%d的五次方=%d",b,b*b*b*b*b); : getch(); : return 0; : } : 就是給他乘個五次 然後印出來 想請教有別的比較方便的方法嗎 : 爬了文實在看不懂 有些都沒教過不太了解 才來問 有請高手 這方法不笨呀 寫程式有很多方式 只要能達成你要的結果 都是好程式 剩下的只是最佳化或更精簡的寫法 你可以引入math.h函式 就是上面多加一行 #include <math.h> 然後把 printf("%d的五次方=%d",b,b*b*b*b*b); 改寫成 printf("%d的五次方=%d",b,(int) pow(b, 5)); pow語法是float pow(float base, float exp); base 為基底 exp 為冪數 輸入為浮點形式 輸出也是浮點 因為輸出是浮點 所以用(int)強制轉為整數 不久後你就會遇到型態轉變方面的問題 不過上課會教 就不特別講解了 補充 unsigned long i = 1; unsigned long a = 2; unsigned int n = 5; while(n) { if(n & 1) { i *= a; } a *= a; n >>= 1; } -- 如果課堂沒教過pow 也沒教過迴圈 那你寫的就算是最佳解之一 --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.119.110
1F:推 qwe801031:改掉之後出現一個錯誤耶 10/13 21:56
2F:→ qwe801031: error C2668: 'pow' : 模稜兩可的呼叫多載函式 10/13 21:56
3F:→ qwe801031:照著上面的打 請問是什麼意思@@ 10/13 21:56
4F:→ VictorTom:把pow裡的b與5之前都多加一個(float)或(double)轉型試試 10/13 21:57
5F:→ VictorTom:另外, 使用pow()之前你可能需要#include <math.h> :) 10/13 21:57
6F:→ qwe801031:#include"math.h" 這個有加了 我試試v大的方法看看@@ 10/13 21:58
7F:→ qwe801031:兩個都可以使用 真神奇 謝謝XD 10/13 21:59
※ 編輯: kikiqqp 來自: 122.116.119.110 (10/13 22:06)
8F:推 VictorTom:解釋一下:) pow有float/double/long double三種型態參數 10/13 22:09
9F:→ VictorTom:的overloading, 而你呼叫的時候是傳了兩個int, 所以 10/13 22:09
10F:→ VictorTom:compiler不知道要幫你轉型成上面三種浮點數的哪一種型態 10/13 22:10
11F:→ VictorTom:, 這與函數重載, 強制轉型, 隱式轉型這些東西都有關, 現 10/13 22:10
12F:→ VictorTom:在你可能還沒學到, 如果有興趣有時間你可以先就板上或精 10/13 22:10
13F:→ kikiqqp:不過我寫完有試一下 編譯器不同吧 GCC沒報錯 10/13 22:11
14F:→ VictorTom:華區研究一下; 再不然就像k大說的, 以後再慢慢學吧:) 10/13 22:11
15F:→ VictorTom:用g++應該就會報錯了吧?? 我印象中好像是這樣XD 10/13 22:12
16F:→ qwe801031:不知道耶 我用Visual C++ 2008 Express的 10/13 22:14
17F:推 karta031736:通常初學者,老師都會要學生有邏輯思考的能力 10/15 01:52
18F:→ karta031736:所以比較不建議用內建的函式吧@@ 我老師跟我說過... 10/15 01:53
※ 編輯: kikiqqp (49.158.70.171), 04/13/2018 11:40:04







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:iOS站內搜尋

TOP