当前位置:首页 C++ > 正文

c++怎么输出某个月份的天数

作者:野牛程序员:2024-11-01 21:28:08 C++阅读 2067
c++怎么输出某个月份的天数

以下是一个 C++ 程序示例,用于输出某个月份的天数,包括对闰年的考虑:

示例代码:

#include <iostream>
using namespace std;

// 判断是否为闰年
bool isLeapYear(int year) {
    return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}

// 获取某个月的天数
int getDaysInMonth(int month, int year) {
    if (month < 1 || month > 12) {
        return 0; // 不合法的月份
    }
    
    switch (month) {
        case 1: case 3: case 5: case 7: case 8: case 10: case 12:
            return 31; // 31天的月份
        case 4: case 6: case 9: case 11:
            return 30; // 30天的月份
        case 2:
            return isLeapYear(year) ? 29 : 28; // 二月
        default:
            return 0; // 不应到达这里
    }
}

int main() {
    int month, year;

    cout << "请输入年份: ";
    cin >> year;
    cout << "请输入月份 (1-12): ";
    cin >> month;

    int days = getDaysInMonth(month, year);
    if (days == 0) {
        cout << "输入的月份不合法。" << endl;
    } else {
        cout << year << "年 " << month << "月有 " << days << " 天。" << endl;
    }

    return 0;
}

代码说明:

  1. 闰年判断isLeapYear(int year) 函数判断年份是否为闰年。

  2. 获取月份天数getDaysInMonth(int month, int year) 函数根据输入的月份和年份返回该月份的天数。

    • 使用 switch 语句处理不同月份,特别是二月需要根据是否为闰年来决定天数。

  3. 主函数

    • 输入年份和月份,并调用 getDaysInMonth() 函数获取天数。

    • 输出结果,处理输入不合法的情况。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • c++
  • 最新推荐

    热门点击