C语言实现计算某一天是当年的第几天,并计算出一年的剩余天数

这段代码的实现是很简单的,用的就是判断后累加的方法实现的,原理是很简单的。

第几天的计算:比如计算的是11月,先将前十个月的天数计算并相加起来,除了二月的天数闰年会有所不同外,其他的都是一样的,其次就是将输入的天数加上就可以了。

剩余多少天的计算:先将输入进去的这一年的总天数计算出来,再减去上面计算出的第几天就可以了。

这道题其实主要考的还是闰年的相关计算方法,

判断任意年份是否为闰年,需要满足以下条件中的任意一个:
① 该年份能被 4 整除同时不能被 100 整除;
② 该年份能被400整除。

大家可以去看一下我之前的闰年计算方法

C语言判断闰年,输入年判断并打印是否闰年_Eliauk1234的博客-CSDN博客

#include <stdio.h>
int main(int argc, char *argv[])
{
	int feb,y,m,d,day,sur,total; 
	printf("输入格式例:2021 11 18\n"); 
	scanf("%d%d%d",&y,&m,&d);
	if(y%4==0&&y%100!=0||y%400==0)
	{
		feb=29;
		total=366;
	}
	else
	{
		feb=28;
		total=365;
	}
 		 if(m==1)  day=d;
	else if(m==2)  day=31+d;
	else if(m==3)  day=31+feb+d;
	else if(m==4)  day=31+feb+31+d;
	else if(m==5)  day=31+feb+31+30+d;
	else if(m==6)  day=31+feb+31+30+31+d;
	else if(m==7)  day=31+feb+31+30+31+30+d;
	else if(m==8)  day=31+feb+31+30+31+30+31+d;
	else if(m==9)  day=31+feb+31+30+31+30+31+31+d;
	else if(m==10) day=31+feb+31+30+31+30+31+31+30+d;
	else if(m==11) day=31+feb+31+30+31+30+31+31+30+31+d;
	else if(m==12) day=31+feb+31+30+31+30+31+31+30+31+30+d;
	sur=total-day;
	printf("今天是%d年的第 %d 天,距离今年结束还有 %d 天\n",y,day,sur);
	return 0;
	
}

C语言万年历,C语言趣味程序

 我是虎哥,大家多学习多交流

猜你喜欢

转载自blog.csdn.net/Eliauk1234/article/details/121395563