面试题答案
一键面试program main
real :: array(10)
real :: average
integer :: i
! 初始化数组为从1.0到10.0的等差数列
do i = 1, 10
array(i) = real(i)
end do
! 调用子程序计算平均值
call calculate_average(array, average)
write(*,*) '数组的平均值为:', average
end program main
subroutine calculate_average(arr, avg)
real, intent(in) :: arr(:)
real, intent(out) :: avg
integer :: i
real :: sum
sum = 0.0
do i = 1, size(arr)
sum = sum + arr(i)
end do
avg = sum / real(size(arr))
end subroutine calculate_average