进阶8 求第几天

8 求第几天

作者: Turbo时间限制: 1S章节: 循环

问题描述 :

按年、月、日的顺序读入一个日期,输出该日期是这一年中的第几天。

输入说明 :

输入数据为三个正整数y 、m、d,分别表示年、月、日,整数之间以空格分隔,在行首和行尾没有多余的空格。

输出说明 :

输出一个整数,表示输入的日期是这一年中的第几天,在行首和行尾没有多余的空格。

输入范例 :
2000 12 31
输出范例 :
366

#include<stdio.h>
int main(){
	int y,m,d,i;
	int day=0;
	scanf("%d%d%d",&y,&m,&d);
    if((y%4==0&&y%100!=0)||y%400==0){
		for(i=1;i<m;i++){
           if(i==2) day=day+29;
		   else if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
			   day=day+31;
           else day=day+30;
		}
		day+=d;
	}else{
		for(i=1;i<m;i++){
           if(i==2) day=day+28;
		   else if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
			   day=day+31;
           else day=day+30;
		}
		day+=d;
	}
	printf("%d",day);
	return 0;
}
发布了146 篇原创文章 · 获赞 1 · 访问量 514

猜你喜欢

转载自blog.csdn.net/qq_39338091/article/details/105719824