zoukankan      html  css  js  c++  java
  • 求输出此日期是该年的第几天

     1 /* Note:Your choice is C IDE */
     2 #include "stdio.h"
     3 
     4 /*编写一个计算天数的程序,
     5 *用户从键盘输入年、月、日,
     6 *在屏幕输出此日期是该年的第几天
     7 */
     8 /*自定义函数leap(),判断输入的年份是否为闰年*/
     9 int leap(int a)
    10 {
    11     //闰年是公历中的名词,能被4整除但不能被100整除,或能被400整除的年份即为闰年
    12     if(a%4==0&&a%100!=0||a%400==0)//闰年判定条件
    13     {
    14         return 1;//是闰年返回1
    15     }
    16     else
    17     {
    18         return 0;/*不是闰年返回0*/
    19     }
    20     }
    21 
    22 /*自定义函数number(),计算输入的日期为该年的第几天*/
    23 int number(int year,int m,int d)
    24 {
    25     int sum=0,i,j,k,a[12]=
    26     {
    27         31,28,31,30,31,30,31,31,30,31,30,31
    28     };//数组a存放平年每月的天数
    29     int b[12]=
    30     {
    31         31,29,31,30,31,30,31,31,30,31,30,31
    32     };//数组b存放闰年每月的天数
    33     if(leap(year)==1)//判断是否为闰年
    34     {
    35         
    36         for(i=0;i<m-1;i++)
    37         {    
    38         sum+=b[i];//是闰年,累加数组b前m-1个月份的天数
    39         }
    40     }
    41     else
    42     
    43         for(i=0;i<m-1;i++)
    44         {
    45         sum+=a[i];//不是闰年,累加数组a前m-1个月份的天数
    46         
    47         }
    48         sum+=d;//将前面累加的结果加上日期,求出总天数
    49         return sum;//返回计算的天数
    50     }
    51 void main()
    52 {
    53   int year,month,day,n;
    54   printf("请输入年月日:
    ");
    55   scanf("%d%d%d",&year,&month,&day);//输入年月日
    56   n=number(year,month,day);//调用函数
    57   printf("第%d天
    ",n);
    58 }

    /*****************************************************************************/

    自己独里做的

     1 /* Note:Your choice is C IDE */
     2 #include "stdio.h"
     3 /*编写一个计算天数的程序,
     4 *用户从键盘输入年、月、日,
     5 *在屏幕输出此日期是该年的第几天
     6 */
     7 /*
     8 *键盘输入年月日
     9 *年的左右是判断是否是闰年
    10 *月放进一个数组循环加进去
    11 *日直接加
    12 */
    13 void main()
    14 {
    15     int i,sum=0,year,month,day;
    16     //闰年使用
    17     int a[12]={31,29,31,30,31,30,31,31,30,31,30,31};
    18     //不是闰年使用
    19     int b[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    20  printf("请输入年月日:
    "); 
    21  scanf("%d%d%d",&year,&month,&day);
    22  //判断是否为闰年
    23  if(year%4==0&&year%100==0||year%400==0)//是闰年时
    24  {
    25      printf("%d是闰年
    ",year); 
    26      //没输入的月数-1加进来
    27      for(i=0;i<month-1;i++)
    28      {
    29          sum+=a[i];
    30      }
    31      
    32  }
    33  else//不是闰年
    34  {
    35      for(i=0;i<month-1;i++)
    36      {
    37          sum+=b[i];
    38      }
    39  }
    40      sum+=day;
    41  
    42   printf("第%d天",sum); 
    43 }

     

  • 相关阅读:
    微软职位内部推荐-SENIOR SDE
    微软职位内部推荐-Senior Network Engineer
    微软职位内部推荐-Principal Dev Manager
    微软职位内部推荐-SDE II
    微软职位内部推荐-Sr DEV
    【转载】NIO服务端序列图
    【转载】NIO客户端序列图
    同步与异步
    Linux查找命令
    Spring中Bean的实例化
  • 原文地址:https://www.cnblogs.com/kinson/p/7684158.html
Copyright © 2011-2022 走看看