fortran输入年月日输出该日期是这一年的第几天,不不不是c++
https://blog.csdn.net/Genius_zz/article/details/78104634
!************************************************************
! 功能: 返回当前日期是今年的第几天
! 返回值: GetDayOrder(2字节整型),
! 输入参数: year,month,day(均为2字节整型),分别代表!
! 年、月、日
!************************************************************
function GetDayOrder(year,month,day)
implicit none
integer(2),intent(in) :: year
integer(1),intent(in) :: month,day
integer(1),parameter :: cd(11)=(/31,28,31,30,31,30,31,31,30,31,30/)
integer(2) GetDayOrder
integer(1) i
GetDayOrder=day
do i=1,month-1
GetDayOrder=GetDayOrder+cd(i)
end do
if(month>2.and.leapyear(year)) GetDayOrder=GetDayOrder+1
end function GetDayOrder
!************************************************************
! 功能: 判断是否闰年
! 返回值: LeapYear(1字节逻辑型),闰年则返回.true.
! 输入参数: year(2字节整型),代表年份
!************************************************************
function LeapYear(year)
implicit none
integer(2),intent(in) :: year
logical(1) LeapYear
if(mod(year,4)/=0) then
LeapYear=.false.
else if(mod(year,100)/=0) then
LeapYear=.true.
else if(mod(year,400)/=0) then
LeapYear=.false.
else
LeapYear=.true.
end if
end function LeapYear