MST
星途 面试题库

面试题:Fortran时间日期函数复杂应用

假设你有一个包含一系列时间点(格式为YYYY - MM - DD HH:MM:SS)的文本文件,使用Fortran语言,结合时间日期函数,统计出这些时间点中每个月出现的次数,并按月份顺序输出结果,写出完整的程序代码。
10.4万 热度难度
编程语言Fortran

知识考点

AI 面试

面试题答案

一键面试
program count_months
    implicit none
    character(len=20) :: line
    integer :: i, unit_num, month, count(12)
    integer :: year, day, hour, minute, second
    count = 0

   ! 打开文件
    open(newunit = unit_num, file = 'time_points.txt', status = 'old')

    do
       ! 逐行读取文件
        read(unit_num, '(a)', end = 100) line
        read(line, '(i4,i1,i2,i1,i2,i1,i2,i1,i2,i1,i2)') year, month, day, hour, minute, second
        count(month) = count(month) + 1
    end do
100 continue

   ! 输出结果
    do i = 1, 12
        write(*, '(i2, ": ", i5)') i, count(i)
    end do

   ! 关闭文件
    close(unit_num)
end program count_months