fortran语言编程
fortran语言中可通过定义子程序从而返回一系列变量值,而c语言的函数一般只能返回一个变量值。
Fortran语言的最大特性是接近数学公式的自然描述,在计算机里具有很高的执行效率。易学,语法严谨。可以直接对矩阵和复数进行运算,这一点类似MATLAB。自诞生以来广泛地应用于数值计算领域,积累了大量高效而可靠的源程序。很多专用的大型数值运算计算机针对Fortran做了优化。广泛地应用于并行计算和高性能计算领域。
C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。不同的变量类型可以用结构体(struct)组合在一起。只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。部份的变量类型可以转换,例如整型和字符型变量。通过指针(pointer),C语言可以容易的对存储器进行低级控制。预编译处理(preprocessor)让C语言的编译更具有弹性。
以下是求5阶方阵的逆矩阵,fortran77 程序。供参考。c求逆矩阵c在主程序中,设两个数组a(5,5),b(5,5)ca(5,5)--存放5阶方阵cb(5,5)--存放单位阵c在子程序中,设一个数组c(5,10),该数组是a、b阵拼接起来的c要实现数组的拼接和拆分,用公用语句实现real a(5,5),b(5,5)common /x/a,bdo 10 i=1,5do 10 j=1,5if (i.eq.j) thenb(i,j)=1elseb(i,j)=0endif10continuecall inversewrite(*,20)bwrite(*,*)write(*,20)((b(i,j),j=1,5),i=1,5)20format(1x,5f10.3)cread(*,*) endc ************************************subroutine inversereal c(5,10)common /x/cdo 10 k=1,5do 20 j=10,k,-120c(k,j)=c(k,j)/c(k,k)do 40 i=1,5if (i.ne.k) thendo 30 j=10,k,-130c(i,j)=c(i,j)-c(i,k)*c(k,j)endif40continue10continueendc ******************************block datareal a(5,5),b(5,5)common /x/a,bdata a/3,1,0,2,10,-2,0,1,3,1,9,3,1,0,1, 11,0,1,1,0,1,2,0,2,10/end
real function ave(a)implicit none
real :: a(20)
integer :: i
ave=0.0
do i=1,20
ave=a(i)+ave
end do
ave=ave/20.0
end function
subroutine compare(a,b)
implicit none
real :: a(20), b(20)
real,external :: ave
if (ave(a)<ave(b)) a=b
write(*,*) "average",ave(a)
end subroutine
program main
implicit none
real,external :: ave
real :: a(20), b(20)
real :: m
integer :: error
open (unit=10,file="data.txt",status="old",iostat=error)
if(error/=0) then
write(*,*) "open data.txt fail"
stop
else
read(10,*) a
read(10,*) b
end if
call compare(a,b)
write (*,*) a
end program
提前在文件data.txt文件中输入数据,格式如下
1.986,1.987,1.765,1.453,1.786...
2.976,2.654,3.7654,9.987,3.234..
我只写了五个数,放在源程序所在的文件夹中。
什么是计算机语言
计算机语言如下:C语言、C++语言、Java语言、Python语言、MASM、NASM、TASM、JavaScript、VBS、PHP、C#、Objective-C、Java、ORTRAN、MATLAB、SQL、PL\/SQL、ORACLE语言、HTML、XML、AJAX等。计算机语言(Computer Language)指用于人与计算机之间通讯的语言。计算机语言是人与计算机之间传递信息的媒介。计算机系统...
二维数组是如何存储的
2、 列优先存储 将数组元素按列向量排列,第i+1个列向量紧接在第i个列向量后面。【例】二维数组A[m][n]按列优先存储的线性序列为:A[0][0]、A[1][0]…A[m][0]、A[0][1]、A[1][1]…A[m][1]…A[m][1]、A[0][n]…A[m][n]ORTRAN语言中,数组按列优先顺序存储。
陟婷博欣: program...integer::number READ() NUMBER do i=2, number if (mod(number,i)==0) then '不是素数' end if end do end program
古田县18635624604: 如何编译fortran语言 - ?
陟婷博欣: 使用编译器将源代码编译成可执行程序.首先,你得确认你已经正确安装了任意一个FORTRAN编译器;然后,要保证源代码正确有效;第三,建立项目,开始编译,如果一切顺利就可以得到可执行文件.
古田县18635624604: fortran语言教程?
陟婷博欣: fortran就计算机语言里面来说,几乎是最简单的了,比c简单,十分容易上手. 你要的书 http://mail.ustc.edu.cn/~jfnano/fort/index.html 能看完就是高手了.里面的书首推彭国伦的. 需要去的中文fortran论坛: http://bbs.pfan.cn/bbs.asp?bbsid=16 www.fortran.cn 编译器用cvf或者ivf cvf: http://pickup.mofile.com/2072053180422376 ivf:www.verycd.com上搜intel fortran下载 ok.
古田县18635624604: fortran怎么运行 - ?
陟婷博欣: 第一步,打开调试环境(按装后在开始中会有): 第二步,如果没有project 的话,新建一个project; 第三步,将已有的fortran文件放到project里 第四步,built(就是编译); 第五步,执行程序即可(运行编译后程序).
古田县18635624604: 用fortran中的if或case语句编程 - ?
陟婷博欣: #include void main() { int arr[4]; int temp; printf("请输入4个整数:"); for(i=0;iarr[i+1]) { temp=arr[i];arr[i]=arr[i+1];arr[i+1]=temp } } for(i=0;i
古田县18635624604: FORTRAN是什么东东?
陟婷博欣: FORTRAN,亦译为福传,是英文 FORmula TRANslator 的缩写,译为“公式翻译器”,它是世界上最早出现的计算机高级程序设计语言,广泛应用于科学和工程计算领域.FORTRAN语言以其特有的功能在数值、科学和工程计算领域发挥着重...
古田县18635624604: 用fortran语言编写两段简单程序,一段用到循环语句,一段用到选择语句,在将程序改用C语言编写 - ?
陟婷博欣: 1、fortran循环 program main implicit none integer::i,sum i=0 sum=0 do while (i < 10) sum = sum + i end do endprogram 对应C循环#include <stdio.h>#include <stdlib.h> int main () { int i,sum; i=0; sum=0; while (i < 10) { sum = sum + i; } return 0; }2、...
古田县18635624604: Fortran95编程 - ?
陟婷博欣: 随便写了一个 program main real score(20),a integer i,j,k,ny,nl,nz,nj,nb read(*,*) (score(i),i=1,20) do i=1,19 k=0 a=score(i) do j=i+1,20 if(score(j)>a)then a=score(j) k=j endif enddo if(k==0)cycle score(k)=score(i) !将i+1到20中最大值与第i个值交换 ...
古田县18635624604: c语言和fortran语言可以结合编程吗? - ?
陟婷博欣: 可以.如 军酷儿所说“Fortran做成DLL动态库格式,在C中直接调用就行了”. 建议看一下彭国伦老师的fortran95程序设计一书
古田县18635624604: [FORTRAN]是什么意思 - ?
陟婷博欣: 1.公式变换 (= formula transformation).2.公式翻译,公3.公式转换器,公式翻译程序 (= formula translator).