当前位置:首页 > 题解目录 > 正文内容

【循环】日记第几天

亿万年的星光2年前 (2023-07-24)题解目录3032

【题目描述】

小明每天都坚持写日记,突然有一天小明在想,我今年写了多少篇日记了?一篇一篇的数好麻烦,没办法小明只能把这个艰难的问题交给聪明的你来解决。

【输入描述】

输入三个整数y,m,d分别表示年月日,数据均在int范围内。

【输出描述】

输出一个整数,表示这是今年的第几天。

【样例输入】

2018 1 1

【样例输出】

1

【参考答案】

#include<iostream>
using namespace std;
int main(){
	int year,month,day;//年月日 
	cin>>year>>month>>day; 
	int flag=1; //0表示平年,1表示闰年 
	int sum=0; //用来记录天数 
	//判断闰年
	if((year%4!=0)||(year%100==0&&year%400!=0)){
		flag=0; 
	} 
	//从1开始,循环到上一个月份,最后一个月份单独加 
	for(int i=1;i<month;i++){
		if(i==1 || i==3 ||i==5 || i==7 || i==8 || i==10 || i==12){
			sum+=31;  //1,3,5,7,8,10,12月份加31天 
		}else if(i==2){
			//2月份特判一下
			if(flag==1){
				sum+=29;
			} else{
				sum+=28;
			}
		}else{
			//最后如果是其他月份, 
			sum+=30; 
		} 
	}
	//最后,单独加一下 day
	sum+=day; 
	cout<<sum<<endl;
	return 0;
}



扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

【题解】区间数位个数

2.区间数位个数(digit.cpp)【描述】给定整数n和整数k,求出1~n中所有数的每一位数字中,出现数字k的次数。【输入】第一行是两个个整数n和k【输出】一个整数表示答案。【样例输入输出】ligh...

线段

题目描述在一个数轴上有n条线段,现选取其中k条线段使得这k条线段两两没有重合部分,问最大的k为多少?输入格式第一行为一个正整数n,下面n行每行2个数字ai,bi,描述每条线段。输出格式输出文件仅包括1...

【题解】切比雪夫距离

【题目描述】小C有一个平面!它发现了平面上的两个点,请你求出求它们之间的切比雪夫距离。切比雪夫距离定义为x与y方向坐标差的绝对值较大值。【输入描述】四个整数,a,b,c,d。坐标为(a,b)与(c,d...

生日

【题目描述】cjf君想调查学校OI组每个同学的生日,并按照从大到小的顺序排序。但cjf君最近作业很多,没有时间,所以请你帮她排序。【输入描述】有2行,第1行为OI组总人数n;第2行至第n+1行分别是每...

【题解】奇偶校验

【题目描述】奇偶校验(Parity Check)是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中“1”的个数 是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。现在给...

【题解】高精度除法

【题目描述】高精除以高精,求它们的商和余数。【输入描述】输入两个低于300位的正整数。【输出描述】输出商和余数。【样例输入】12313123184575776878979876423245678643...