C语言—日期处理—实例练习巩固基础(4)

四、输入某年某月某日,判断出是这一年当中的第几天?
编程思路:特别要注意的是闰年和非闰年,月份大于或者小于3月份。

#include <stdio.h>
int main()
{
	int day,month,year,sum,leap;
	printf("\n请输入年、月、日,格式为:年,月,日(2019,1,9)\n");
	scanf("%d,%d,%d",&year,&month,&day);
	//不了解switch结构的可上网搜一下!
	switch(month)  //按照非闰年2月28天计算之前一个月的天数
	{
		case 1:sum=0;break;
		case 2:sum=31;break;
		case 3:sum=(31+28);break;
		case 4:sum=(59+31);break;
		case 5:sum=(90+30);break;
		case 6:sum=(120+31);break;
		case 7:sum=(151+30);break;
		case 8:sum=(181+31);break;
		case 9:sum=(212+31);break;
		case 10:sum=(243+30);break;
		case 11:sum=(273+31);break;
		case 12:sum=(304+30);break;
	}
	sum=sum+day;//加上某天天数
	//判断年份是不是闰年
	if(year%100!=0 && year%4==0 && year%400==0)
	{
		leap=1;//闰年
	}
	else
	{
		leap=0;//非闰年
	}
	//判断闰年情况下月份是否大于2月份
	if(leap==1 && month>2)
	{
		sum=sum+1;  //总天数加上2月份多出的1天
	}
	printf("这是这一年当中的第 %d 天!",sum);
	printf(""\n"");
}

每天一练,坚持不懈,少侠带你进入C语言的世界修炼!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值