Eur*_*ust 1 fortran module function fortran95
我刚刚开始在模块上创建一个菜单功能,我遇到致命错误,错误太多.我怀疑这可能是由于一个小错误而不是多个,因为代码现在非常简单.
有人有什么想法吗?
以下是我到目前为止的情况.显然我刚刚开始,但我很惊讶为什么会出现问题.非常感谢!
另外我对模块有点新意,所以我只是好奇你能告诉我这是不是如何编译它?g95 themenu.f95 -o ba ??
谢谢.
MODULE themenu
IMPLICIT NONE
INTEGER:: choices, opt
opt=choices()
CONTAINS
INTEGER FUNCTION choices ()
INTEGER:: opt
DO
PRINT*, "1: Add an item manually"
PRINT*, "2: Add item(s) from a file"
PRINT*, "3: Add random item from list of top ten list"
PRINT*, "4: Print list with totals"
PRINT*, "5: Sort list alphabetically"
PRINT*, "6: Sort list by price"
PRINT*, "7: Write list to file"
PRINT*, "8: EXIT"
PRINT*, " "
PRINT*, "Please make your selection (enter a number): "
READ*, opt
IF (opt>=1 .AND. opt<=8)EXIT
PRINT*, "INVALID CHOICE. MUST BE A NUMBER 1-8. PLEASE TRY AGAIN!"
END DO
choices=opt
END FUNCTION
END MODULE
Run Code Online (Sandbox Code Playgroud)
谢谢!到目前为止,使用此模块的程序看起来像这样:
PROGRAM listman
USE themenu
IMPLICIT NONE
END PROGRAM
Run Code Online (Sandbox Code Playgroud)
您不能在模块中包含赋值语句,只能包含数据类型规范和CONTAINS包含过程的部分.
MODULE themenu
CONTAINS
INTEGER FUNCTION choices ()
IMPLICIT NONE
INTEGER:: opt
....
END FUNCTION
END MODULE
PROGRAM listman
USE themenu
IMPLICIT NONE
INTEGER :: opt
opt=choices()
END PROGRAM
Run Code Online (Sandbox Code Playgroud)