例程对应
Fortran FUNCTION SUBROUNTINE
C/C++ function (void)function
Fortran 整型变量(INTEGER)的类型
- !整数类型分为长整型和短整型
- !长整型的声明方法(使用4個bytes来存放整数)
- integer(kind=4) x_long !Fortran 90
- integer*4 y_long !Fortran 77
- integer(4) z_long !Fortran 77
- !短整型的声明方法(使用2個bytes来存放整数)
- integer(kind=2) x_short !Fortran 90
- integer*2 y_short !Fortran 77
- integer(2) z_short !Fortran 77
- !通常编译器会默认使用长整型
- !有的编译器还支持1bytes的整数类型
- integer(kind=1) x_byte !Fortran 90
- integer*1 y_byte !Fortran 77
- integer(1) z_byte !Fortran 77
Fortran浮点型变量(REAL)的类型
- !单精度浮点数的声明方法(使用4个字节)
- real(kind=4) x_float !Fortran 90
- real(4) y_float !Fortran 77
- real*4 z_float !Fortran 77
- !双精度浮点的声明方法(使用8个字节)
- real(kind=8) x_double !Fortran 90
- real(8) y_double !Fortran
- real*8 z_double !Fortran
Fortran复数型变量(COMPLEX)的类型
- !复数由实部和虚部组成,Fortran中用两个浮点数来保存
- complex(kind=4) a_single !单精度,Fortran 90
- complex(4) b_single !单精度,Fortran 77
- complex*4 c_single !单精度,Fortran 77
- complex(kind=8) a_double !双精度, Fortran 90
- complex(8) b_double !双精度, Fortran 77
- complex*8 c_double !双精度, Fortran 77
- !设置一个复数数值的方法
- !a=(x,y); x为实部,因为虚部
Fortran字符串变量(STRING)
- program stringtest
- !声明字符串的方法
- character(len=10) a !Fortran 90 添加
- character(10) b !Fortran 77
- character*20 c !Fortran 77
- character*(20) d !Fortran 77
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- character(len=20) e
- character(len=20) string
- character(len=6) first
- character(len=10) second
- character(len=20) add
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- !字符串赋值
- a="Hello" !Fortran 90 可用双引号来封装字符串
- b='Hello' !Fortran 77 只能用单引号来封装字符串
- c="That's right." !用双引号封装字符串时,可以在字符串中任意使用单引号
- d='That''s right.' !用单引号封转字符串时,输出单引号时要连续用两个单引号
- e="That's ""right""."!用双引号来封装时,输出双引号也要连续使用两个双引号
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- string="Good morning."
- write(*,*) string
- string(6)="evening." !重新设置从第6个字符之后的字符串
- write(*,*) string
- string(1:2)="Go" !字符串最前面两个字符变为”Go“
- string(13:13)="!" !字符串的第13个字符变为“!”
- first="Happy "
- second="Birthday"
- add=first//second !经过两个连续的除号可以连接两个字符串
- write(*,*) add
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- !一些常用函数
- !char(num) 返回计算机所使用的字符表上,数值num所代表的字符
- !ichar(char) 返回所输入的char字符在计算机所使用的字符表中所代表的编号,返回值是整数类型
- !len(string) 返回输入字符串的声明长度,返回值是整数类型
- !len_trim(string) 返回字符串去除尾端空格后的实际内容长度
- !index(string, key) 所输入的string可key都是字符串。这个函数会返回key这个“子字符串”在”母字符串“string中第一次出现的位置
- !trim(string) 返回把string字符串尾端多余空格清除后的字符串
- end
Fortran 逻辑变量(LOGICAL)
- program logicaltest
- logical(kind=4) a !用4 bytes来记录true/false, Fortran 90
- logical*4 b !Fortran 77
- logical(4) c !Fortran 77
- logical(kind=2) e !用2 bytes来记录true/false, Fortran 90
- logical*2 f !Fortran 77
- logical(2) g !Fortran 77
- !对变量赋值
- a=.true.
- b=.false.
- write(*,*) a,b
- end
Fortran 数组的声明
- <span style="font-size:18px;">!一维数组的声明
- integer x(10)
- integer, dimension(10) :: y
- integer z
- dimension z(10)
- !二维数组的声明
- integer x_2(10,10)
- integer,dimension(10,10):: y_2
- integer z_2
- dimension z_2(10,10)
- !特殊的声明
- integer x_s(5) !下标为1,2,3,4,5
- integer y_s(0:5) !下标为0,1,2,3,4,5
- integer z_s(-3:3) !下标为-3,-2,-1,0,1,2,3
- integer x_2s(5,0:5) !下标分别为1~5和0~5
- integer y_2s(2:3,-1:3) !下标分别为2~3和-1~3</span>