能写一个对输入数字从小到大排序的fortran程序吗
时间: 2023-05-23 19:06:26 浏览: 331
一个fortran小程序
3星 · 编辑精心推荐
A:
下面是一个简单的Fortran程序来对输入数字从小到大排序:
```
program sort
implicit none
integer, dimension(:), allocatable :: arr
integer :: i, j, n, temp
! Get the number of elements in the array
print *, "Enter the number of elements in the array:"
read *, n
! Allocate memory for the array
allocate(arr(n))
! Get the array elements from user
print *, "Enter the elements of the array:"
do i = 1, n
read *, arr(i)
end do
! Sorting the array elements
do i = 1, n - 1
do j = 1, n - i
if (arr(j) > arr(j + 1)) then
temp = arr(j)
arr(j) = arr(j + 1)
arr(j + 1) = temp
end if
end do
end do
! Display the sorted array
print *, "The sorted array is:"
do i = 1, n
print *, arr(i)
end do
! Deallocate memory
deallocate(arr)
end program sort
```
该程序使用两个循环来排序数组中的元素:外部循环控制遍历所有元素,而内部循环则比较相邻元素并交换它们的位置,如果需要的话。最后,该程序通过循环打印数组中的元素来显示已排序的数组。
阅读全文