c语言计算两个不同日期间的天数.doc

c语言计算两个不同日期间的天数.doc

ID:50824771

大小:36.45 KB

页数:3页

时间:2020-03-15

c语言计算两个不同日期间的天数.doc_第1页
c语言计算两个不同日期间的天数.doc_第2页
c语言计算两个不同日期间的天数.doc_第3页
资源描述:

《c语言计算两个不同日期间的天数.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、#include#include#include#includestructdata{intyear,month,day;}d1,d2;intjudge(inta,intb,intc){intp[12]={31,28,31,30,31,30,31,31,30,31,30,31};inty[12]={31,29,31,30,31,30,31,31,30,31,30,31};if(b<=0

2、

3、b>12){printf("月数有错,请重新输入!");re

4、turn0;}if((a%4==0)&&(a%100!=0)

5、

6、(a%400==0)){if(c<=0

7、

8、c>y[b-1]){printf("日数有错,请重新输入!");return0;}}else{if(c<=0

9、

10、c>p[b-1]){printf("日数有错,请重新输入!");return0;}}return1;}intcount(inta,intb,intc){intp[12]={31,28,31,30,31,30,31,31,30,31,30,31};inty[12]={31,29,31,30,31,30,31

11、,31,30,31,30,31};intsum=0;if((a%4==0)&&(a%100!=0)

12、

13、(a%400==0))for(inti=0;i

14、

15、ch=='Y'){sum=0;do{printf("请输入第一个日期(中间用空格隔开):");scanf("

16、%d%d%d",&d1.year,&d1.month,&d1.day);k=judge(d1.year,d1.month,d1.day);}while(k==0);do{printf("请输入第二个日期(中间用空格隔开):");scanf("%d%d%d",&d2.year,&d2.month,&d2.day);k=judge(d2.year,d2.month,d2.day);}while(k==0);a=d1.year>d2.year?d1:d2;b=d1.year>d2.year?d2:d1;if(a.year==b.ye

17、ar)//当年份一样应该判断月份{if(d1.month>d2.month){a=d1;b=d2;}else{b=d1;a=d2;}}if(a.year==b.year&&a.month==b.month)//年份和月份一样应该判断天数大小{if(d1.day>d2.day){a=d1;b=d2;}else{a=d2;b=d1;}}for(p=b.year;p

18、

19、(p%400==0))sum+=366;elsesum+=365;}m=count(a.yea

20、r,a.month,a.day);n=count(b.year,b.month,b.day);if((b.year%4==0)&&(b.year%100!=0)

21、

22、(b.year%400==0))sum=sum+m-n;elsesum=sum+m-n;printf("%d",sum);printf("是否继续计算?(y/n):");getchar();//(接收无用的回车字符)ch=getchar();//ch=getch();}}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。