编写fortran程序

来源:百度知道 编辑:UC知道 时间:2024/06/22 19:27:56
有A、B两个文件分别存放着整型数据,把既在A文件中存在,又在B文件中存在的整数找出存放到文件C中,使C中的每个数据各不相同。

!发现你发了三个帖子,给你写一个。
!2009-6-6晚编写,cvf6.5通过。
!数据文件要求:每行整数数据一个
!结果会自动写到c.txt中。
implicit none
integer,allocatable:: a(:),b(:),c(:),flag(:)
integer::RowA,RowB,i,j
character(len=1)::temp
!-------------------------------
!从a.txt中读数据至a数组
open(101,file="a.txt")
RowA=0
do while(eof(101)/=.true.)
read(101,"(a1)") temp
RowA=RowA+1
enddo
allocate(a(RowA))
rewind(101)
do i=1,RowA
read(101,*) a(i)
end do
close(101)
!-------------------------------
!从b.txt中读数据至b数组
open(102,file="b.txt")
RowB=0
do while(eof(102)/=.true.)
read(102,"(a1)") temp
RowB=RowB+1
enddo
allocate(b(RowB))
rewind(102)
do i=1,RowB
read(102,*) b(i)
end do
close(102)

!-------------------------------
!找a,b数组中不同的数据,用flag标记
allocate(c(rowa+rowb))
c(1:rowa)=a
c(rowa+1:rowa+rowb)=b