cobol源程式的格式如下:
每行開頭有6個字元的序號區。可以輸入000010,000020等表示行,也可以不輸。
序號區後面是乙個字元(第7位)的指示符區,如第一行所示。可以用*和/表示注釋,_表示續行,d表示除錯。
指示符區後面是4個字元(8~11位)的a區。可以放入部,節,段標題,段名,層指示符和層號01與77,
關鍵字declaratives和end declaratives,程式結束標題。
a區後面(12位以後)是語句體,稱為b區。過程部的語句必須從b區開始。b區寬度通常為72或80個字元。
本例是70個字元。
空行的每個區都是空格
標識部(2~4行),program-id段包含程式名,是每個程式都必須的。author等其他段是可有可無的。
環境部(5~15行),提供與程式外部有關的專案,具體地說,就是列出程式所用的檔案。如果不需要可以省略。
環境部有配置節(6~10行)和輸入輸出節(11~15行)。
第7行表示編譯程式的計算機。如果指定with debugging mode就編譯除錯行。
第8行表示程式執行的計算機。
第9,10行包含一組指定輸出樣式。這裡是標準輸出,可以自定義。
輸入輸出節只用於檔案。
第13到15行表示如果程式使用檔案,則這個段對每個檔案包含乙個專案。
檔案控制專案的格式取決於文 件的描述型別。
資料部(16~22行),提供程式變數的存放位置,對不同的資料型別分成不同的節:檔案資料(file section)、
靜態資料(working-storage section)、引數(linkage section)、通訊(***munication section)、
報表(report section)。
檔案節(18~21行),每個檔案描述中包含檔案所含紀錄的定義,檔案節中的資料或從檔案讀取,
或由寫檔案的程式產生。
第22行表示工作儲存節,這節包含程式所需的臨時結果和初始化靜態資料的資料。
引數(linkage section)包含呼叫程式傳遞的資料(其他語言中稱為引數)。
通訊(***munication section),處理cobol程式和通訊裝置之間的訊息。
報表(report section),報表節實現cobol報告編寫工具系統所需的資料。
第20,21行的pic是picture的縮寫,表示定義資料格式。
x(12)表示12個字元的字串,9(09)表示9位的整數。
可以將基本專案組成層次結構,稱為組資料項或組。
cobol程式中的資料項的定義從層號開始,01層是最高層,49層是最低層。
77層專案用於某個組的資料項,如程式中的臨時變數。
66層是為特殊描述符專案保留的,可以更名現有的資料項或組,或以原定義未允許的方式組合。
88層是對特殊資料專案條件名保留的
如:03 state pic xx.
88 new-england values are "1","2","3","4","5".
if new-england ... then do something
過程部(23~30行),包含構成程式的過程性語句。
帶declaratives的過程部。有些程式用特殊的use語句表示遇到特殊條件時要執行的過程,
如發生i/o錯誤時。
use語句組合在一起,放在過程部開頭,由關鍵字declaratives和end declaratives限定。
第24行相當於定義了乙個名字叫acab030100-proc()的函式。
第25,29行定義了標誌,可以用go to 語句跳轉到這個地方,執行下面的語句。
第26行在螢幕上列印,相當於printf("acab030100-start");
第27行是呼叫acab030100-proc()函式。
cobol程式的要求:必須以英文句號.結束部標題、節標題、段名、專案和語句。
句號為小數點時,兩邊都要有數字。
COBOL程式格式
cobol源程式的格式如下 每行開頭有6個字元的序號區。可以輸入000010,000020等表示行,也可以不輸。序號區後面是乙個字元 第7位 的指示符區,如第一行所示。可以用 和 表示注釋,表示續行,d表示除錯。指示符區後面是4個字元 8 11位 的a區。可以放入部,節,段標題,段名,層指示符和層號...
COBOL子程式呼叫
內部子程式 identification division.program id.proc a.environment division.data division.procedure division.identification division.program id.proc b.enviro...
COBOL子程式呼叫
內部子程式 identification division.program id.proc a.environment division.data division.procedure division.identification division.program id.proc b.enviro...