計算火車執行時間(當日)
阿新 • • 發佈:2022-04-19
自己寫的程式碼
思路:將開始和結束時間先轉成統一的分鐘,然後進行整除、取模。
1 #include <stdio.h> 2 int main(void) 3 { 4 int begin, end, sum1, sum2; 5 int hour1, min1, hour2, min2, hour, min; 6 scanf("%d %d", &begin, &end); 7 8 hour1 = (begin / 100) * 60; /*時轉換成分鐘*/ 9 min1 = begin % 100; 10sum1 = hour1 + min1; 11 hour2 = (end / 100) * 60; 12 min2 = end % 100; 13 sum2 = hour2 + min2; 14 15 hour = (sum2 - sum1) / 60; 16 min = (sum2 - sum1) % 60; 17 18 printf("%02d:%02d", hour, min); /* 輸出時需兩位,不足補零 */ 19 20 return 0; 21 }
參考:簡化
#include <stdio.h> int main(void) { int hh, mm; int a1, a2; scanf("%d %d", &a1, &a2); hh = a2/100 - a1/100; /*小時*/ mm = a2%100 - a1%100; /*分鐘*/ if ( mm<0 ){ mm+=60; hh--; } printf("%02d:%02d", hh, mm); return 0; }