蓝桥杯题目 计算后续日期

蓝桥杯题目 计算后续日期蓝桥杯题目计算后续日期题目描述我们经常要计算 从今天往后 N 天之后是哪一天 哪年哪月哪日 现在我们就可以编写一个程序 推算指定日期之后的第 N 天是什么日期 输入输入有多组 每组测试用例有一行 包括四个整数 分别表示年 月 日和第 N 天 输出对于每组测试用例 输入由一行组成 表示 年月日 N 天后的 的年 月 日样例输入样例输出 2012

蓝桥杯题目

计算后续日期

题目描述

我们经常要计算,从今天往后N天之后是哪一天(哪年哪月哪日)。现在我们就可以编写一个程序,推算指定日期之后的第N天是什么日期。

程序源码
#include<iostream> #include<iomanip> using namespace std; int a[2][12] = { 
    { 
    31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }, { 
    31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } }; int b[2] = { 
    365,366 }; int judge(int a)//是否是闰年,是则返回1,不是则返回0 { 
    if ((a % 4 == 0 && a % 100 != 0) || a % 400 == 0)return 1; else return 0; } //返回从1年1月1日开始(包括当天)到输入天数(不包括当天)所经历的天数 int days_1(int year, int month, int day) { 
    int sum = 0; for (int i = year; i > 1; i--) { 
    sum += b[judge(i)]; } for (int j = month; j > 1; j--) { 
    sum += a[judge(year)][j - 1]; } sum += day - 1; return sum; } //输入n(n大于0),则返回从1年1月1日(包括当天)开始经过了n天后的日期(不包括当天) void days_2(int sum, int &year, int &month, int &day) { 
    for (year = 1; sum >= b[judge(year)]; year++) { 
    sum -= b[judge(year)]; } for (month = 0; sum >= a[judge(year)][month]; month++) { 
    sum -= a[judge(year)][month]; } month++; day = sum + 1; return; } int main() { 
    int year, month, day, n; while (cin >> year >> month >> day >> n) { 
    n+= days_1(year, month, day); days_2(n, year, month, day); cout << year << "." << month << "." << day << endl; } return 0; } 
测试结果

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233008.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • AndroidJNI 通过C++调用JAVA

    1. JNIEnv对象    对于本地函数   JNIEXPORT void JNICALL Java_video1_TestNative_sayHello(JNIEnv * env, jobject obj)   {        cout   }           JNIEnv类型代表Java环境。通过这个JNIEnv*指针,就可以对Java端的代码进行操作。如,创建Java类得对象,调用J

    2022年3月11日
    44
  • QT的基本知识「建议收藏」

    QT的基本知识「建议收藏」QT是一个跨平台应用程序和UI开发框架。具体的安装以及源文件的下载这里不详细介绍。要在QT界面上添加一个按钮,可以有两种方法:一个是直接拖放一个按钮即可;另一种则是通过程序来添加一种按钮。QT提供的信号和槽机制,可以让任意两个对象之间进行消息处理,其作用就是让一个对象产生的信号能够被另一个对象接受并处理。QT基本所有的对象都集成在QObject对象中,在这个对象中有一个静态函数connect…

    2022年5月17日
    38
  • idea打包maven项目jar_tomcat部署maven项目

    idea打包maven项目jar_tomcat部署maven项目今天遇到一个需求,客户要求项目用maven管理,真是操碎了心,还好最终解决了,也在这里分享一下心得。首先选中要buide成maven的包——>右键——>addframeworksupport…,然后勾选maven即可;…

    2022年9月28日
    8
  • p6spy的使用和配置「建议收藏」

    p6spy的使用和配置「建议收藏」【注意】:本教程适用与springboot项目1.加载jar包<!–sql打印–><!–https://mvnrepository.com/artifact/p6spy/p6spy–><dependency><groupId>p6spy</groupId><artifactId>p6spy</artifactId>

    2022年9月28日
    3
  • 程序员本地网站_程序员实用工具网站

    程序员本地网站_程序员实用工具网站程序员本地网站

    2022年4月20日
    49
  • python开发mbus程序_Mbus 2019(水表校验程序)V2.1 最新版

    python开发mbus程序_Mbus 2019(水表校验程序)V2.1 最新版Mbus2019(水表校验程序)是一款功能强大的水表等设备的测试辅助工具。Mbus2019(水表校验程序)选择串口号选择波特率及效验位,打开串口,可读取信息,真实有效可靠,可读取写入表计地址,发送标准188读计量数据、控制码等命令,可设置时间,获取权限等。特色1、Mbus使用方便,可以免费帮助用户测试水表2、提供命令设置功能,使用标准的188命令控制读取方案3、控制码也可以在软件设置,控制码长…

    2022年10月15日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号