FORTRAN语言:用冒泡法排序将N个数(即动态一维数组)从大到小排列……基本思路是:对N个数,从第一个到第N个,主次比较相邻两个,大放前,这样得到的最小的数就放在了最后,然后从第一个到第N-1个再逐次比较……第二小的放在倒数第二. 急求解答~~明儿就考试了~~

问题描述:

FORTRAN语言:用冒泡法排序将N个数(即动态一维数组)从大到小排列……
基本思路是:对N个数,从第一个到第N个,主次比较相邻两个,大放前,这样得到的最小的数就放在了最后,然后从第一个到第N-1个再逐次比较……第二小的放在倒数第二. 急求解答~~明儿就考试了~~

real*8 :: a(n)
real*8 :: temp
integer :: i,j
do i=1,n-1
do j=i+1,n
if (a(i) .lt. a(j)) then
temp = a(i)
a(i) = a(j)
a(j) = temp
endif
enddo
enddo