指定格式的输入
read(*,'(5f10.5)')a,b,c,d,e
! 5表示读取5个数
! f表示实数型
! 10表示全部10位含小数点和空格
! .5表示小数点以下有5位
指定格式的输出
write(*,'(1x,2f5.3)')x1,x2
! 1x表示在正下一行显示
其他表示法
(1)
program projection
implicit none
integer::a
integer::b
real::c
read(*,'(2i10)')a,b
! 2个数,整数,以10位处理
c=a/b
write(*,'(1x,1f10.5)')c
end program
效果:
(2)
program projection
implicit none
real::a,b,c
read(*,'(2f5.2)')a,b
c=a/b
write(*,'(1x,1e10.5)')c
end program
效果:
(3)
program projection
implicit none
real::a,b,c
read(*,'(2f5.2)')a,b
c=a/b
write(*,'(1x,1e10.5)')c
end program
效果:
(4)
program projection
implicit none
real::a,b,c
read(*,'(2f5.2)')a,b
c=a/b
write(*,'(1x,1g10.5)')c
end program
效果:
计算 (指定格式)
竖式计算4:23:56~15:9:32经过的时间长度
将时分秒统一以秒计算后再化回时分秒, 全部量指定为整数处理即可
program time_calculation
implicit none
integer::H1,M1,S1,K1
integer::H2,M2,S2,K2
integer::H3,M3,S3,K3,MM
read(*,*)H1,M1,S1
read(*,*)H2,M2,S2
K1=3600*H1+60*M1+S1
K2=3600*H2+60*M2+S2
K3=K2-K1
H3=K3/3600
MM=K3-3600*H3
M3=MM/60
S3=MM-60*M3
write(*,601)H2,'时',M2,'分',S2,'秒' &
,H1,'时',M1,'分',S1,'秒(-'&
,'--------------------'&
,H3,'小时',M3,'分',S3,'秒'
601 format( &
'',i2,a,i2,a,i2,a/&
'',i2,a,i2,a,i2,a/&
'',a/ &
'',i2,a,i2,a,i2,a)
stop
end program
15时 9分32秒
4时23分56秒(-
--------------------
10小时45分36秒
含过程计算等腰三角形面积
注意角度制换成弧度制再代入sin函数中
program area_calculation
implicit none
real::a,d,r,s
write(*,'(a)')'输入腰长a(cm),角度d(°)'&
,'并以科学计数法表示结果'
read(*,*)a,d
r=3.141592654*(d/180.0)
! 角度转弧度
s=1.0/2.0*sin(r)*(a**2)
write(*,'(a)')'s=1/2·sin(d°)·a^2'
write(*,154)s,'(cm^2)=1/2·sin(',d,')°·(',a,')^2'
154 format('',e9.3,a,e9.3,a,e9.3,a)
! 格式指定
stop
end program
输入腰长a(cm),角度d(°)
并以科学计数法表示结果
2612,491
s=1/2·sin(d°)·a^2
0.257E+07(cm^2)=1/2·sin(0.491E+03)°·(0.261E+04)^2