c语言循环操作对堆栈进行操作,C语言计算日期差的方法示例

本文实例讲述了C语言计算日期差的方法。分享给大家供大家参考,具体如下:

历史上,不同的人类聚居地可能有不同的历法,因而记录下来的资料中日期的换算就很麻烦。幸好今天我们统一使用公元纪年法。当然,这种历法对求两个日期差多少天也不是十分简便,但毕竟是可以忍受的。

下面的程序计算了两个日期的差值,两个日期都使用公元纪年法。

#include

using namespace std;

int to_day(int y, int m, int d)

{

int mon[] = {0,31,28,31,30,31,30,31,31,30,31,30,31};

int day = 0;

int i;

for(i=1; i

day += (i%4==0 && i%100!=0 || i%400==0)? 366 : 365;

}

if(y%4==0 && y%100!=0 || y%400==0) mon[2]++;

for(i=1; i

day += mon[i];

}

return day + d;

}

int diff(int y1, int m1, int d1, int y2, int m2, int d2)

{

int a = to_day(y1, m1, d1);

int b = to_day(y2, m2, d2);

return b-a;

}

int main(

{

//int n = diff(1864,12,31,1865,1,1);

int n = diff(1864,12,31,2012,3,18);

printf("%d\n", n);

return 0;

}

int n = diff(1864,12,31,2012,3,18);// 输出 53768

PS:这里再为大家推荐几款关于日期与天数计算的在线工具供大家使用:

在线日期/天数计算器:http://tools.jb51.net/jisuanqi/date_jisuanqi

在线万年历日历:http://tools.jb51.net/bianmin/wannianli

在线阴历/阳历转换工具:http://tools.jb51.net/bianmin/yinli2yangli

希望本文所述对大家C语言程序设计有所帮助。

时间: 2017-06-13

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值