计算某一月有多少天

#1、取一年的某一月有多少天(对闰年进行了特殊的处理)函数
#调用: GetDays yy mm
#输入: 1. yy年份
#       2. mm月份
#输出: 一个月的天数
#       -1 不成功
#功能: 取一年的某一月有多少天(对闰年进行了特殊的处理)
###############################################################################
GetDays()
{
    yy_tmp=$1
    mm_tmp=`expr $2 + 0`

    if [ $? -ge 2 ]; then
       return -1
    fi         

    case $mm_tmp in

         1|3|5|7|8|10|12) ret_days=31
                          ;;
         4|6|9|11)        ret_days=30
                          ;;
         2)               ret_days=28
                          ;;
    esac

    if [ $mm_tmp -eq 2 ]; then

        yy_tmp1=`expr $yy_tmp / 4 \* 4`

        if [ $? -ge 2 ]; then
           return -1
        fi

        yy_tmp2=`expr $yy_tmp / 100 \* 100`

        if [ $? -ge 2 ]; then
           return -1
        fi

        yy_tmp3=`expr $yy_tmp / 400 \* 400`

        if [ $? -ge 2 ]; then
           return -1
        fi
 
        if [ $yy_tmp1 -eq $yy_tmp ]; then
           if [ $yy_tmp2 -eq $yy_tmp ]; then
              if [ $yy_tmp3 -eq $yy_tmp ]; then
                 ret_days=29
              fi
           else
              ret_days=29    
           fi           
        fi
     fi     
     return $ret_days
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值