當(dāng)前位置: 首頁(yè) > 注冊(cè)土木工程師(巖土) > 注冊(cè)土木工程師(巖土)備考資料 > 巖土工程師輔導(dǎo)資料:函數(shù)子程序

巖土工程師輔導(dǎo)資料:函數(shù)子程序

更新時(shí)間:2010-11-30 13:04:17 來(lái)源:|0 瀏覽0收藏0

注冊(cè)土木工程師(巖土)報(bào)名、考試、查分時(shí)間 免費(fèi)短信提醒

地區(qū)

獲取驗(yàn)證 立即預(yù)約

請(qǐng)?zhí)顚?xiě)圖片驗(yàn)證碼后獲取短信驗(yàn)證碼

看不清楚,換張圖片

免費(fèi)獲取短信驗(yàn)證碼

  如果引入的函數(shù)只限于在某一程序單位中使用,且此函數(shù)能用一個(gè)表達(dá)式來(lái)計(jì)算,則可以把它定義為語(yǔ)句函數(shù)。由于只用了一個(gè)語(yǔ)句,故這一類(lèi)函數(shù)的計(jì)算均很簡(jiǎn)單。但是,有許多問(wèn)題,僅僅用語(yǔ)句函數(shù)是不能解決的,如∫∫f(x,y)dxdy,須用一系列語(yǔ)句來(lái)完成,因此,常將這一類(lèi)問(wèn)題編寫(xiě)成一個(gè)程序塊,在程序中被主程序或其他子程序所調(diào)用,是一個(gè)獨(dú)立的程序模塊。為區(qū)別于語(yǔ)句函數(shù)或系統(tǒng)配置的標(biāo)準(zhǔn)函數(shù),我們稱它為外部函數(shù)。

  1.函數(shù)子程序語(yǔ)句的一般格式

  [類(lèi)型說(shuō)明]FUNCTION函數(shù)名([虛擬參數(shù)[,虛擬參數(shù)]…])

  類(lèi)型說(shuō)明可以是REAL、INTEGER、LOGICAL、CHARACTER、DOUBLE PRECI-SION、COMPLEX中的任意一個(gè),僅僅用來(lái)說(shuō)明函數(shù)的類(lèi)型,可以省略。

  函數(shù)名的取法與普通變量名的取法相同,因?yàn)楹瘮?shù)名是用來(lái)代表函數(shù)值的,故它必然具有類(lèi)型,如果在關(guān)鍵字FUNCTION之前沒(méi)有類(lèi)型說(shuō)明,則由隱含規(guī)則確定函數(shù)名的類(lèi)型。

  函數(shù)名后括號(hào)中的虛擬參數(shù)(又稱啞元)只能是簡(jiǎn)單變量名、數(shù)組名、啞過(guò)程名。如編寫(xiě)計(jì)算M!的函數(shù)子程序:

  INTEGER FUNCTION FC(M)

  FC=1.0

  DO 10 N=2,M

  10 FC=FC*N

  RETURN

  END

  此子程序在后面的例題中可發(fā)揮很大的作用。在上例函數(shù)子程序中,定義了整型函數(shù)FC,F(xiàn)C只有一個(gè)啞元M,在計(jì)算運(yùn)行中,M被多次賦值,得到相應(yīng)的FC值。

  2.構(gòu)造函數(shù)子程序的一般規(guī)則

  (1)函數(shù)子程序必須以FUNCTION語(yǔ)句作為它的第一條語(yǔ)句。

  (2)函數(shù)子程序的最后一行必須是END語(yǔ)句,在編譯時(shí),該語(yǔ)句被作為本程序塊的結(jié)束標(biāo)志。

  (3)在函數(shù)子程序中,一般至少有一個(gè)RETURN語(yǔ)句,當(dāng)程序執(zhí)行過(guò)程中遇到RE.TURN語(yǔ)句,將控制轉(zhuǎn)移到調(diào)用程序處。

  (4)函數(shù)名必須在程序中被定值一次,也可以多次定值。

  (5)在函數(shù)子程序中可以調(diào)用其他函數(shù)子程序,但不能直接或間接調(diào)用自己。

  (6)RETURN語(yǔ)句是一個(gè)可執(zhí)行語(yǔ)句,當(dāng)執(zhí)行到該語(yǔ)句時(shí),結(jié)束過(guò)程的引用,將控制返回到當(dāng)前引用的程序單位。

  3.函數(shù)子程序的調(diào)用

  在引用函數(shù)子程序的地方,只要寫(xiě)出函數(shù)的名字,并在其后面的括號(hào)中與啞元對(duì)應(yīng)的位置上,寫(xiě)上相應(yīng)的實(shí)元即可。

  實(shí)元可以是常數(shù)、常數(shù)符號(hào)名、簡(jiǎn)單變量名、數(shù)組元素名、數(shù)組名及表達(dá)式等。值得注意的是,實(shí)元與啞元的個(gè)數(shù)要相同,它們之間的類(lèi)型和位置必須一一對(duì)應(yīng),與名字本身無(wú)關(guān)。如計(jì)算

  求上式時(shí),需計(jì)算三次階乘數(shù),故可以調(diào)用上例中的函數(shù)子程序FC,主程序如下:

  INTEGER FC

  READ(*,*)M,N

  10 MNC=FC(M)/(FC(M—N)*FC(N))

  WRITE(*,*)’M=’,M,’N=’,N,’MNC=’,MNC

更多內(nèi)容訪問(wèn)>> 注冊(cè)土木工程師(巖土)考試頻道   注冊(cè)土木工程師(巖土)考試論壇  巖土工程師課程試聽(tīng)

·2011年注冊(cè)土木工程師(巖土)考試輔導(dǎo)招生簡(jiǎn)章
·巖土工程師輔導(dǎo)現(xiàn)在報(bào)名任意專(zhuān)業(yè)知識(shí)贈(zèng)送專(zhuān)業(yè)知識(shí)習(xí)題班
·老師輔導(dǎo)每天24小時(shí)不限時(shí)間隨時(shí)反復(fù)學(xué)習(xí)……

分享到: 編輯:環(huán)球網(wǎng)校

資料下載 精選課程 老師直播 真題練習(xí)

注冊(cè)土木工程師(巖土)資格查詢

注冊(cè)土木工程師(巖土)歷年真題下載 更多

注冊(cè)土木工程師(巖土)每日一練 打卡日歷

0
累計(jì)打卡
0
打卡人數(shù)
去打卡

預(yù)計(jì)用時(shí)3分鐘

注冊(cè)土木工程師(巖土)各地入口
環(huán)球網(wǎng)校移動(dòng)課堂APP 直播、聽(tīng)課。職達(dá)未來(lái)!

安卓版

下載

iPhone版

下載

返回頂部