子程序: 11 第1行是注释行; 第2行是子程序的头, function说明该子程序为函数子 程序,函数名为c,形参为r 第3行是赋值语句; 第4行是计算赋值语句,将计算结果赋给函数名c; 第5行end表示子程序结束,返回到调用它的主程序。 c子程序 function c(r) i=3.1415926 C=2.0 pi*r end §2简单的 Fortran程序分析 2021/2/24
11 2021/2/24 子程序: 第1行是注释行; 第2行是子程序的头,function说明该子程序为函数子 程序,函数名为c,形参为r; 第3行是赋值语句; 第4行是计算赋值语句,将计算结果赋给函数名c; 第5行end表示子程序结束,返回到调用它的主程序。 §2 简单的Fortran程序分析 C 子程序 function c(r) pi=3.1415926 c=2.0*pi*r end
c主程序 12 program ex3 2 write(,)'r=,1.0,"C=,c(1.0 write(*,)'r=,3.0,'c=,c(3.0) write(,)Tr=,120,"c=;c(120) write(*,)'r=,5.0,'c=,c(50) end 主程序: 第1行是注释行; 第2行称为“程序语句”,其作用是为主程序起个名字, 以便识别,可有可无; 第3~6行是输出语句,在调用函数子程序时,通过给 形参传递不同的实参值而得到相应的圆周长 §2简单的 Fortran程序分析 2021/2/24
12 2021/2/24 §2 简单的Fortran程序分析 C 主程序 program ex3_2 write(* , *) 'r=', 1.0, ' c=', c(1.0) write(* , *) 'r=', 3.0, ' c=', c(3.0) write(* , *) 'r=', 12.0, ' c=', c(12.0) write(* , *) 'r=', 5.0, ' c=', c(5.0) end 主程序: 第1行是注释行; 第2行称为“程序语句”,其作用是为主程序起个名字, 以便识别,可有可无; 第3~6行是输出语句,在调用函数子程序时,通过给 形参传递不同的实参值而得到相应的圆周长
Fortran77程序小结: 13 (3)一个程序由一个或若干个程序单元组成。主 程序和每一个子程序分别是一个程序单元。 个程序单元也叫做一个模块或程序段,体 现了结构化程序设计的模块化思想。 (2)每个程序单元都以“end束。主程序中 end语句表示整个程序结束,子程序中end语句表 示结束子程序,返回到调用它的程序单元。 每个程序单元只能有一个end语句。如果在程 序中间需要中止运算或返回,可以用stop语句或 用 return语句。 §2简单的 Fortran程序分析 2021/2/24
13 2021/2/24 Fortran77程序小结: ⑴ 一个程序由一个或若干个程序单元组成。主 程序和每一个子程序分别是一个程序单元。 一个程序单元也叫做一个模块或程序段,体 现了结构化程序设计的模块化思想。 ⑵ 每个程序单元都以“end”结束。主程序中 end语句表示整个程序结束,子程序中end语句表 示结束子程序,返回到调用它的程序单元。 每个程序单元只能有一个end语句。如果在程 序中间需要中止运算或返回,可以用stop语句或 用return语句。 §2 简单的Fortran程序分析
) Fortran7视定,一行只能写一个语句,一荇 中不能写多个语句。若一个语句太长,在一行内写 不完,可以在下行继续写(但要用续行标志)。 Fortran语言不区分大小写。 (4) Fortran程序中的语句可以在前面加标号,标 号的作用是标志一个语句以便被其它语句引用。 (5)某些语句的位置是固定的,如 program语句 只能是主程序的第一个语句,nd句只能写在各 程序单元的最后一行。 (6) Fortran源程序必须按一定的袼式输入。哪些 内容应写在一行中的哪一列或唧几列都有严格的规 定。 §2简单的 Fortran程序分析 2021/2/24
14 2021/2/24 ⑶ Fortran77规定,一行只能写一个语句,一行 中不能写多个语句。若一个语句太长,在一行内写 不完,可以在下行继续写(但要用续行标志)。 Fortran语言不区分大小写。 ⑷ Fortran程序中的语句可以在前面加标号,标 号的作用是标志一个语句以便被其它语句引用。 ⑸ 某些语句的位置是固定的,如program语句 只能是主程序的第一个语句,end语句只能写在各 程序单元的最后一行。 ⑹ Fortran源程序必须按一定的格式输入。哪些 内容应写在一行中的哪一列或哪几列都有严格的规 定。 §2 简单的Fortran程序分析
§3 Fortran源程序格式(p49-50)15 分为注释行和语句行两类 ◆注释行:在该行的第1列写“C”或“*”,注释 的内容写在第2~80列之间 ◆语句行 ◆1~5列为标号区。如语句需加标号,则放在 该区域。标号是1~5位的无符号整数。 ◆第6列为续行标志区。若一行的第6列有一个 非婴非空格的字符,则表示该行是上一行的继续。 ◆7~72列为语句区。语句写在该范围内。 2021/2/24
15 2021/2/24 分为注释行和语句行两类: ❖ 注释行:在该行的第1列写“C”或“*”,注释 的内容写在第2~80列之间。 ❖ 语句行 1~5列为标号区。如语句需加标号,则放在 该区域。标号是1~5位的无符号整数。 第6列为续行标志区。若一行的第6列有一个 非零非空格的字符,则表示该行是上一行的继续。 7~72列为语句区。语句写在该范围内。 §3 Fortran源程序格式(p49-50)