YTU 2715: 函数---判断某年某月某日是这一年中的第几天
2715: 函数---判断某年某月某日是这一年中的第几天
时间限制: 1 Sec 内存限制: 128 MB
提交: 380 解决: 155
题目描述
在主程序(main)中输入某年某月某日,例如2012 9 18(年月日之间用空格隔开), 调用函数dayth来得到某年某月某日是这一年中是第几天。
注意 在利用dayth函数前要调用isValid_date函数来判断日期是合法的。
dayth函数和isValid_date函数声明如下:
int isValid_date(int year,int month,int day); //判断日期(年月日)是否合法的函数声明,如果日期合法返回1,如果不合法返回0
int dayth(int year,int month,int day); //获取日期(年月日)是本年中的第几天的函数声明
在以下程序的基础上,添加isValid_date函数和dayth函数的定义,使程序能够正确执行。
提交时,只需要提交isValid_date函数和dayth函数的定义代码即可。
#include <iostream>
using namespace std;
int isValid_date(int year,int month,int day); //判断日期(年月日)是否合法的函数声明,如果日期合法返回1,如果不合法返回0
int dayth(int year,int month,int day); //获取日期(年月日)是本年中的第几天的函数声明
int main()
{
int y,m,d; //定义3个变量分别来存放输入的年、月、日
cin>>y>>m>>d;
if(isValid_date(y,m,d) ==0)
cout<<"not valid"<<endl;
else
cout<<dayth(y,m,d)<<endl;
return 0;
}
输入
一个日期(年 月 日)
输出
如果该日期和法则输出该日期是本年中的第几天,如果该日期不合法输出提示信息
例如 输入2002 3 1 输出 60 输入2008 2 30 输出not valid
样例输入
2002 3 1
样例输出
60
你 离 开 了 , 我 的 世 界 里 只 剩 下 雨 。 。 。
#include <iostream>
using namespace std;
int isValid_date(int year,int month,int day); //判断日期(年月日)是否合法的函数声明,如果日期合法返回1,如果不合法返回0
int dayth(int year,int month,int day); //获取日期(年月日)是本年中的第几天的函数声明
int main()
{
int y,m,d; //定义3个变量分别来存放输入的年、月、日
cin>>y>>m>>d;
if(isValid_date(y,m,d)==0)
cout<<"not valid"<<endl;
else
cout<<dayth(y,m,d)<<endl;
return 0;
}
int a[12]= {31,28,31,30,31,30,31,31,30,31,30,31};
int isValid_date(int year,int month,int day)
{
if((year%4==0&&year%100!=0)||year%400==0)a[1]+=1;
if(month>12||month<1||day>a[month-1]||day<1)return 0;
else return 1;
}
int dayth(int year,int month,int day)
{
int b,s=0;
if((year%4==0&&year%100!=0)||year%400==0)a[1]=29;
for(b=0; b<month-1; b++)
s+=a[b];
s+=day;
return s;
}
#include <iostream>
using namespace std;
int isValid_date(int year,int month,int day); //判断日期(年月日)是否合法的函数声明,如果日期合法返回1,如果不合法返回0
int dayth(int year,int month,int day); //获取日期(年月日)是本年中的第几天的函数声明
int main()
{
int y,m,d; //定义3个变量分别来存放输入的年、月、日
cin>>y>>m>>d;
if(isValid_date(y,m,d)==0)
cout<<"not valid"<<endl;
else
cout<<dayth(y,m,d)<<endl;
return 0;
}
int a[12]= {31,28,31,30,31,30,31,31,30,31,30,31};
int isValid_date(int year,int month,int day)
{
if((year%4==0&&year%100!=0)||year%400==0)a[1]+=1;
if(month>12||month<1||day>a[month-1]||day<1)return 0;
else return 1;
}
int dayth(int year,int month,int day)
{
int b,s=0;
if((year%4==0&&year%100!=0)||year%400==0)a[1]=29;
for(b=0; b<month-1; b++)
s+=a[b];
s+=day;
return s;
}
YTU 2715: 函数---判断某年某月某日是这一年中的第几天的更多相关文章
- C++风格写判断某年某月某日是一年的第几天
初学C++,在结构体中写函数及一些C++语言需要的一些格式 看代码 #include<iostream>#include<cstdio>using namespace std; ...
- python中输入某年某月某日,判断这一天是这一年的第几天?
输入某年某月某日,判断这一天是这一年的第几天?程序分析 特殊情况,闰年时需考虑二月多加一天: 直接上代码 #定义一个函数,判断是否为闰年 def leapyear(y): return (y % 40 ...
- # 【Python3练习题 004】输入某年某月某日,判断这一天是这一年的第几天?
# [Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? # 思路:先判断是否为闰年,这关系到 2 月份的天数.# 之后再根据月份值把前几个月的天数累积加起来,最后再加上个“日 ...
- python3 输入某年某月某日,判断这一天是这一年的第几天?
题目 输入某年某月某日,判断这一天是这一年的第几天? 程序分析 特殊情况,闰年时需考虑二月多加一天. 代码: import calendar year = int(input("Year:& ...
- iOS - 日期的时间差(某年某月某日的某一天。。。)
//首先创建格式化对象 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateF ...
- 使用feof()函数判断文件是否结束
课本上时这样写的:(用putchar(ch);代表对取出来的字符的处理.) while(!feof(fp)) { ch=fgetc(fp); putchar(ch); } 但是,这样写的话,fgetc ...
- Python startswith() 函数 判断字符串开头
Python startswith() 函数 判断字符串开头 函数:startswith() 作用:判断字符串是否以指定字符或子字符串开头 一.函数说明语法:string.startswith(str ...
- PHP array_key_exists() 函数(判断某个数组中是否存在指定的 key)
定义和用法 array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否则返回 false. 语法 array_key_exists(ke ...
- php 在linux 用file_exists() 函数判断 另外一台服务器映射过来的文件是否存在 总是返回false
php 在linux 用file_exists() 函数判断 另外一台服务器映射过来的文件是否存在 总是返回false .如下案例 $type="android"; $url=&q ...
随机推荐
- 01C++编辑编译运行环境
C++编辑编译运行环境 Bloodshed Dev-C++ Microsoft Visual Studio
- Android studio开发-第一个应用
Android studio开发-第一个应用 上效果图 1.先创建布局文件 firstbutton.xml 代码 <?xml version="1.0" encoding=& ...
- <SpringMvc>入门七 拦截器
什么是拦截器 1.SpringMVC框架中的拦截器用于 对处理器 进行预处理和后处理的技术. 2.可以定义拦截器链,按照顺序执行. 3.拦截器和过滤器功能类似,区别在 拦截器 过滤器 过滤器是Serv ...
- python3.x Day1 菜单程序练习
三级菜单: 1. 运行程序输出第一级菜单 2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单 3. 菜单数据保存在文件中 4. 让用户选择是否要退出 5. 有返回上一级菜单的功能 类定义:menu ...
- FZU 1492 地震预测(模拟链表的应用)(Java实现)
FZU 1492 地震预测(模拟链表的应用)(Java实现) 怀特先生是一名研究地震的科学家,最近他发现如果知道某一段时间内的地壳震动能量采样的最小波动值之和,可以有效地预测大地震的发生. 假设已知一 ...
- i2c中应答信号信号总结
i2c如果用到主从的关系的时候,需要考虑: give_ack();//从器件发送,来表示占用总线,让sda总线保持低电平. get_ack();//主器件判断是否有器件占用总线,sda有器件占用,是低 ...
- linux常用命令大全(linux基础命令+命令备忘录+面试复习)
linux常用命令大全(linux基础命令+命令备忘录+面试复习)-----https://www.cnblogs.com/caozy/p/9261224.html
- (13)Corner Detection角点检测
import cv2 import numpy as np img=cv2.imread('opencv-corner-detection-sample.jpg') gray = cv2.cvtCol ...
- HBase连接数据库(集群)
一.使用java接口对hbase进行表的创建1.引入需要的jar包2.代码: public static void main(String[] args) throws Exception { //得 ...
- Spring Boot中使用Swagger2生成RESTful API文档(转)
效果如下图所示: 添加Swagger2依赖 在pom.xml中加入Swagger2的依赖 <!-- https://mvnrepository.com/artifact/io.springfox ...