青少年编程知识记录 codecoming

【循环】日记第几天

【题目描述】

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

【输入描述】

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





(adsbygoogle = window.adsbygoogle || []).push({});