"Formatted" basically means text output - i.e. human readable. The alternative is "unformatted", which allows the processor to write the file using bits and bytes (or whatever its equivalent is) rather than text. In C, the distinction is made at the library call level - fprintf (~formatted) versus fwrite (~unformatted).
Your read statement uses what is known as list directed formatting (nominated by the *
in the second position of the parenthesised list) - the format of the input is determined based on the list of items in the input, rather than being explicitly specified by the programmer. The language has a set of rules around how input is translated under list directed formatting - rules that made a lot of sense back in the day of punched cards, but may surprise users of today. As a brutally incomplete summary - records (which may be multiple lines) will be read from the file until three values have been read Those values will be interpreted as integers. Values within a record may be separated by commas or blanks.
Assuming the bold formatting was inadvertent (if not, the line is a syntax error, the Fortran 90 processor will give you a diagnostic, the number of ways in which to get a syntax error in the C language is rather large) the line starting with D_IN
is an assignment statement. The value of the expression on the right of the =
will be assigned to the variable on the left. The equivalent C is almost a literal transcription (you would typically need to append f
after the floating point constants to use the analogous numeric type, but this depends on the specifics of your Fortran processor and C implementation).