PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
C_and_CPP
Re: [問題] C的經典計算機題目
作者:
povertytrap
(povertytrap)
2016-03-15 17:58:03
各位前輩以下是我的流程圖跟程式碼
http://ideone.com/rjbx8a 詳細註解
想請問我的程式碼邏輯是否不對? 可以編譯可是執行卻會卡住
我是以兩個陣列兩個堆疊去放運算子跟運算元也邊放邊算
也感謝上篇兩位大大提供的兩種code、巴哈那篇我看不太懂、javascript判斷那我有參考
因為我覺得還是照自己的寫法比較有感覺,所以在貼上來詢問我是哪邊不對
請各位前輩指點一下
作者:
Caesar08
(Caesar)
2016-03-15 21:57:00
給你的努力一個推
作者: yvb
2016-03-16 01:25:00
好幾個 i+1; (Line 50, 68...) 的意思是...?
作者:
povertytrap
(povertytrap)
2016-03-16 01:58:00
i是用來掃str位置的,i+1就是前進下一位置
作者: suwako
2016-03-16 07:47:00
那應該是要寫i++或++i吧 寫i+1沒有任何作用阿你push是輸入char 後面的計算會沒辦法算然後你與其畫流程圖 不如在程式碼裡面加註解 我看好久才看懂你在寫什麼
作者:
povertytrap
(povertytrap)
2016-03-16 13:05:00
請問一下,i+1不就是i++嗎?push丟字元沒錯啊?push放運算元字元pop再將字元轉成數字丟出ans=pop值去做計算我改成i++後可執行玩到結果卻答案不對@@我如果要用i+1是否應該寫i=i+1,我忘了在哪看過i+1寫法我有放詳細註解了
作者: suwako
2016-03-16 13:38:00
i+=1; ans=pop()*pop()的部份 ans會是計算後的"數值"既然push要丟字元 你後面放push(ans)怎麼會對呢?然後你的註解沒有解釋到運行的細節 像是pop()就完全沒解釋另外 我建議不要直接對字元做運算 你可以用strtol將字元轉換成數字 這樣也同時可以解決超過1個位數的問題
作者:
Caesar08
(Caesar)
2016-03-16 14:10:00
i+1與i++不一樣。++i, i++, i=i+1, i+=1這些要搞清楚
作者:
povertytrap
(povertytrap)
2016-03-16 14:18:00
謝謝suwako完全了解了,我在修看看Caesar08大++i, i++我知道差別,i+=1我記得就是i=i+1不是嗎?
作者:
Caesar08
(Caesar)
2016-03-16 14:52:00
是的。所以通常i+=1與i=i+1都會寫成++i
繼續閱讀
[問題] 讀出檔案 fread
EngRookie
[問題] c語言 轉16進位 用%餘數
Neverfor
[問題] 如何include一個class
dedicationsh
[分享] C++17將有Parallelism Algorithm
Caesar08
[問題] 初學者要寫C++ GUI
jediko
[問題] 將OpenCL code轉為單一C function
kylan
[問題] 在 Windows user mode 讀寫硬體?
ptta
[問題] C的經典計算機題目
povertytrap
Re: [問題] 如何持續讀取文字檔內容
freaky
[問題] 如何持續讀取文字檔內容
Metals
Links
booklink
Contact Us: admin [ a t ] ucptt.com