定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题。(算法学习第17天,C代码)

本文介绍了一个使用C语言解决的算法题目,旨在计算输入的特定日期(包括年、月、日)在该年中是第几天,并考虑了闰年的影响。作者分享了一段代码,但在提交时遇到了问题,期待社区的反馈与指导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2020.5.8

学习的第17天

这几天比较苦呀,大晚上写代码~~

题目

定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题。

例如
输入
2000 12 31
输出
366

C代码

#include<stdio.h>
struct time 
{
	int year;
	int mouth;
	int day;
};
int main()
{
	struct time a;
	int i, d = 0;
	scanf("%d%d%d",&a.year,&a.mouth,&a.day);
	for (i = 1; i < a.mouth; i++)
	{
		if (i == 2)
		{
			if ((a.year % 4 == 0 && a.year % 100 != 0) || a.year % 400 == 0)
				d += 29;
			else
				d += 28;
			continue;
		}		
		if (i % 2 == 0)
			d += 30;
		else
			d += 31;
	}
	d += a.day;
	printf("%d",d);
	return 0;
}

我这代码测试没问题,但是在提交却说答案错误。就挺纳闷的~~~

如有错误恳请大佬指点,感激不尽

算法题目来源:https://www.dotcpp.com/

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值