计算某一月有多少天
2013-07-12 15:53
253 查看
#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
}
#调用: 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
}
相关文章推荐
- 计算某一年的某一月有多少天。
- 6.15鸡兔同笼,共有98个头,386只脚,请用穷举法编程计算鸡兔共有多少只。
- 楼梯有n阶台阶,上楼可以一步上1阶,2阶,3阶,编程序计算共有多少种不同的走法?
- javascript 计算日期之间相隔多少天
- C#关于日期月天数和一年有多少周及某年某周时间段的计算
- 带宽和下载速率 及 给你一天的流量 大概计算出 需要多少带宽
- 如何计算出OS/400中有多少个Library
- 11.07,上课三程序,100内的素数,1000内的完数,输入一个数计算多少9
- 两个字符串形式的时间计算相差多少
- 按照现在银行利率计算,活期天利率是多少?
- C++初学者的足迹9 作业报告8 计算每月多少天
- 计算一个月里面有多少工作日和一年中的工作日
- 2. 计算出1900年1月1日至当前日期之间总共间隔多少天,将其除以7取余数,该结果即为当月第一天是星期几,按日历格式输出
- 例题:超市买东西的程序。输入商品信息,计算价格,价格满多少元打折。这道题用到结构体,集合,for循环,if else语句
- js计算文本域还能输入多少个字
- UVA 10127 Ones (数论) 计算至少要多少位十进制的1能够被n整除
- 计算字符串中有多少单词,并输出最长最短的单词。(c++primer 9.39)
- 计算你来到世界多少天
- 计算数字二进制中有多少个1
- cgroup告诉你如何计算 PostgreSQL 数据库实例用了多少内存