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

【循环】日记第几天

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

【题目描述】

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

【输入描述】

输入三个整数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;
}



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

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

分享给朋友:

相关文章

哥德巴赫猜想

【题目描述】哥德巴赫猜想的命题之一是:大于6 的偶数等于两个素数之和。编程将6~100所有偶数表示成两个素数之和。【输入描述】无【输出描述】分行输出例如:6=3+38=3+5…(每个数只拆开一次,请保...

【题解】移动路线

【题目描述】X桌子上有一个m行n列的方格矩阵,将每个方格用坐标表示,行坐标从下到上依次递增,列坐标从左至右依次递增,左下角方格的坐标为(1,1),则右上角方格的坐标为(m,n)。小明是个调皮的孩子,一...

【题解】计算天数

【题目描述】以 年-月-日 的形式给定一个日期,计算给定的日期是当年第几天。注意闰年二月有29天。【输入描述】输入格式为 yyyy-mm-dd,其中yyyy 表...

数列

数列

【题目描述】有一个分数序列求出这个序列的前n项和,结果保留两位小数。(注意,不用通分,单项相加即可)【输入描述】一个数字,N【输出描述】前N项的和【样例输入】10【样例输出】16.48【题目分析】(1...

【题解】母舰

【题目描述】在小A的星际大战游戏中,一艘强力的母舰往往决定了一场战争的胜负。一艘母舰的攻击力是普通的MA(Mobile  Armor)无法比较的。 对于一艘母舰而言,它是由若干个攻击系统和若...

【题解】游览动物园

【题目描述】动物园有很多游览区,小红已经在动物园的一个游览区游览,突然接到电话,要半个小时内到动物园外面跟一个朋友见面。半个小时小红只够游览完当前区域之后,游览一个最近的景区。已知从一个游览区域只能沿...