计算日期到天数转换【编程题】
来源:互联网 发布:面试问题 知乎 编辑:程序博客网 时间:2024/05/22 05:19
题目
描述
根据输入的日期,计算是这一年的第几天。。
详细描述:
输入某年某月某日,判断这一天是这一年的第几天?。
输入
输入三行,分别是年,月,日
输出
成功:返回outDay
输出计算后的第几天;
失败:返回-1
样例输入
2016 12 31
样例输出
366
思路
是先建立一个数组保存每月累计的日子,判断是否是闰年,然后加1
代码
#include <iostream>using namespace std;bool loopyear(int year) //判断是否是闰年{ if((year%4==0&&year%100!=0)||year%400==0) { return 1; } else { return 0; }}bool checkDay(int month, int day)//检查输入的合法性{ int a[13]= {0,31,59,90,120,151,181,212,243,273,304,334,365}; if(day>0&&day<=(a[month]-a[month-1])) { return true; } return false;}int getOutDay(int year, int month, int day){ int sum=0; int a[12]= {0,31,59,90,120,151,181,212,243,273,304,334}; bool isDayOk=checkDay(month,day); if (loopyear(year)&&month>2&&isDayOk)//如果是闰年且月份大于2 { sum=a[month-1]+day+1; } else if(isDayOk) { sum=a[month-1]+day; } else { sum=-1; } return sum;}int main(){ int year,month,day; cin>>year; cin>>month; cin>>day; cout<<getOutDay(year,month,day); return 0;}
0 0
- 计算日期到天数转换【编程题】
- 计算日期到天数转换
- 计算日期到天数转换
- 华为oj 计算日期到天数转换
- 华为OJ(计算日期到天数转换)
- 华为OJ中级-计算日期到天数转换
- 【华为OJ】【045-计算日期到天数转换】
- 华为机试---计算日期到天数转换
- 华为OJ——计算日期到天数转换
- 【华为 OJ 】计算日期到天数的转换
- 华为OJ——计算日期到天数转换
- 华为机试:计算日期到天数转换、四则运算
- 华为OJ——计算日期到天数转换
- 华为OJ ---计算日期到天数的转换(给定一个日期,输出为这一年的第几天)
- 计算从开始日期到结束日期经过的天数
- C语言计算日期A到日期B的天数
- 日期天数的计算
- 根据日期计算天数
- 网络请求框架阅读
- Bean的创建和销毁的自定义方法注册
- 为什么国外程序员爱用Mac?
- JVM学习笔记(三)JAVA中四种引用浅析
- 一些类库
- 计算日期到天数转换【编程题】
- MySQL基本命令
- js中bind、call、apply区别和简单应用
- Spring 框架参考文档(六)-Integration之任务执行与调度
- Oracle数据库表的修改
- JS 转义与反转
- 数据库三范式的理解定义
- 片段
- kubernetes1.5新特性:自定义资源类型