9-1 時間換算
阿新 • • 發佈:2018-12-01
// 時間換算 #include <stdio.h> struct Time { int hour; int minute; int second; }; void CalTime(struct Time *p, int n); int main(void) { int n; // n秒後 struct Time t; printf("請輸入時: "); scanf("%d",&t.hour); printf("請輸入分: "); scanf("%d",&t.minute); printf("請輸入秒: "); scanf("%d",&t.second); printf("當前時間: %d:%d:%d\n",t.hour,t.minute,t.second); printf("請輸入秒數: "); scanf("%d",&n); CalTime(&t,n); printf("過%d秒後時間為: ",n); printf("%d:%d:%d\n",t.hour,t.minute,t.second); return 0; } void CalTime(struct Time *p, int n) { int ds, dm, dh; // 秒分時的增量 dh = n/3600; dm = (n-dh*3600)/60; ds = n-dh*3600-dm*60; p->hour += dh; p->minute += dm; p->second += ds; if (p->second>=60) { p->second %= 60; p->minute += 1; } if (p->minute>=60) { p->minute %= 60; p->hour += 1; } // 超過24點就從0點開始計時 if (p->hour>=24) { p->hour %= 24; } }