ありゃ、間違えた。
program
real ::r,a
integer ::io
print *,'CTRL-Dを入力すると終了'
do while (io==0)
read (5,*,iostat=io) r
if (io==0) then
a=4*3.141592*r**2
print *,'半径=',r,'面積=',a
end if
end do
stop
end program

readをifの外側に出さないといかん。