fortran77关于do和if goto的问题

我学过fortran90,现在手头上有个程序是77的。对于goto语句让我很烦恼。现在有这样一个问题,这个代码可以正常输出吗?当i=10的时候,依然满足if的条件,然后就... 我学过fortran90,现在手头上有个程序是77的。对于goto语句让我很烦恼。现在有这样一个问题,这个代码可以正常输出吗?当i=10的时候,依然满足if 的条件,然后就跳回do 30,然后就死循环了
sum=0
do 30 i=1,10
sum=sum+i
if (i.LT.20) goto 30
30 continue
print*,sum
展开
 我来答
gcbjoy
2017-08-16 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:92%
帮助的人:2149万
展开全部
        sum=0
        do 30 i=1,10
        sum=sum+i
        if (i.LT.20) goto 30
30      continue
        print*,sum
        
略作修改,但和你的程序等价:
        sum=0
        do 30 i=1,10
        sum=sum+i
        if (i.LT.20) goto 30
30      continue
        write(*,*)sum
end      

----可以正常运行,结果为55。 只是你这个if语句完全可以删除!

        sum=0
        do 30 i=1,10
        sum=sum+i
c        if (i.LT.20) goto 30
30      continue
        write(*,*)sum
        end   
        
        ----结果也是55
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式