Untitled
unknown
c_cpp
a year ago
1.5 kB
7
Indexable
#include <stdio.h>
int main() {
int year, month1, day1, hour1, minute1, month2, day2, hour2, minute2;
int days_in_month1, days_in_month2, leap_year = 0;
int days_in_months[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // 每月天數
int total_minutes1 = 0, total_minutes2 = 0, total_days = 0, minute_difference = 0;
// 讀取輸入
scanf("%d-%d-%d %d:%d", &year, &month1, &day1, &hour1, &minute1);
scanf("%d-%d-%d %d:%d", &year, &month2, &day2, &hour2, &minute2);
// 判斷是否為閏年
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
leap_year = 1;
} else {
leap_year = 0;
}
// 如果是閏年,2月改為29天
if (leap_year) {
days_in_months[1] = 29;
}
// 計算從年初到第一個日期的總分鐘數
for (int i = 0; i < month1 - 1; i++) {
total_minutes1 += days_in_months[i] * 24 * 60;
}
total_minutes1 += (day1 - 1) * 24 * 60;
total_minutes1 += hour1 * 60 + minute1;
// 計算從年初到第二個日期的總分鐘數
for (int i = 0; i < month2 - 1; i++) {
total_minutes2 += days_in_months[i] * 24 * 60;
}
total_minutes2 += (day2 - 1) * 24 * 60;
total_minutes2 += hour2 * 60 + minute2;
// 計算兩個日期之間的分鐘差
minute_difference = total_minutes2 - total_minutes1;
// 輸出結果
printf("%d\n", minute_difference);
return 0;
}
Editor is loading...
Leave a Comment