m0_75173153 2023-04-08 10:58 采纳率: 0%
浏览 19

计算年、月、日输出该年第几天

输入一个日期的年、月、日,计算并输出这天是该年的第几天。如来,2011年1月31日是该年的第31天

  • 写回答

3条回答 默认 最新

  • threenewbee 2023-04-08 11:00
    关注
    #include <iostream>
    using namespace std;
    
    bool isLeapYear(int year) {  // 判断是否为闰年
        if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
            return true;
        }
        return false;
    }
    
    int getDayNum(int year, int month, int day) {  // 计算该日期是该年的第几天
        int day_num = 0;
        int days_of_month[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    
        if (isLeapYear(year)) {  // 处理闰年的二月
            days_of_month[1] = 29;
        }
    
        for (int i = 0; i < month - 1; i++) {
            day_num += days_of_month[i];
        }
    
        day_num += day;
    
        return day_num;
    }
    
    int main() {
        int year, month, day;
        cout << "请输入日期的年、月、日:" << endl;
        cin >> year >> month >> day;
    
        int day_num = getDayNum(year, month, day);
        cout << year << "年" << month << "月" << day << "日是该年的第" << day_num << "天。" << endl;
    
        return 0;
    }
    
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月8日

悬赏问题

  • ¥15 pychram安装jupyter插件
  • ¥60 悬赏破解越狱iphone4s中360保险箱密码遗忘
  • ¥20 ARKts悬浮窗和快捷方式问题
  • ¥15 linux中nginx服务器提示not found on accelerator,如何解决?(语言-php|操作系统-linux)
  • ¥15 comparecluster没有办法kegg
  • ¥15 远程访问linux主机超时
  • ¥15 odoo17存货管理优势于中国国内该行业传统ERP或MES的详细解读和举例
  • ¥15 CPU卡指令整合指令数据都在图片上
  • ¥15 odoo17处理受托加工产品
  • ¥15 如何用MATLAB编码图三的积分