第六章 COBOL中的表
- 格式:ppt
- 大小:171.50 KB
- 文档页数:46


cobol教程COBOL教程COBOL(Common Business-Oriented Language)是一种面向商业应用的编程语言,它主要用于处理大型企业的数据处理和事务处理。
本教程旨在帮助初学者了解和学习COBOL的基本概念和语法规则,从而能够编写简单的COBOL程序。
1. 基本语法COBOL程序由一系列的“句子”组成,每个句子以句点(.)结束。
句子由一系列的“词”组成,每个词由一个或多个字符组成。
COBOL对大小写敏感,因此要注意单词的大小写。
2. 数据定义在COBOL中,需要先定义要处理的数据。
可以使用“DATA DIVISION”来定义数据项及其属性。
数据项可以是数字、字符或日期等类型。
例如,可以定义一个名为“EMPLOYEE-ID”的变量来存储员工的唯一标识。
3. 过程部分过程部分是COBOL程序的核心,用于执行实际的业务逻辑。
可以使用各种控制结构(如IF语句和PERFORM循环)来实现条件判断和循环操作。
通过使用一系列的“句子”来描述要执行的操作。
4. 文件处理COBOL可以处理各种类型的文件,如顺序文件和索引文件。
可以使用“FILE SECTION”来定义文件及其属性,然后使用相关的文件处理语句来读取和写入文件。
5. 运行和调试COBOL程序可以通过COBOL编译器进行编译,并通过COBOL运行时系统来执行。
可以在运行过程中进行调试,以便找出程序中的错误并进行修复。
总结本教程提供了COBOL的基本概念和语法规则的介绍,以及一些常用的编程技巧和注意事项。
希望通过学习本教程,您能够对COBOL有一个初步的了解,并能够编写简单的COBOL程序。
COBOL简易教程主要内容1.COBOL语言的基本概念及程序的结构•一个例子●COBOL程序的结构●COBOL源程序的书写格式2.COBOL数据表示•常量•层次的概念•PICTURE语句•数据在内存中的各种形式3.算术运算●变量赋值 (MOVE, MOVE CORR)●算术运算(ADD, SUB, MUL, DIV, COMPUTE等)●内部函数4.字符串处理●合并、分离、取子串、替换等5.程序逻辑控制•条件的分类•IF、EVALUATE●PERFORM6.表处理定义、赋值、引用、查询7.读、写多格式记录文件8.常用语句小结9.子程序1.关于COBOL的初步知识◆COBOL是Common Business Oriented Language (通用商业语言,或称管理语言)的缩写◆最适用于数据处理◆比较接近于自然语言(英语)◆COBOL的结构严谨,层次性强◆COBOL的缺点是比较烦琐。
1.1 一个例子:***************************************************************** * * COBOL TRAINING PROGRAM * * VERSION 2.1.0 COPYRIGHT (C) 2004 * * WISTRON DALIAN SOFTWARE CO., LTD. * * ALL RIGHTS RESERVED. * * * **************************************************************** IDENTIFICATION DIVISION.PROGRAM-ID. EXERCIS6.AUTHOR. QXLU (WISTRON DALIAN).DATE-WRITTEN. 04-06-23.DATE-COMPILED. 04-06-23.*----------------------------------------------------------------* * COMMENT : * * * *----------------------------------------------------------------* ENVIRONMENT DIVISION.CONFIGURATION SECTION.SOURCE-COMPUTER. IBM-3084.OBJECT-COMPUTER. IBM-3084.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT DDI01 ASSIGN TO "DDI01".SELECT DDO01 ASSIGN TO "DDO01".*DATA DIVISION.FILE SECTION.*FD DDI01 LABEL RECORD IS STANDARD DATA RECORD AREIN-AREA0, IN-AREA1.01 IN-AREA0.05 IN-YEAR-NUM PIC 9(2).05 IN-PRINCIPAL PIC 9(4)V99.05 FILLER PIC X(07).05 RMARK PIC X(01) VALUE X"0A".01 IN-AREA1.05 IN-INTEREST-RATE OCCURS 5 TIMES PIC V999.05 RMARK PIC X(01) VALUE X"0A".FD DDO01 BLOCK 0 RECORDS LABEL RECORD STANDARD RECORDING F.01 PRT-REC.05 FILLER PIC X(79).**===============================================================* WORKING-STORAGE SECTION.01 IN-FILE-DATA.05 YEAR-NUM PIC 9(2).05 PRINCIPAL PIC 9(4)V99.05 INTEREST-RATE-TABLE.15 INTEREST-RATE OCCURS 5 TIMES PIC V999.*01 HEADER0 PIC X(79) VALUE' TABLE OF SIMPLE INTEREST'.01 HEADER1 PIC X(79) VALUE' ************************************'.01 HEADER2 PIC X(79) VALUE' PRINCIPAL 4,000.00 FOR 10 PERIODS'.01 HEADER3 PIC X(79) VALUE SPACE.01 HEADER4 PIC X(79) VALUE' PERIOD INTEREST RATE'.01 HEADER5.05 OUT-I-R OCCURS 5 TIMES PIC BBBBBBBBB.999.01 DETAIL0.05 OUT-PERIOD PIC ZZZ.05 OUT-P-I-S-ITEM OCCURS 5 TIMES.10 FOURSPACES PIC X(04) VALUE SPACE.10 OUT-P-I-SUM PIC 9,999.99.01 CNT-YEAR-NUM PIC 9(2).01 I-R-INDEX PIC 9.01 P-I-SUM PIC 9(6)V99.****************************************************************** * P R O C E D U R E D I V I S I O N * ***************************************************************** PROCEDURE DIVISION.*INPUT-DATA SECTION.OPEN INPUT DDI01.OPEN OUTPUT DDO01.READ DDI01.MOVE IN-YEAR-NUM TO YEAR-NUM.MOVE IN-PRINCIPAL TO PRINCIPAL.READ DDI01.MOVE IN-AREA1 TO INTEREST-RATE-TABLE.*PROCESS-OUTPUT-DATA SECTION.*PRINT HEADERWRITE PRT-REC FROM HEADER0 BEFORE 1.WRITE PRT-REC FROM HEADER1 BEFORE 1.WRITE PRT-REC FROM HEADER2 BEFORE 1.WRITE PRT-REC FROM HEADER3 BEFORE 1.WRITE PRT-REC FROM HEADER4 BEFORE 1.* PRINT INTEREST RATEPERFORM TEST BEFORE VARYING I-R-INDEXFROM 1 BY 1 UNTIL I-R-INDEX > 5MOVE INTEREST-RATE( I-R-INDEX ) TO OUT-I-R( I-R-INDEX )END-PERFORM.WRITE PRT-REC FROM HEADER5 BEFORE 1.*PROCESS & PRINT DETAILSPERFORM PRINT-DETAILVARYING CNT-YEAR-NUM FROM 1 BY 1UNTIL CNT-YEAR-NUM > YEAR-NUM.*CLOSE-FILES SECTION.CLOSE DDI01.CLOSE DDO01.*STOP RUN.**---------------------------------------------------------------** PRINT-DETAIL **---------------------------------------------------------------*PRINT-DETAIL SECTION.*MOVE CNT-YEAR-NUM TO OUT-PERIOD.PERFORM PROCESS-DETAILVARYING I-R-INDEX FROM 1 BY 1 UNTIL I-R-INDEX > 5.WRITE PRT-REC FROM DETAIL0 BEFORE 1.*PRINT-DETAIL-RTN.EXIT.**---------------------------------------------------------------** PROCESS-DETAIL **---------------------------------------------------------------*PROCESS-DETAIL SECTION.*COMPUTE P-I-SUM = PRINCIPAL *( INTEREST-RATE( I-R-INDEX ) * CNT-YEAR-NUM + 1 ).MOVE P-I-SUM TO OUT-P-I-SUM( I-R-INDEX ).*PROCESS-DETAIL-RTN.EXIT.** *** END OF CODING EXERCIS6 ***1.2 COBOL 程序的结构(1/p4)部(Division) 一部可包括若干节节(Section) 一节可包含若干段段(Paragraph) 一段可包含若干句子句子(Sentence) 一个句子可包含若干语句语句(Statement) 制定计算机完成一定的操作子句(Clause) 制定完成某一方面的功能每个程序应包含四个部IDENTIFICATION DIVISION (标识部)主要用来指定源程序名字,也可以写入其他用作备忘的某些信息(如日期、作者等)。
COBOL语言的发展概述• COBOL是Common Business Oriented Language(商业通用语言)的缩写。
• COBOL不仅是商业数据处理的理想语言,而且广泛应用于数据管理领域,因此COBOL也被称为“用于管理的语言”。
• 在计算机的应用领域中,数据处理(data processing)是应用最为广泛的一个领域。
数据处理的日益广泛应用要求人们设计出能满足实际数据处理工作中各种要求的一种计算机语言。
COBOL就是在这种形势下应运而生的。
COBOL语言的特点• 最适于数据处理领域。
• COBOL比较接近于自然语言(英语)。
• 通用性强。
• COBOL的结构严谨,层次分明。
• COBOL的缺点是比较繁琐。
COBOL程序的结构• COBOL源程序的结构• 标识部 环境部 数据部 过程部段 段 段 节 节 节 节 节 节 节 节 节 段 …… 描述体 …… 段 ……句子 …… 句子 …… 语句 ……动词 ……COBOL的四部标识部(IDENTIFICATION DIVISION)主要用来指定源程序名字,也可以写入其它用作备忘的某些信息(如日期、作者等)。
环境部 (ENVIRONMENT DIVISION)指出程序中用到的数据文件名与计算机系统的设备的对应关系,即把某一文件名与某一外部设备联系起来。
数据部(DATA DIVISION)程序中所用到的全部变量都应在数据部中说明它们的类型和所占的内存。
过程部(PROCEDURE DIVISION)编写相应的程序语句来实现源程序需要实现的相应功能。
COBOL源程序的书写格式• ANSI书写格式标号区续行区 A 区 B 区(正文区)注释1 6 7 8 11 12 72 73 80• 终端格式• COBOL字符和COBOL字• COBOL字符 COBOL字• 系统字符集保留字• COBOL字符集例如:DIVISION,SECTION • 包括以下字符:用户字(非保留字)・数字:0〜9・大写字母:A〜Z・小写字母:a〜z・ 专用字符: + ,-,*,/等数据名的命名规则• 每个数据名的长度为1〜30个字符之间。