When Fortran 90 arrived, it came with a new option for the source file format – the free-form Fortran source format. The current common convention is that .f signifies the old fixed format source (statements in col-7 or later, C in col-1 for comments, etc.), and .f90 is for free format Fortran source. Nothing is implied regarding the standard that the program conforms with. You can have a Fortran II program in a free form .f90 file, and you can have (with a few exceptions) a Fortran 2018 program in a fixed form .f file.
Here is an old Fortran II program in free form. Save it to a .f90 file and run it through your compiler.
PROGRAM TRIANGLE
! AREA OF A TRIANGLE - HERON'S FORMULA
! INPUT - CARD READER UNIT 5, INTEGER INPUT
! OUTPUT -
! INTEGER VARIABLES START WITH I,J,K,L,M OR N
! https://en.wikibooks.org/wiki/Fortran/Fortran_examples#Simple_Fortran_II_program
READ(5,501) IA,IB,IC
501 FORMAT(3I5)
IF (IA) 701, 777, 701
701 IF (IB) 702, 777, 702
702 IF (IC) 703, 777, 703
777 STOP 1
703 S = (IA + IB + IC) / 2.0
AREA = SQRT( S * (S - IA) * (S - IB) * (S - IC) )
WRITE(6,801) IA,IB,IC,AREA
801 FORMAT(4H A= ,I5,5H B= ,I5,5H C= ,I5,8H AREA= ,F10.2, &
13H SQUARE UNITS)
STOP
END
Some compilers (including Gfortran) will even take the following fixed form version, with semicolons separating multiple statements (created using Ian Harvey’s utility, FixedFormForEver).
PROGRAMTRIANGLE;READ(5,501)IA,IB,IC
501 FORMAT(3I5);IF(IA)701,777,701
701 IF(IB)702,777,702
702 IF(IC)703,777,703
777 STOP1
703 S=(IA+IB+IC)/2.0;AREA=SQRT(S*(S-IA)*(S-IB)*(S-IC));WRITE(6,801)IA,
1IB,IC,AREA
801 FORMAT(4H A= ,I5,5H B= ,I5,5H C= ,I5,8H AREA= ,F10.2, 13H
2 SQUARE UNITS);STOP;END