COBOL程序格式

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)、通信(Communication Section)、
          报表(Report Section)。
    文件节(18~21行),每个文件描述中包含文件所含纪录的定义,文件节中的数据或从文件读取,
          或由写文件的程序产生。
    第22行表示工作存储节,这节包含程序所需的临时结果和初始化静态数据的数据。
    参数(Linkage Section)包含调用程序传递的数据(其他语言中称为参数)。
    通信(Communication 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程序的要求:必须以英文句号.结束部标题、节标题、段名、项目和语句。
         句号为小数点时,两边都要有数字。
posted on 2006-03-29 15:06  秒针  阅读(721)  评论(0编辑  收藏  举报