❶ fortran編程錯誤
你的fortran程序有兩處問題,
1len=11寫成了len-11
2weekday寫成了weekend
完整的程序如下(改動的地方見注釋)
PROGRAM weekday_weekend
IMPLICIT NONE
CHARACTER(len=11)::c_day
CHARACTER(len=11)::c_type !這里把(len-11)改成(len=11)
WRITE(*,*)'Enter the name of the day:'
READ(*,*)c_day
SELECT CASE(c_day)
CASE('Monday','Tuesday','Wednesday','Thursday','Friday')
c_type='Weekday' !這里把Weekend改成Weekday
CASE('Saturday','Sunday')
c_type='Weekend'
CASE DEFAULT
c_type='Invalid day'
END SELECT
WRITE(*,*)'Day Type=',c_type
END PROGRAM weekday_weekend
❷ fortran編譯時停止工作
感覺是不兼容的問題,我以前在xp上運行fortran power station 4.0一點問題沒有,但是在win8上用時,第一次編譯連接及運行沒問題,但是第二次運行時就出現了跟你一樣的問題!
❸ intel visual fortran無法編譯fortran
ivf裡面對語句的嚴謹性要求較高,我以前很多在CVF裡面可以運行的程序在ivf裡面都會報錯。一般錯在變數聲明和傳遞當中,以前採用的辦法就是一個一個的修改。比如有時候數組傳遞使用arr(n)這種方式,而不用之前的arr(:)。
❹ 這個FORTRAN程序編譯通不過,是我的版本問題么
outputfile
在某些地方你寫錯了,寫成了 outptfile
另外,statues 應該是 status
❺ fortran 編譯器無法編譯大文件
既然懶得修改程序以符合新規范,那麼就去找個可以容忍老東西的編譯器
你可以試試看g77(gcc的Fortran77編譯器,支持Fortran66和Fortran77規范),
你的程序如果只是老而不是錯誤的話……總不會比1966版標准還古老吧。
不過g77通常在Linux/UNIX下面使用,而且新版Linux自帶的gcc4系列已經淘汰g77了,
也就是說你得找個足夠老的Linux或者足夠老的gcc(大概Linux Redhat9夠老)。
老的Linux對新電腦估計控制能力不夠,新電腦裝不上的話,就在虛擬機裡面裝。
當然了,完全沒碰過Linux的話,有這時間裝Linux早就把程序改好了。
❻ Fortran編譯失敗。
program main
integer::A,I,N ! 聲明變數類型
A=1
I=1
read(*,*)N
10 if( I.lt.N) then ! 這里只能用數字,不能用字母
I=I+1
A=A*I
goto 10 ! 同上,這里只能用數字,不能用字母
endif
print*,'A=',A
read(*,*) !可以不要,只是為了停住計算界面
end
❼ FORTRAN編譯就只有一個編譯錯誤無其他錯誤,但是無法編譯。
調出視圖---錯誤列表窗口即可,在VIEW裡面,快捷鍵ctrl+\然後ctrl+e。根據提示的錯誤修改代碼。
❽ Fortran在編譯時出現錯誤
1、串長的定義用了變數;
2、串中使用了全形的雙引號 或 轉義串部分無串界線符
❾ fortran 編譯出錯 error LNK2001:unresolved external symbol_SGN@4 急
sgn的參數必須是real*8的變數,因為沒看到您的調用語句,猜想您調用sgn時可能把參數寫成了k,比如:
xxx=sgn(k(i))
之類的~~~~
❿ 請問一個fortran編譯錯誤問題,是怎麼回事謝謝!
forrtl:
severe
(161):
program
exception
-
array
bounds
exceeded
這個錯誤指的不是數組大小溢出,而是訪問數組元素時超過了邊界。比如:
integer,dimension(10)::a
a(11)=1
請你仔細檢查一下。如有問題再交流,可以把程序貼上來。