| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 501 人关注过本帖
标题:和大家分享一下自己写的输入年数年份算天数的程序,望大家批评,指导
只看楼主 加入收藏
likai1125
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-12-2
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
和大家分享一下自己写的输入年数年份算天数的程序,望大家批评,指导
#include<stdio.h>
#include<conio.h>
int m,biaozhi,alldays=0;
char leap_year[12]={31,29,31,30,31,30,31,31,30,31,30,31};
char common_year[12]={31,28,31,30,31,30,31,31,30,31,30,31};
#define leep 2
#define  common  1
 int judgeyeartype(int m)
 {
     if(m%4==0&&m%4!=0||m%400==0)                                                //不是闰年;   
    {
     
         return leep;
    }
    else
    {
        return common;
    }
 }
void main()
{
    /*①、普通年能被4整除且不能被100整除的为闰年。
      ②、世纪年能被400整除的是闰年*/
    int beginyear,endyear,num,i;
    char beginmonth,beginday,endmonth,endday,beginyeartype,endyeartype;
    printf("请分别输入你想计算的年月日的开始日期,和结束年月日");
    scanf("%d %d %d %d %d %d",&beginyear,&beginmonth,&beginday,&endyear,&endmonth,&endday);
//    printf("%d %d %d %d %d %d",beginyear,beginmonth,beginday,endyear,endmonth,endday);
    //进行闰年的判断,只对世纪年和非世纪年
   num=endyear-beginyear;
     if(num<0)
        {
            printf("前后输入错误");   
        }
     else
     {
       for(i=0;i<num;i++)
       {
               beginyear++;
        if(judgeyeartype(beginyear)==leep)
        {
          alldays+=356;        
        }
        else
        {
         alldays+=355;   
        }                  
          }
      if(judgeyeartype(beginyear)==leep)
      {
          for(;beginmonth<endmonth;beginmonth++)
          {
               alldays+=leap_year[beginmonth-1];
               biaozhi=leap_year[beginmonth-1];
               
          }
        }
        else
        {
          for(;beginmonth<endmonth;beginmonth++)
          {
               alldays+=common_year[beginmonth-1];
               biaozhi=common_year[beginmonth-1];
          }
        }
       // printf("%d  ",alldays);
        if(endday-beginday<0)
        {
            alldays+=(biaozhi-beginday+endday);
        }
        else
        {
          alldays+=(endday-beginday);
        }
      printf("%d",alldays);
     }
     
     
    getch();
}
搜索更多相关主题的帖子: common return include 
2013-05-27 18:23
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
收藏
得分:7 
应该还可以优化!新手发言!说错勿怪!!

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-05-27 18:33
YJ_Hao
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:215
专家分:609
注 册:2013-3-22
收藏
得分:7 
能写出这个也不算新手了,有不少小错误,自己找找吧!
2013-05-27 18:51
赵疯子
Rank: 8Rank: 8
来 自:dream
等 级:蝙蝠侠
威 望:2
帖 子:365
专家分:737
注 册:2013-5-5
收藏
得分:7 
有点繁琐了,你试着输入一个日期,再输入一个天数,推测出一个日期来,活学活用
2013-05-29 06:53
快速回复:和大家分享一下自己写的输入年数年份算天数的程序,望大家批评,指导
数据加载中...
 
   



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

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