在线 Fortran 编译器

在浏览器中编写、编译并运行 Fortran 代码,适合学习、练习与快速验证。

Fortran 代码编辑器

输出

标准输出(stdout)

 

标准错误(stderr)

 

使用说明

  • 在左侧编辑器编写 Fortran 90/95 代码(例如以 program 开头,以 end program 结束)。
  • 点击“运行代码”即可在线编译并执行程序。
  • 右侧面板展示输出与错误信息。
  • 绿色区域为标准输出(例如 print * 输出)。
  • 红色区域为编译/运行错误与警告。
  • 执行信息包含退出码与运行状态。
  • 快捷键:Ctrl+Enter(Mac 上为 Cmd+Enter)。

Fortran 基础

基本结构:

program main
    print *, "Hello, Fortran!"
end program main

常见语法:

  • integer / real / logical / character(len=..)
  • if ... then ... else ... end if
  • do / end do 循环
  • containsfunction/subroutine

数组与循环

示例:

program arrays
    integer :: i
    integer, dimension(5) :: a = [3,7,1,9,4]
    integer :: maxv
    maxv = a(1)
    do i = 2, size(a)
      if (a(i) > maxv) maxv = a(i)
    end do
    print *, "Maximum:", maxv
end program arrays

过程与函数

函数示例:

program proc_demo
    implicit none
    print *, add(2,3)
contains
    integer function add(a,b)
      integer, intent(in) :: a,b
      add = a + b
    end function add
end program proc_demo

常见问题

支持哪些 Fortran 标准?

通常支持 Fortran 90/95 等常见标准,具体实现以后端环境为准。

可以使用第三方库吗?

可使用标准语法与内建特性。由于运行在沙箱中,第三方系统库/网络访问不可用。

运行是否有时间限制?

有。为避免死循环并保证公平使用,编译/运行都有时间限制,超时会自动终止。

可以保存代码吗?

暂不支持在线保存。建议将重要代码复制到本地,或使用收藏夹/笔记工具保存片段。

运行时可以交互输入吗?

当前不支持交互式输入(如 read * 等)。如需测试,可将测试数据写死在代码中,或用固定数据替代。

示例程序(点击上方运行)

1. 迭代计算阶乘

program factorial
    integer :: i, n, acc
    n = 5; acc = 1
    do i = 2, n; acc = acc * i; end do
    print *, "5! =", acc
end program factorial

2. 一维数组求和

program sum_array
    integer, dimension(5) :: a = [1,2,3,4,5]
    integer :: total
    total = sum(a)
    print *, "sum =", total
end program sum_array