※ 引述《fireex1988 (怒怒)》之銘言:
: 想請問一下這一題的題目解法:
: 輸入秒數之後,將其轉換成幾小時,幾分鐘及幾秒的輸出?
: 我寫出來了一半
: #include
: #define MIN 60
: int main(void)
: {
: int second;
: printf("請輸入秒數:");
: scanf("%d",&second);
: printf("%d hour(s) and %d minute(s) and %d second(s)",
: second/MIN,second%MIN);
: return 0;
: }
我直接用我的看法回一篇好了
最直接的問題︰
你要3個輸出就要用到3個運算式
不然在編譯的時候就會發生問題了
(這邊我不確定,因為平常在寫時會注意有沒有漏)
你沒有算到hour……
hour = second/(MIN*MIN)
你printf的minute部份我想應該是要0≦min<60
而你上面的second/MIN會算到 > 60
如果要讓minute的部份在0~60之間的話
可以將整個式子先用括號括起來
然後再mod60讓值落在0~60之間
minute = (second/MIN)%MIN
至於second的部份,你的second%MIN是OK的
你缺少的不是後面而是前面……
以上
: 老師提示:3個控制輸出字元,只有對應到2個運算式
: 所以我秒數算出來都很奇怪
: 請問一下 在這一列second/MIN,second%MIN);
: 後面要在加上什麼樣的運算式才可以算的出來
: 謝謝