亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

c語言求天數的方法是什么

小億
118
2024-03-27 09:23:37
欄目: 編程語言

計算一個日期距離另一個日期的天數,可以按照以下步驟進行:

  1. 定義一個結構體表示日期,包括年、月、日等字段。
  2. 編寫一個函數計算某個日期距離另一個日期的天數,可以按照以下步驟進行:
    • 判斷日期1和日期2哪個日期較前,如果日期1較前,則交換日期1和日期2。
    • 計算日期1到日期2之間的年數、月數和日數,并根據月份天數進行計算。
    • 根據年數、月數和日數計算總天數。
  3. 在主函數中調用該函數,傳入兩個日期結構體,得到結果并輸出。

以下是一個示例代碼:

#include <stdio.h>

struct Date {
    int year;
    int month;
    int day;
};

int isLeapYear(int year) {
    return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}

int daysOfMonth(int year, int month) {
    int days[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    if (month == 2 && isLeapYear(year)) {
        return 29;
    } else {
        return days[month];
    }
}

int daysBetween(struct Date date1, struct Date date2) {
    if (date1.year > date2.year || (date1.year == date2.year && date1.month > date2.month) ||
        (date1.year == date2.year && date1.month == date2.month && date1.day > date2.day)) {
        struct Date temp = date1;
        date1 = date2;
        date2 = temp;
    }

    int days = 0;
    while (date1.year < date2.year || date1.month < date2.month || date1.day < date2.day) {
        days++;
        date1.day++;
        if (date1.day > daysOfMonth(date1.year, date1.month)) {
            date1.day = 1;
            date1.month++;
            if (date1.month > 12) {
                date1.month = 1;
                date1.year++;
            }
        }
    }

    return days;
}

int main() {
    struct Date date1 = {2022, 6, 1};
    struct Date date2 = {2022, 7, 1};
    
    int days = daysBetween(date1, date2);
    
    printf("Days between the two dates: %d\n", days);

    return 0;
}

在上面的示例代碼中,定義了一個包含年、月、日字段的日期結構體,并實現了計算是否是閏年、每個月的天數和兩個日期之間的天數的函數。通過在主函數中定義兩個日期并調用計算天數的函數,可以得到這兩個日期之間的天數并輸出。

0
红河县| 丰台区| 盈江县| 微山县| 南乐县| 舞钢市| 如皋市| 彰武县| 金湖县| 股票| 岑溪市| 安庆市| 科技| 琼海市| 沙田区| 寿宁县| 云林县| 镇平县| 乌鲁木齐市| 南皮县| 治多县| 咸丰县| 武穴市| 夹江县| 万全县| 建德市| 南京市| 宜良县| 兴仁县| 遵义市| 淅川县| 巴林左旗| 庆阳市| 奇台县| 营口市| 抚宁县| 济阳县| 农安县| 锦屏县| 治县。| 治多县|