FORTRAN基礎(chǔ)編程(1)——基本格式及輸出、讀入
以下內(nèi)容轉(zhuǎn)載木木公眾號(hào):易木木響叮當(dāng)
Fortran程序代碼的編寫(xiě)格式有兩種,Free Format(自由格式)及Fixed Format(固定格式)。Fortran程序代碼擴(kuò)展名為*.f或*.for的文件,就是指以Fixed Format 來(lái)編寫(xiě)的程序;以擴(kuò)展名為*.f90的文件,就是以Free format來(lái)編寫(xiě)的程序。
一、Fixed Format(固定格式)
固定格式的程序,對(duì)于字段的意義要求的比較明確,即我們只能在第7~72個(gè)字符位置編寫(xiě)我們的程序。
第1個(gè)字符C、c、*,表示該行為注釋行,不會(huì)被編譯第1-5個(gè)字符數(shù)字表示行代號(hào),否則空格第6個(gè)字符0以外的數(shù)字表示續(xù)行第7~72個(gè)字符程序編寫(xiě)區(qū)域第73個(gè)字符以后不被編譯,或編譯錯(cuò)誤
寫(xiě)到這里,木木強(qiáng)烈推薦大家使用這款Fortran編譯器:==Simply Fortran==。獲取方式已經(jīng)在我的第一篇文章中簡(jiǎn)單介紹,為什么極力推薦呢?原因有二:其一,小巧方便(與vs-ivf相比);其二,它可以顯示關(guān)鍵字符位置(第6個(gè)與第72個(gè)),如下圖:

接下來(lái)用一個(gè)小程序展示一下Fixed Format
第一行開(kāi)頭C表示注釋?zhuān)?在第6個(gè)字符位置,表示續(xù)行,8在第1~5個(gè)字符位置表示行代碼(后續(xù)的文章中會(huì)講到行代碼在Fixed Format中的應(yīng)用)。
==注意==: fortran中不區(qū)分大小寫(xiě),字符間空格沒(méi)有實(shí)際意義。
二、Free Format(自由格式)
Free Format對(duì)字符位置沒(méi)有那么嚴(yán)苛的要求,需要注意的有: 1.嘆號(hào)“!”==后面的文本==都是注釋行; 2.行號(hào)放在程序的最前面(一般不咋用); 3.每行可以編寫(xiě)==132==個(gè)字符; 4.續(xù)航符為“&”,放在行的最后。
我們可以注意到換行符&已經(jīng)在Free Format中起作用了,注釋也比較方便啦~
三 、輸出(write)
Write括號(hào)里面的兩個(gè)*,都有著各自的意義,==第一個(gè)星號(hào)代表輸出的位置使用默認(rèn)值,也就是說(shuō)屏幕,第二個(gè)星號(hào)代表不特別設(shè)置輸出格式==(后續(xù)推文會(huì)講到格式化輸出)。write的不同寫(xiě)法:
當(dāng)然,最簡(jiǎn)單的莫過(guò)于第一種寫(xiě)法,這里需要注意的是:因?yàn)殡p引號(hào)是用來(lái)輸出字符串的,所以想要輸出雙引號(hào)時(shí),要用雙雙引號(hào)哦~
==Free Format可使用雙引號(hào)或者單引號(hào)來(lái)封裝字符串,F(xiàn)ixed Format只能使用單引號(hào)來(lái)封裝字符串==。
此處還要講一個(gè)命令:stopStop表示程序終止的意思,盡量不要使用在主程序結(jié)束之外的地方。
結(jié)束程序有3種方法:
四、讀入(read)
這段程序用到了==read==命令,運(yùn)行時(shí),程序會(huì)等待用戶(hù)輸入數(shù)據(jù),integer表示聲明的意思(后續(xù)的推文中會(huì)提及),兩個(gè)星號(hào)的意思與write相同。讀入多個(gè)數(shù)據(jù)
該程序中,用戶(hù)可以輸入3個(gè)整數(shù),逗號(hào)或空格用來(lái)區(qū)分?jǐn)?shù)據(jù),每輸入一次數(shù)據(jù)按一次==Enter鍵==表示輸入完成。 今天的Fortran學(xué)習(xí)就到此為止啦,以后會(huì)不定時(shí)更新有關(guān)Fortran編程的博客,敬請(qǐng)關(guān)注!