早教吧 育儿知识 作业答案 考试题库 百科 知识分享

几道简单的fortran的题IF(x.LT.1.0)THENY=.FALSE.这里面哪里不符合语法规定?程序:K=0DO10I=1,6,2DO10J=1,6,3IF(K.LT.I*J)K=I*J10CONTINUEWRITE(*,*)KENDA18B30C25D36为什么答案是C?I取5时j只能取4啊,没20这个答案?F

题目详情
几道简单的fortran的题
IF(x.LT.1.0) THEN Y=.FALSE.这里面哪里不符合语法规定?
程序:K=0
DO 10 I=1,6,2
DO 10 J=1,6,3
IF(K.LT.I*J)K=I*J
10 CONTINUE
WRITE(*,*)K
END
A18 B30 C25 D36 为什么答案是C?I取5时j只能取4啊,没20这个答案?
FORMAT和 WRITE命令括号内,为什么有时1X表示空一格,有时是提行啊,
另外大于小于符号优先逻辑运算符,那逻辑的.NOT.AND OR EQV 的顺序呢
▼优质解答
答案和解析
1、
要么删去then:
if (x .lt. 1.0) y=.false.
要么加end if:
if (x .lt. 1.0) then
y=.false.
end if
2、
我觉得是选项错了,应为20.我运行过了.
3、
1X就是空一格,我不明白你说的提行是什么意思.能否详细解释一下?
4、
逻辑运算符的优先级如下;
(1).NOT.
(2).AND.
(3). OR.
(4). EQV.与.NEQV. 这两个运算符按照先左后右的原则进行运算.
这是网上搜的.我自己的习惯:优先级不明的时候就多用括号.
有问题再交流