大菠萝 发表于 2022-1-29 18:40:26

疑问goto语句逻辑判断

想做个逻辑判断 但是不知道语法怎么写 求指点
PROGRAM AAA

IMPLICIT NONE
LOGICAL Y,N,NN

100 WRITE(*,*) "Y/N?"
    READ(*,*) NN
IF (Y=NN) THEN
    GOTO 200
ELSE IF (N=NN) THEN
    GOTO 300   
ELSE
   GOTO 100
END IF
200 WRITE(*,*) "200"
300 WRITE(*,*) "300"

END

fcode 发表于 2022-1-31 14:58:22

1. 不建议全部大写。现代代码应该大小写混合。
2. 相等判断应该用 == 而非 =
3. 现代代码,尽量避免用语句标号。
4. NN应定义为字符类型。而非逻辑类型。Y 和 N 也建议用字符,并且用常量更便于理解。

Program AAA
Implicit None
Character NN
Do
    write(*,*) "Y/N?"
    read(*,*) NN
    If ( 'Y'==NN ) then
      write(*,*) "200"
    Else If ( 'N'==NN ) then
      write(*,*) "300"
    Else
      cycle
    End If
    exit
End Do
End Program AAA

大菠萝 发表于 2022-2-13 09:05:58

明白了谢谢
页: [1]
查看完整版本: 疑问goto语句逻辑判断