描述

甲壳虫的《A day in the life》和《Tomorrow never knows》脍炙人口,如果告诉你a day in the life,真的会是tomorrow never knows?
相信学了计概之后这个不会是难题,现在就来实现吧。
读入一个格式为yyyy-mm-dd的日期(即年-月-日),输出这个日期下一天的日期。可以假定输入的日期不早于1600-01-01,也不晚于2999-12-30。

输入
输入仅一行,格式为yyyy-mm-dd的日期。
输出
输出也仅一行,格式为yyyy-mm-dd的日期。

提示

闰年的标准:
(1)普通年能被4整除且不能被100整除的为闰年。(如2004年就是闰年,1901年不是闰年)
(2)世纪年能被400整除的是闰年。(如2000年是闰年,1100年不是闰年)
可以利用一个字符变量吃掉输入的短横线(减号),输出时请活用setfill和setw 控制符。

setfill example


#include <iostream>     // std::cout, std::endl
#include <iomanip>      // std::setfill, std::setwint main () {
std::cout << std::setfill ('x') << std::setw (10);
std::cout << 77 << std::endl;
return 0;
}在这里
cout << year << '-' << setw(2) << setfill('0') << month << '-' << setw(2)<< setfill('0')<< day << endl;
#include<iostream>
#include<iomanip>
using namespace std;// 通过字符变量将-吃掉,即:在输入是用char字符变量来接收
int main() {int year, month, day;char m, n;cin >> year >> m >> month >> n >> day;//下面开始判断是否为闰年bool leap = 0;bool special = 0;if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {leap = 1;}// 先处理特殊:闰年以及月增和年增// 通过一个bool值,来表示是否发生了月增或者年增?if (month == 2) {if (leap == 1 && day == 29) {month += 1;day = 1;special = 1;}if (leap == 0 && day == 28) {month += 1;day = 1;special = 1;}}//然后是处理年增if (0 < month <= 12) {if (month == 12 && day == 31) {year += 1;month = 1;day = 1;special = 1;}if ((month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10) && day == 31) {month += 1;day = 1;special = 1;}if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 30) {month += 1;day = 1;special = 1;}// 这里使用else并不好//会出现2000-00-00变成2000-00-01//else {//    day += 1;//}if (special == 0) {day += 1;}}cout << year << '-' << setw(2) << setfill('0') << month << '-' << setw(2) << setfill('0') << day << endl;return 0;}

Coursera 学习记录:Tomorrow never knows?(实现日期加一的操作)相关推荐

  1. 小余学调度:学习记录(2021.9.13-2021.9.19)母线操作和线路操作

    小余学调度系列文章,记录小余同学入职电力调度员一路的学习记录,由于工作性质,在这个系列,只写能公开的知识点,不涉及机密. 提示:专栏解锁后,可以看这个专栏所有文章,划算. 文章目录 一.母线停送电和倒 ...

  2. Coursera 学习记录:细菌分组(通过冒泡排序实现两组有差异的分类)

    描述 有一种细菌分为A.B两个亚种,它们的外在特征几乎完全相同,仅仅在繁殖能力上有显著差别,A亚种繁殖能力非常强, B亚种的繁殖能力很弱.在一次为时一个小时的细菌繁殖实验中,实验员由于疏忽把细菌培养皿 ...

  3. 不逼自己一把都不知道自己还能这么优秀(小鹅通学习记录大批量队列同步)

    不逼自己一把都不知道自己还能这么优秀-小鹅通学习记录大批量队列同步实战日志 前言 一.编程语言介绍 1.php是世界上最好的语言 2.第三方API对接的苦恼 3.为什么说好的项目进度表都是画饼 二.炫 ...

  4. [Django]模型学习记录篇--基础

    模型学习记录篇,仅仅自己学习时做的记录!!! 实现模型变更的三个步骤: 修改你的模型(在models.py文件中). 运行python manage.py makemigrations ,为这些修改创 ...

  5. Matlab学习记录 1

    文章目录 Matlab学习记录 使用帮助文档 Matlab读取CSV文件 MATLAB查看变量的类型 Matlab 提取矩阵 某一行 或者 某一列 的方法 mic的计算 矩阵下标从1开始 矩阵转置 获 ...

  6. MySQL学习记录 (三) ----- SQL数据定义语句(DDL)

    相关文章: <MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令> <MySQL学习记录 (二) ----- SQL数据查询语句(DQL)> &l ...

  7. MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令

    相关文章: <MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令> <MySQL学习记录 (二) ----- SQL数据查询语句(DQL)> &l ...

  8. linux文件权限记录,linux文件权限学习记录

    linux文件权限学习记录 1.Linux 的安全性 1.1/etc/passwd 文件 存放用户的登录名以及相关信息#cat  / etc / passwd root: x: 0 : 0 : roo ...

  9. linux个人学习记录

    linux学习记录 资料: Linux 黑马程序员_bilibili AcWing Linux基础课 可能是东半球最全面易懂的 Tmux 使用教程! Shell 教程 | 菜鸟教程 (runoob.c ...

最新文章

  1. TemplateBuilder
  2. ECCV 2020 | 腾讯优图8篇论文入选,涵盖目标跟踪、行人重识别、人脸识别等领域...
  3. 了解活动目录操作主机角色及GUI命令行查看方法
  4. sharepoint 2010 使用WinForm获取 SPSite对象
  5. Java网络爬虫实操(8)
  6. jQuery实现鼠标划过展示大图的方法
  7. java spring bean配置文件_Spring基于xml文件配置Bean过程详解
  8. lnmp 备份mysql_mysql全量备份与增量备份
  9. 计算机编程c 语言实型数据,C语言-基础教程-C语言实型数据
  10. 移动互联网实战--资源类APP的数据存储处理和优化
  11. vue中将axios封装
  12. U-最小公倍数 递归
  13. LuaForUnity9:uLua的一个简单实例
  14. 使用android日志工具
  15. Java基础,删除指定索引的元素,编程思路详解
  16. 回声状态网络(ESN)实现手写数字识别(MNIST)
  17. 黑马优购uni-app
  18. 快速接入 微信微博QQ钉钉 原生登录分享
  19. 中国洗衣胶囊行业市场供需与战略研究报告
  20. 我的世界手机版虚拟人生服务器,我的世界大型虚拟人生整合包

热门文章

  1. IpadOS15.4系统通用控制开启
  2. PHP 正则判断是否是手机号码
  3. 科目三上海浦东邮佳考场心酸历程
  4. 前端调用手机摄像头权限进行扫码解析
  5. 深入理解jvm(转)
  6. Python爬虫爬取智联招聘职位信息
  7. java70-GUL图形用户界面初识
  8. 102道java算法
  9. Python学习 Day37 jQuery框架01
  10. neo4j ogm_带有Hibernate OGM的NoSQL –第二部分:查询数据