【C语言】--输入某年某月某日,判断这一天是这一年的第几天?(VS2019)

题目:输入某年某月某日,判断这一天是这一年的第几天?

程序分析:年要考虑到是不是闰年,是闰年2月份的天数要加一

注意:在VS2019中使用scanf函数要添加宏定义

下面是全部代码

#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
int main()
{
	int i, j, k;//年,月,日
	int days=0;//天数
	printf("请输入年月日:");
	scanf("%d %d %d", &i, &j, &k);
	switch (j)//前一个月有几天
	{
		case 1:days = 0;break;
		case 2:days = 31;break;
		case 3:days = 59;break;
		case 4:days = 90;break;
		case 5:days = 120;break;
		case 6:days = 151;break;
		case 7:days = 181;break;
		case 8:days = 212;break;
		case 9:days = 243;break;
		case 10:days = 273;break;
		case 11:days = 304;break;
		case 12:days = 334;break;
		default:printf("输入月份出错\n");break;
	}
	days = days + k;//前一个月的天数再加上本月的日数
	int lag;//定义一个标签,若lag=1表示闰年,lag=0,表示不是闰年
	if (i % 400 == 0 || (i % 4 == 0 && i % 100 != 0))//判断是不是闰年
		lag = 1;
	else
		lag = 0;
	if (lag == 1 && j > 2)
		days = days + 1;//是闰年且月份大于2,天数加一

	printf("这一天是这一年的第%d天", days);
	return 0;


}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十三衙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值