C语言:计算同一年内两个日期的相隔天数

C语言:计算同一年内两个日期的相隔天数

代码思路:
1.不同月 :总天数 = 开始月剩余天数+间隔月天数+截至日
2.相同月:总天数 = 截至日-开始日

代码编写:

#include<stdio.h>
int main()
{
	int y1,y2,m1,m2,d1,d2,l,m,n,o,a = 0,day;
	
	printf("请输入开始日期:\n"); 
    scanf("%d%d%d",&y1,&m1,&d1);
	printf("请输入截至日期:\n");
	scanf("%d%d%d",&y2,&m2,&d2);
	
	//月份天数判定 
	
    if(m1==1||m1==3||m1==5||m1==7||m1==8||m1==10||m1==12)  m = 31;
    else if(m1==4||m1==6||m1==9||m1==11) m = 30;
    else if(y1%4==0&&y1%100!=0||y1%400==0) m = 29;
	else m = 28;
	
    l = m2-m1-1;
    //不同月天数计算
    if(l>=0)
  {
    for(l;l>0;l--)
    {
	o = m1+l;
	if(o==1||o==3||o==5||o==7||o==8||o==10||o==12)  n = 31;
	else n = 30;
	a = a+n;		   //间隔月天数计算
	}
    day = m-d1 + a+d2; //总天数计算 
    printf("距离截止日期剩余%d天\n",day);
  }
  //相同月天数计算
  else 
  { day = d2-d1;
  printf("距离截止日期剩余%d天\n",day);
  }
	return 0;
} 

结果:

请输入开始日期:
2022
10
24
请输入截至日期:
2022
12
30
距离截止日期剩余67天


Process exited normally.
Press any key to continue . . .
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值