| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4069 人关注过本帖, 2 人收藏
标题:计算输入的日期与1949年10月1日距离多少天
取消只看楼主 加入收藏
huwengui
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:166
专家分:158
注 册:2011-4-22
结帖率:83.33%
收藏(2)
已结贴  问题点数:5 回复次数:2 
计算输入的日期与1949年10月1日距离多少天
从键盘输入一个日期,格式为yyyy-M-d
要求计算该日期与1949年10月1日距离多少天
例如:
用户输入了:1949-10-2
程序输出:1
用户输入了:1949-11-1
程序输出:31
搜索更多相关主题的帖子: 用户 
2011-04-25 21:26
huwengui
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:166
专家分:158
注 册:2011-4-22
收藏
得分:0 
#include<stdio.h>
int main()
{
 long int sy,sm,sd,ey,em,ed,d;
 long int a1,de1,de2,ds1,ds2,i,r,m,l=0;
 int md[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
 scanf("%d %d %d",&sy,&sm,&sd);

 for(de1=ed,i=em-1;i>0;i--)
  de1+=md[i];
 for(ds1=sd,r=sm-1;r>0;r--)
  ds1+=md[r];
 for(m=sy+1;m<ey;m++)
 {
  if(m%4==0&&m%100!=0||m%400==0)
   l+=1;
  else ;
 }
 a1=(sy%4==0&&sy%100!=0||sy%400==0);
 if (a1&&sm>2)
  ds2=365-ds1;
 else ds2=366-ds1;
 if ((ey%4==0&&ey%100!=0||ey%400==0)&&em>2)
  de2=de1+1;
 else de2=de1;
 if (sy==ey)
 {
  if (a1) d=ds2+de2-366-1;
  else d=ds2+de2-365-1;
 }
 else d=ds2+de2-1+l*366+(ey-sy-1-l)*365;
 printf("%ld",d);
}
2011-04-25 22:37
huwengui
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:166
专家分:158
注 册:2011-4-22
收藏
得分:0 
上面都是两个输入的年份差,,现在求和题目要求一样的~~~
2011-04-25 22:38
快速回复:计算输入的日期与1949年10月1日距离多少天
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020399 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved