当前位置:文档之家› COBOL+教程

COBOL+教程

COBOL+教程
COBOL+教程

CHAPTER 1 COBOL 概述

COBOL 是Common Business Oriented Language 的缩写。它不仅是商业数据处理的理想语言,

而且广泛用于数据管理领域,因此COBOL 语言也被称为“用于管理的语言”。

一。COBOL 语言的特点

最适于数据处理领域:算数计算量少而逻辑处理量多,输入输出量大,数据间存在着一定的逻辑关系,大量的分类排序;COBOL比较接近英语,容易懂;通用性强,易移植,COBOL结构严谨,层次分明。

二。COBOL的组成部分:

1。标识部(IDENTIFICATION DIVISION):用于标识程序名。

2。环境部(ENVIRONMENT DIVISION):用于说明程序运行的环境。

3。数据部(DATA DIVISION):用于说明程序中涉及的所有数据。

4。过程部(PROCEDURE DIVISION):是程序的核心部分,它决定计算机应进行什么操作。

三。最简单的COBOL 程序举例:

COL 1 ---6 7 8 12---72 73---80

IDENTIFICATION DIVISION。

PROGRAM-ID。PSAMPLE1。

ENVIRONMENT DIVISION。

DATA DIVISION。

PROCEURE DIVISION。

DISPLAY …THIS IS A COBOL PROGRAM.?

STOP RUN。

四。COBOL 源程序的书写格式:

第1 至6 列为“标号区”。第7列为“续行标志区”

第8至此11列,称为“A区”。程序中有些内容如部头,节头,段头,层号01,层号77 及文件

描述符FD等应从A区开始写。

第12至此72列,称为“B区”。写程序中的正文部分。如过程部中的句子只能从B区开始写。

第73至80列,称为“注释区”。

五。COBOL字符集包括:

数字0 --- 9 ,字母A--- Z ,a --- z , 专用字符:+ - * / = , . ; … ( ) < > $ 及空格。属于系统字符集而不属于COBOL字符集的字符只能出现在COBOL 程序中的字符串里。

六。常量:

COBOL 常量分为数值常量(如100,-29),非数值常量(如…ABC? )和表意常量(如ZERO,SPACE,HIGH-VALUE,LOW-VALUE ,QUOTE ,ALL 常量)。

七。COBOL 所处理的数据的特点

层次的概念:数据间存在的从属关系。

文件的概念:多个记录可以组成一个文件。

记录的概念:具有一定层次关系的一组数据项的最大集合,它是内存中具有独立逻辑含义的最大存取项,具有最高层次。

CHAPTER 2 过程部初步-----最基本的过程部语句

一。输入输出语句。

1。ACCEPT语句:直接从终端键盘或系统指定的输入设备上输入数据。

ACCEPT 标识符[FROM 助忆名]

注:A。标识符(identifier)指的是能唯一地标识一个数据项的数据名,不能唯一地标识一个数据项的数据名不是标识符。标识符可以是组合项。

B。在ACCEPT语句中如不写FROM部分,如ACCEPT A ,则表示从系统隐含指定的设备上读入一个数据给A。如果不想从指定的设备上输入,则要用FROM 选项,

这时“助忆名”需要在环境部中事先说明和那种外部设备相联系。如:

ENVIRONMENT DIVISION。(环境部)

CONFIGRATION SECTION。(配置节)

SPECIAL-NAMES。(专用名段)

CONSOLE IS ABC

如在过程部中有ACCEPT T FROM ABC。则表示要从控制台接收数据

2。DISPLAY语句:从计算机内存中输出到某一指定的输出设备上。

DISPLAY { 标识符1,常量1}[标识符2,常量2]。。。[UPON 助忆名]

(标识符和助忆名的说明同上)

ACCEPT语句和DISPLAY语句不必定义文件适用于少量的数据输入输出。

3。READ语句:COBOL语言中数据的输入输出主要是通过对外部文件的读写进行的。READ 语句就是从外部文件上读入数据输出到程序中的数据项中。在程序中用到的所有文件都需要在环境部中指定程序中用到的文件名与实际外部文件的联系。数据部也要对文件加以描述。指定数据结构各数据项所占的内存单元长度以及数据形式。

COBOL 的存取是以文件为对象以记录为单位的。

READ语句的最简单的格式为: READ 文件名

ENVIRONMENT DIVISION。

INPUT-OUTPUT SECTION。

FILE-CONTROL。

SELECT IN-FILLE ASSIGN TO 外部文件名。

为了存储读入的记录,必须在内存开辟一个与文件记录长度相等的存储区,即…输入文件纪录区?。每一个输入文件都有相应的…输入文件纪录区?,与之一一对应。亦即在数据部中描述文件的数据结构。

3。READ语句:

假设IN-FILE 文件每一记录中包含的内容为:产品代码,产品数量,产品单价,生产日期。设某一记录的具体数据

如下:0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1 9 9 9 0 3 2 2

prodcode quantity price year mon day 如果我们希望读入该记录并对各数据项进行处理,则需要在…输入纪录区?中划分出各数据项,以便存放相应的数据。定义输入纪录区以及划分记录区中各数据项的工作是由数据部来完成的。下面我们简单介绍数据部定义记录区方法,针对上面输入数据的特点,我们可以在数据部中对记录区作如下描述:

DATA DIVISION。

FD IN-FILE LABLE RECORD IS STANDARD。

01 IN-RECORD。(定义记录区名为IN-RECORD)

02 PROD-CODE PIC 9(4)。

02 PROD-QUANTITY PIC 9(5)。

02 PROD-PRICE PIC 9(6)。

02 MANU-DATE。(生产日期为一组合项)

05 DATE-CCYY PIC 9(4)。

05 DATE-MM PIC 9(2)。

05 DATE-DD PIC 9(2)。

其中,FD 即FILE DESCRIPTION,表示从该行起是…文件描述体?。

LABLE RECORD IS STANDARD :所有的磁盘文件和磁带文件都必须写明此句。

01 层定义…输入纪录区? 的名字为IN-RECORD,由于01层属于FD描述体,因此也就指定了

IN-RECORD 和IN-FILE 的关系。亦即从IN-FILE 读入的数据存放在IN-RECORD记录区中。

这样,在执行一次READ语句后,文件中一个记录的数据便输入到内存记录区,按排列顺序分别送到记录区中各数据项中。注意文件的各记录中的数据是不分数据项的,只是按一定的顺序把数据存放在各字节中。所以数据部对记录区中各数据项的描述应该与文件的记录中各数据排列次序和长度相一致。

READ 语句的一般形式:READ 文件名RECORD [INTO 标识符] [AT END 执行语句] ,例如:

READ IN-FILE INTO TEMP-RECORD AT END STOP RUN 该语句除了将读到的数据传送到IN-RECORD之外,还传送到TEMP-RECORD中。在遇到文件尾时,程序结束运行。

4。WRITE语句:将内存中的数据输出到外部设备,主要是由WRITE 语句来完成的。WRITE语句的最简单的格式为:

WRITE 记录名(注意WRITE语句的操作对象是记录,所以是…记录名?而不是…文件名?)与输入文件相似输出文件也要在环境部中指定所对应的实际存在的外部文件:

ENVIRONMENT DIVISION。

INPUT-OUTPUT SECTION。

FILE-CONTROL。

SELECT OUT-FILLE ASSIGN TO 打印机名。

也要在数据部中定义输出记录区:

DATA DIVISION。

FD OUT-FILE LABLE RECORD IS OMITTED。

01 OUT-RECORD。

02 PROD-CODE PIC 9(4)。

02 PROD-QUANTITY PIC 9(5)。

02 PROD-PRICE PIC 9(6)。

02 MANU-DATE

05 DATE-CCYY PIC 9(4)。

05 DATE-MM PIC 9(2)。

05 DATE-DD PIC 9(2)。

LABLE RECORD IS OMITTED :凡输出设备是打印机的都必须写明此句。如输出设备是磁盘,则仍用LABLE RECORD IS STANDARD。

01 层定义…输出纪录区? 的名字为OUT-RECORD,由于01层属于FD描述体,因此也就指定了

OUT-RECORD 和OUT-FILE 的关系。

在用WRITE 语句输出一个记录之前,应向输出记录区传送数据。如已将数据传送到上述各数据项中,则在执行W RITE OUT-RECORD 语句后,则记录区中的数据通过打印机打印出来。

WRITE 语句的一般形式:标识符2 LINE

BEFORE 整数 LINES

WRITE 记录名[FROM 标识符1 ] AFTER ADVANCING 助忆名PAGE

5。OPEN语句:程序中如果需要读写文件,则该文件必须先用OPEN语句打开,系统在执行READ,WRITE 以前先检查该文件是否已在规定的外部设备上准备就绪。

OPEN语句的一般格式为:

INPUT 文件名1 [,文件名2]。。。

OPEN OUTPUT 文件名3 [,文件名4]。。。。。。

6。CLOSE语句:当对一个文件的读或写的操作已完成,就应关闭该文件。

CLOSE语句的一般格式为:

CLOSE 文件名 1 [,文件名2]。。。

COBOL通过2位长度的文件状态字(FILE-STATUS)来表示文件的操作结果是否成功,常见的文件状态值及意义:

二。算数运算语句

1。ADD语句:

格式1:ADD 标识符1 ,标识符2。。。TO 标识符m [,标识符n]。。。

常量1 ,常量2

格式2:ADD 标识符1 ,标识符2 ,标识符3

常量1 ,常量2 ,常量3

。。。GIVING 标识符m [,标识符n]。。。

2。SUBTRACT语句:

格式1:SUBTRACT 标识符1 ,标识符2 。。。FROM 标识符m [,标识符n]。。。

常量1 ,常量2

格式2:SUBTRACT 标识符1 ,标识符2 。。。FROM 标识符

常量1 ,常量2 常量

GIVING 标识符n [,标识符p]。。。

3。MULTIPLY语句:

格式1:MULTIPLY 标识符1 BY 标识符2 [,标识符3]。。。

常量1,

格式2:MULTIPLY 标识符1 BY 标识符2 GIVING 标识符3 [,标识符4]。。。

常量1 ,常量2

4。DIVIDE语句:

格式1:DIVIDE 标识符1 INTO 标识符2 [,标识符3]。。。

常量1

格式2:DIVIDE 标识符1 INTO 标识符2 GIVING 标识符3 [,标识符4]。。。

常量1 BY 常量2

B ?注意: DIVIDE A INTO B 是指 B/A

DIVIDE A INTO C? B GIVING C 是指 B/A

DIVIDE A BY B C ?GIVING C 是指 A/B

5。COMPUTE 语句:

COMPUTE 标识符1 [,标识符2 ]。。。= 算术表达式

运算的优先级由高到低顺序为:(),正负号,** ,* 或/ ,+ 或-

如:C = 3 ,D = 5 ,E = 2 ,F = 1 则:

COMPUT A,B = -(C + D)* 2 / E ** 3 - F = -3

三。传送语句(MOVE)

MOVE 语句用来实现内存中数据的传送(而不是内存和外设之间的传送)。

MOVE语句的一般格式为:

MOVE 标识符1 TO 标识符2 [,标识符3]。。。

常量1

MOVE语句的传送规则:

1,如果接收项和发送项在数据部中描述的类型和长度相同,则按字节一一对应传送。

2,如果接收项和发送项长度不相同,而二者都是数值数据项,则按小数点对齐处理。

3,对字母或字符数据(非数值型数据)的传送,按左对齐处理。

4,初等项和组合项之间可以相互传送。

关于各类数据之间的传送规则将在第五章中介绍。

四。转移语句(GO TO)

当需要使程序改变正常执行的顺序时,可以使用无条件转移语句GO TO 。其一般格式为:

格式1: GO TO 过程名

格式2:GO TO 过程名1 [,过程名2]。。过程名n DEPENDING ON 标识符

注意:只能转移到段或节的开头,不能转移到段或节的当中某一语句。段名或节名为过程名。

五。条件语句(IF)

当需要根据给出的某些条件是否满足来决定应执行哪一部分语句时,可以使用条件语句IF。

其一般格式为:

IF 条件语句组1 ELSE 语句组1 [END-IF]

NEXT SENTENCE NEXT SENTENCE

COBOL关系运算符: IS GREATER THAN (>)

IS LESS THAN (<)

IS EQUAL TO (=)

NOT GREATER THAN (NOT >) (<=)

NOT LESS THAN (NOT <) (>=)

NOT EQUAL TO (NOT =)

注意:句点在IF 语句中的特殊作用。

如:IF A > 0

DISPLAY A。

ADD A TO TOTAL。

DISPLAY TOTAL。

与IF A > 0

DISPLAY A

ADD A TO TOTAL。

DISPLAY TOTAL。就不同。

为避免出现问题应该使用显式终止符(END-IF,END-PERFORM等)代替隐式终止符(句点“。”)六。停止语句(STOP)

其一般格式为:STOP RUN

常量

STOP RUN 执行后,程序停止运行,停止后不能再接着运行,如需要,可重新运行一次。

STOP 常量,表示程序暂时挂起不往下执行,显示出此常量。

七。返回语句(GOBACK)

停止运行,将控制权返回给上一级。可用本语句代替STOP语句。子程序必须用GOBACK而不能用STOP:因为STOP停止的是一个RUN UNIT(运行单元)。

CHAPTER 3 标识部和环境部

一。标识部(IDENTIFICATION DIVISION)

IDENTIFICATION DIVISION.

PROGRAM-ID. 程序名。

[AUTHOR。作者名。]

[INSTALLATION。计算机设置场所。]

[DATE-WRITTEN。源程序编写日期。]

[DATE-COMPILED。源程序编译日期。]

[SECURITY。保密程度。]

二。环境部(ENVIRONMENT DIVISION)

ENVIRONMENT DIVISION.

CONFIGRATION SECTION。

SOURCE-COMPUTER。源计算机名。

OBJECT-COMPUTER。目标计算机名。

[SPECIAL-NAMES。专用名描述项。]

[INPUT-OUTPUT SECTION。

FILE-CONTROL。{文件控制描述体}。。。

[I-O-CONTROL。输入输出控制描述体]]

1。CONFIGRATION SECTION。

专有名段的一般格式:

SPECIAL-NAMES。

[DICIMAL-POINT IS COMMA。]

[CURRENCY SIGN IS 非数值常量。]

[专用名IS 助忆名。]

2。INPUT-OUTPUT SECTION。

INPUT-OUTPUT SECTION 包括两个段,即:FILE-CONTROL 和I-O-CONTROL。

FILE-CONTROL段是为文件分配外部文件。I-O-CONTROL段的作用是可以指定目标程序运行时,几个文件共用一个内存区,以省内存。在此暂不作介绍。

FILE-CONTROL段的主要功能是给程序中使用的文件命名。指出存放该文件的外部设备及其它有关文件控制的信息。对文件的描述是由SELECT子句实现的。FILE-CONTROL段的一般格式:

INPUT-OUTPUT SECTION。

FILE-CONTROL。

SELECT 文件名ASSIGN TO 外部文件名

[ORGANIZAION IS …] (SEQUENCIAL , INDEXED , RELATIVE)

[ACCESS MODE IS …] (SEQUENCIAL, RANDOM , DYNAMIC)

[RECORD KEY IS …]

[FILE STATUS IS …]

CHAPTER 4 数据部之一

一。数据部概述。

1。数据部的作用是定义数据项属性,描述数据结构。所有在过程部中出现的数据项都必须在数据部中对它们的属性进行说明。包括数据项的类型,数据项间的关系,记录与文件的关系,文件的属性。

2。数据的层次和层号:COBOL中把有从属关系的数据用层次(level)关系来描述。数据的层次结构是:记录--》组合项--》初等项。如,在前面READ语句中定义的IN-FILE 文件具有如下结构:

01 IN-RECORD。

02 PROD-CODE PIC 9(4)。

02 PROD-QUANTITY PIC 9(5)。

02 PROD-PRICE PIC 9(6)。

02 MANU-DATE。

05 DATE-CCYY PIC 9(4)。

05 DATE-MM PIC 9(2)。

05 DATE-DD PIC 9(2)。

层次规定如下:

(1)用来描述数据的层次结构的层号从01到49。记录的层次最高,定为01层号。

(2)从属项的层号比其下属项的层号高。层号不必要求连续。

(3)从属于同一组合项但不互相从属的数据项具有相同的层号。

3。数据部的结构:数据部中通常用到的有以下几个节:

(1)FILE SECTION:描述程序中用到的输入输出文件及其记录中各数据项的属性。

(2)WORKING-STORAGE SECTION:描述程序中用到的中间数据项。

(3)LINKAGE SECTION:描述与调用程序间发生数据传递的数据项。

(4)REPORT SECTION:为了完成报表编制功能,此节用来规定欲输出的报表的

…体裁?,设计各报表栏的打印形式和方法等。

二。文件节。

1。文件节的作用:程序中每一个输入或输出文件都要在文件节中加以描述。内容包括:文件名和文件属性;文件中包括的记录名字;每个记录中数据的层次关系;记录中各数据项的数据形式和占内存的大小。2。文件描述:最简单的文件描述体的一般格式为:

FD 文件名

LABLE RECORD IS STANDARD

RECORDS ARE OMITTED

DATA RECORD IS 数据名

RECORDS ARE

3。记录描述:记录描述体由01层号开始,后跟记录名。如果记录本身就是一个初等项,则在记录名后描述记录长度;否则,数据名后跟句点,下面定义记录的数据结构。如:

DATA DIVISION。

FILE SECTION。

FD IN-FILE

LABLE RECORD IS STANDARD。

DATA RECORD IS IN-FILE-RECORD。

01 IN-FILE-RECORD PIC X(80)。

DATA DIVISION。

FILE SECTION。

FD IN-FILE

LABLE RECORD IS STANDARD。

DATA RECORD IS IN-FILE-RECORD。

01 IN-FILE-RECORD PIC X(80)。

或( 01 IN-FILE-RECORD。

05 DATE PIC 9(8)。

05 PROD-CODE PIC 9(4)。

05 PROD-PRICE PIC 9(6)。)

4。数据项描述:在每一个初等项的名字后跟一个PIC子句。用它来描述数据的类型和长度。PIC子句在下面详细说明。

5。文件节的书写格式:FD从A区开始书写,01层号也从A区开始,其它层号可以从A区也可以从B 区开始。为了看起来层次分明,最好从B区开始。

三。PIC 子句。PIC即PICTURE的缩写。PIC子句用来描述每一个初等项。它说明:(1)数据项是什么类型。(2)数据项占多大内存域。(3)是否需要按打印的要求准备有关字符。PIC子句的主要作用在于描述一个初等项的一般特征和编辑要求。

1。数值型数据的描述:

…9?描述符:表示该位置上可以放入一个0 ~ 9 之间的数字。因此:

01 A PIC 999。或

01 A PIC 9(3)。

表示A可以存放000 ~ 999 之间的一个三位数。有几个9表示有几位数。

注意:(1)在数值型数据项中只能放数字不能放空格。

(2)用…9?描述符只能表示整数,如输入小数部分,则小数部分被舍弃。

(3)如送入一个负数,则负号被舍弃。

…V?描述符:指出在数值数据结构中隐含的小数点的位置。小数点不占内存单元。如:

03 M PIC 9(3)V9(2)。

注意:(1)V在描述符的最后,则等于无小数点。

(2)一个数据的描述符中只能出现一个V。

(3)进行数据传送或运算时,按隐含的小数点位置对准进行传送或运算。

(4)V表示的小数点只在传送或运算时起作用,不能被显示或打印出来。

…S?描述符:如果想在数据项中放入一个带符号的数,可以用…S?描述符。如:

03 M PIC S9(3)V9(2)。

注意:(1)S描述符必须是最左边的一个描述符。

(2)在内存中,S不占位数,在传送或运算时起作用。

2。字母型数据的描述:字母型数据项用A描述符,在这种类型的数据项中只允许存放字母或空格。

3。字符型数据的描述:由任意的COBOL字符组成的数据,称为字符型数据,它是非数值型的,不能用于计算。用X描述符来表示字符型数据。如:

03 M PIC X(5)。

注意:(1)字符型数据可以用X描述符,也可以用9和A描述符来描述。如描述数据…COB-74?可以用PIC X(6),也可以用PIC A(3)X9(2)。

(2)字母型数据既可以用A描述,也可以用X。

(3)字符型数据中可以放数字。

4。编辑型描述符:编辑型数据项只是作为输出数据时增加或改变某些所需的符号,起编辑作用,它不是作计算用的。下面分别介绍编辑数据项中用到的编辑描述符。

(1)。插入小数点…。?,用…。?描述符。如:

77 T PIC 99。99。

(2)。插入逗号…,?作分位号,用…,?描述符。如:

02 A PIC 999,999。99。(或PIC 9(3),9(3)。9(2))(3)。插入空格,用…B?描述符。如:

02 A PIC B9(3)B。

(4)。插入正负号,用…+?或…-?描述符。如:

02 A1 PIC +9(3)。(或PIC 9(3)+)

02 A2 PIC -9(3)。(或PIC 9(3)-)

注意:描述符…+?,一侓加符号。描述符…-?只对负值加负号。

(5)。插入…$? 。如:

02 A1 PIC $999。99。

02 A2 PIC +$99999。

02 A3 PIC -$999。9。

(6)。浮动插入正负号和…$?

02 A1 PIC $$$99.99.

02 A2 PIC $$$$$.$$.

02 A3 PIC ++9.99.

(7)。取消高位零,用…Z?和…*?描述符。在高位零的位置上代以空格或…*?。如:

02 A1 PIC Z(5)。99。

02 A2 PIC *(5)。*(2)。

02 A3 PIC +ZZZ,ZZZ,ZZ。ZZ。

02 A4 PIC -*,***,***。99。

(8)。插入…DB?和…CR?字符。DB和CR只能用作固定插入,当数值为负时,在编辑型数据项中最后两个字节中置DB或CR,数值为正时,此两字节留空格。如:

02 A1 PIC $9(3)。99DB

02 A2 PIC $9(3)。99CR。

5.常用数值型数据

四。工作单元节(WORKING-STORAGE SECTION)

1。工作单元节的作用:程序中用的数据项分为两部分,一部分是属于输入或输出文件的,另一部分是非输入或输出的数据。如一些中间变量或用作累计的数据项等。非输入输出的数据就应在工作单元节中描述,还可以用工作单元节来赋初值。

2。VALUE子句:用于给变量赋初值。如:

02 A PIC 9(3)VALUE 123。

注意:(1)只有对工作单元节中的数据项才能赋初值,不能对文件节中输入输出文件中的数据项赋初值。

(2)如果在组合项的描述体中使用VALUE,初值只能是表意常量或非数值型常量。对组合项整体而言,一律按字符型数据项处理。

(3)当用一个带符号的数值作初值时,相应的PIC子句中应有…S?描述符。

(4)赋初值时应该注意类型的一致性。

(5)VALUE子句给出的值应适合PIC子句的描述范围,否则会出现截断或产生错误。

CHAPTER 5 过程部之二

一。MOVE 语句的较高技巧

1。各种类型数据之间的传送规则见下表:(Y:表示合法传送。N:表示非法传送。空白:表示某些时候是合法的。)

2。用CORRESPONDING子句的传送——对应传送(同名传送)

对应传送的一般格式:

MOVE CORRESPONDING 标识符1 TO 标识符2

CORR

说明:(1)如果两个组合项中包括的项不同,则只传送同名的项。

(2)传送的两者间必须有成对的同名数据项,而且这一对中必须至少有一个项是初等项。否则不能作为对应项传送。

(3)所谓同名,指的是它们有相同的全程受限,即全程同名。

假如T1和T2的描述分别为:

01 T1。 01 T2。

02 X。02 X。

03 X1。。。 03 X2。。。

03 X3。。。03 X1。。。

02 Y1。02 Y。

03 A1。。。 03 A1。。。

则T1中的A1与T2中的A1就不是全程同名。

4。除法语句中的余数语句(REMAINDER 子句):DIVIDE 语句只能求商不能求余数。如想求余数,可用REMAINDER 子句。

如:DIVIDE A INTO B GIVING C REMAINDER D 注意:(1)商和余数的值不仅取决于除数和被除数,还取决于数据部中对商和余数的描述。

(2)如用ROUNDED子句,它只对商起作用,余数不作四舍五入处理,在计算余数时,仍按四舍五入前的值为准。

(3)长度溢出也只检查商的值是否溢出,而不检查余数。

三。IF语句的较高技巧

1。符号条件:

数据名IS [NOT] POSITIVE

算术表达式NEGATIVE

ZERO

2。类型条件:

标识符 IS [NOT] NUMERIC

ALPHABETIC

3。条件名条件:用来表示条件变量当前值的名字叫条件名。条件名本身是一个条件,它有一个值(…真?或…假?),用它来检查条件变量的值是否落在条件名所代表的值的范围中,当条件变量的值落在条件名所代表的值的范围中,则此条件名所表示的条件为…真?,否则为…假?。

条件名条件的一般格式:

88 条件名{ VALUE IS} 常量1 [{THRU} 常量2]

[常量3 [ [{THRU} 常量4]] 。。。]

如: 02 WS-FILE-STATUS PIC 9(2)。

88 WS-FILE-NORMAL VALUE 0,93。

88 WS-FILE-EOF VALUE 10。

CHAPTER 6 过程部之三——执行语句(PERFORM)

一。执行语句的作用:在一个COBOL程序中,过程部中往往有一部分语句需要执行多次。为了让重复的部分在程序中只出现一次,可以把重复的部分单独写成一段或一节(有一个段名或节名),每次执行这部分语句时转去该段,执行完转回来。这时候就需要用到执行语句(PERFORM )。

二。执行语句的一般形式:

PERFORM 过程名1 [THRU] 过程名2

三。使用PERFORM语句实现循环:

1。 PERFORM 过程名1 [{THRU} 过程名2 ] 整数TIMES 标识符

2。 PERFORM 过程名1 [{THRU} 过程名2 ] UNTIL 条件

3。 PERFORM 过程名1 [{THRU} 过程名2 ]

VARYING 标识符1 FROM 常数1 BY 常数2 UNTIL 条件

标识符2 标识符3

四。执行语句的多重循环形式:COBOL 允许三重循环,其一般格式可写为:

PERFORM 过程名1 [{THRU} 过程名2 ]

[VARYING 参数1 FROM 初值1 BY 步长1 UNTIL 条件1 ]

[AFTER 参数2 FROM 初值2 BY 步长2 UNTIL 条件2 ]

[AFTER 参数3 FROM 初值3 BY 步长3 UNTIL 条件3 ]

五。出口语句(EXIT):EXIT语句提供了一组过程的公共出口,即指出了被调用过程的逻辑终点。CHAPTER 7 各部之间的关系及程序举例

一.各部之间的关系:

二.程序举例:

例1:

读入一组产品销售记录,每读入一个记录,计算出销售总额(数量X单价).然后打印出该产品的全部数据.数据形式如下:

1 9 9

2 1 2

3 1 0 0 0 0 0 1 A A A A 0 1 0 0 5 0 0 0

1 9 9 3 1

2

3 1 1 0 0 0 0 1 B B B B 0 2 0 0 6 0 0 0

------------------------- ----------------- ------------ ------------ ----------- DATE PRODCODE CUST AMT PRICE

程序如下:

IDENTIFICATION DIVISION.

PROGRAM-ID. PEXAM1

ENVIRONMENT DIVISION.

CONFIGRATION SECTION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT INPUT-FILE ASSIGN TO FILE1

ORGANIZATION IS SEQUENCIAL

ACCESS MODE IS SEQUENCIAL

FILE-STATUS IS WS-INPUT-FILE-STATUS.

SELECT OUTPUT-FILE ASSIGN TO P-FILE

ORGANIZATION IS SEQUENCIAL

ACCESS MODE IS SEQUENCIAL

FILE-STATUS IS WS-OUTPUT-FILE-STATUS. DATA DIVISION.

FILLE SECTION.

FD INPUT-FILE LABEL RECORD IS STANDARD.

01 IN-REC.

05 DATE PIC 9(8).

05 PROD-CODE PIC 9(6).

05 CUSTOMER-CODE PIC X(4).

05 QUANTITY PIC 9(4).

05 UNIT-PRICE PIC 9(4).

FD OUTPUT-FILE LABEL RECORD IS STANDARD.

01 OUT-REC.

05 DATE PIC 9999B99B99.

05 FILLER PIC X(5).

05 PROD-CODE PIC 9(6).

05 FILLER PIC X(5).

05 CUSTOMER-CODE PIC X(4).

05 FILLER PIC X(5).

05 QUANTITY PIC ZZZ9.

05 FILLER PIC X(5).

05 UNIT-PRICE PIC $(5).

05 FILLER PIC X(5).

05 SALES-VALUE PIC $(8).

WORKING-STORAGE SECTION.

01 WS-VARIBLES.

05 WS-INPUT-FILE-STATUS PIC 9(2).

88 WS-INPUT-FILE-SUCCESSFUL VALUE 0.

88 WS-INPUT-FILE-EOF VALUE 23.

05 WS-OUTPUT-FILE-STATUS PIC 9(2).

88 WS-OUTPUT-FILE-SUCCESSFUL VALUE 0. PROCEDURE DIVISION.

A000-MAIN.

PERFORM A100-OPEN-FILES

PERFORM R000-READ-FILE

PERFORM A200-PROCESS-RECORD UNTIL WS-INPUT-FILE-EOF PERFORM A300-CLOSE-FILES

STOP RUN

.

A000-EXIT.

EXIT

.

A100-OPEN-FILES.

OPEN INPUT INPUT-FILE

OUTPUT OUTPUT-FILE

01-Cobol-基础知识讲义

第一章关于COBOL的初步知识 一. COBOL语言的特点 COBOL是Common Business-Oriented Language(公用面向商业的语言)的缩写,主要供数据处理、数据收集及分析之用。COBOL自60年代初开始广泛应用于计算机应用领域(商业和其他领域)。事实上,除了商业之外,各种管理工作都广泛使用COBOL,如各种统计工作,财会工作,企业计划编制,作业制度,情报检索,人事管理等。COBOL针对商业世界的使用,是真正商用应用程序开发的首选语言。 . 1 适于数据处理领域。 . 2 采用英语语法的高级语言,可读性、可维护性、可移植性较强。 3 . 通用性强,标准化程度较高。 . 4 结构严谨,层次分明。 . 5 缺点是比较繁琐。 . 最简单的COBOL程序介绍 二例1: IDENTIFICATION DIVISION.(标识部) PROGRAM-ID. EXAM1.(程序标识段) ENVIRONMENT DIVISION.(设备部) DATA DIVISION.(数据部) PROCEDURE DIVISION.(过程部) A. DISPLAY ‘THIS IS A COBOL PROGRAM.’. STOP RUN. 例2: IDENTIFICATION DIVISION.(标识部) PROGRAM-ID. EXAM2.(程序标识段) ENVIRONMENT DIVISION.(设备部) DATA DIVISION.(数据部) WORKING-STORAGE SECTION.(工作单元节) 77 A PICTURE IS 9(3).(对A进行描述) 77 B PICTURE IS 9(3).(对B进行描述) PROCEDURE DIVISION.(过程部) S. ACCEPT A.(输入A值) ACCEPT B.(输入B值) ADD A TO B.(A+B->B) DISPLAY A,B.(显示A和B值) STOP RUN. 三.COBOL程序的结构 1.部 每个程序都包括四个部: IDENTIFICATION DIVISION (标识部)提供程序的一般性文档说明,主要用来指定源程序名。 ENVIRONMENT DIVISION (环境部)列出程序中所用到的文件。程序中不需要外部文件时,环境部为空,也可以省略部标题。 DATA DIVISION (数据部)程序中所用到的全部数据(包括:文件数据—-用于输入输出、静态数据、参数等)都应在数据部中说明它们的类型和所占内存的情况。 PROCEDURE DIVISION (过程部)包含构成程序的过程性语句,用来给出程序要执行的指令,使计算机产生相应的操作。 2.节和段 标识部下只有各个段。除标识部以外,每个部下可以有若干个节(SECTION),每个节以“节头”作标识。每个节下又可包括若干段(PARAGRAPH),每个段用“段名”标识。各个段内有各种COBOL元素。 3.句子,语句和子句 在过程部中,每一段由若干个句子(Sentence)组成。一个句子是以英文句号来结束的。句子又由语

cobol基本语法教学内容

c o b o l基本语法

基本語法 一、COBOL基本語法 一、cobol的书写格式(每行) 1、前6列为序号区(一般不编辑) 2、第7列为标示列,仅可以写如下几个标示符。 a. “*”注释符(注释当前行的代码) b “-“字符串连接符 3、第8列---11列为A区,包括以下内容。 a 部、节名。 b 层号01 4、第12列---72列为B区,过程部的程序必须写在B区中。 5、第72以后部分不能编辑。 二、cobol的语法结构 (几大部分) 1、标示部(IDENTIFICATION DIVISION):提供程序的一般性文档说明。 2、环境部(ENVIRONMENT DIVISION): 提供程序外部有关的项目。 a.配置节(CONFIGURATION SECTION) ①.指定源计算机(SOURCE-COMPUTE). ②.目标计算机(OBJECT-COMPUTE). b. 输入输出节(INPUT-OUTPUT SECTION). 文件的物理路径的定义。 方法二:(过程部中动态指定文件) SELECT FILE-LOG ASSIGN TO SELECT-FILE ORGANIZATION IS LINE SEQUENTIAL. 在数据部定义字符串变量SELECT-FILE,在文件FILE-LOG打开前动态指定文件路径。 3、数据部(DATA DIVISION)。 程序中的变量都在数据部中定义,Cobol中没有全局变量和局部之分。(变量的类型结构参照5.变量类型) a. 文件节(FILE SECTION) 给环境部定义的文件指定一个RECORD变量,读写文件用: FD FILE-LOG. 01 RECORD-LOG PIC X(2000). b. 工作存储节 定义程序中用到的临时变量。 a) COBOL变量定义需要加层号(表示层次关系), ·层号从01开始 如: 01 I PIC X(10). ·组合项 如: 01 WORK-AREA. 05 NUM-1 PIC 9(09).

网店美工视觉设计实战教程(全彩微课版)-48481-教学大纲

《网店美工视觉设计实战教程(全彩微课版)》 教学大纲 一、课程信息 课程名称:网店美工:店铺装修+图片美化+页面设计+运营推广(全彩微课版) 课程类别:素质选修课/专业基础课 课程性质:选修/必修 计划学时:21 计划学分:2 先修课程:无 选用教材:《网店美工视觉设计实战教程(全彩微课版)》,何晓琴编著,2018年;人民邮电出版社出版教材; 适用专业:本书可作为有志于或者正在从事淘宝美工相关职业的人员学习和参考,也可作为高等院校电子商务相关课程的教材。 课程负责人: 二、课程简介 随着网店的迅速普及和全民化,衍生了“淘宝美工”这个针对网店页面视觉设计的新兴行业。本书从淘宝美工的角度出发,为淘宝卖家提供全面、实用、快速的店铺视觉设计与装修指导。主要包括网店美工基础、图片调色、图片修饰、店铺首页核心模块设计、详情页视觉设计、页面装修、视觉营销推广图制作等,最后针对无线端进行首页、详情页视觉的设计与装修。本书内容层层深入,并通过丰富的实例为读者全方面介绍淘宝美工在日常工作中所需的知识和技能,有效地引导读者进行淘宝店铺装修的学习。 本课程主要对淘宝美工的设计基础和方法进行详细介绍,通过学习该课程,使学生了解网店美工的基本要求,以及掌握网店的设计与制作。 三、课程教学要求

体描述。“关联程度”栏中字母表示二者关联程度。关联程度按高关联、中关联、低关联三档分别表示为“H”“M”或“L”。“课程教学要求”及“关联程度”中的空白栏表示该课程与所对应的专业毕业要求条目不相关。 四、课程教学内容

五、考核要求及成绩评定 注:此表中内容为该课程的全部考核方式及其相关信息。 六、学生学习建议 (一)学习方法建议 1. 理论配合实战训练进行学习,提高学生的实战动手能力; 2. 在条件允许的情况下,可以申请一个网店,进行深入学习; 3. 提高学生的是设计感和审美能力; (二)学生课外阅读参考资料 《网店美工:店铺装修+图片美化+页面设计+运营推广(全彩微课版)》,何晓琴编著,2018年,人民邮电出版社合作出版教材

COBOL面试1—30题答案

COBOL面试1—30题答案 A1) IDENTIFICA TION DIVISION, ENVIRONMENT DIVISION, DA TA DIVISION, PROCEDURE DIVISION. Q:列举COBOL的DEVISION A:标识部,环境部,数据部,过程部 A2) Alpha-numeric (X), alphabetic (A) and numeric (9). Q:COBOL有哪些可用的数据类型 A:字符型(这里指的是包含字母和数字),字母型,数字型 A3) Alphabetic, Alphanumeric fields & alphanumeric edited items are set to SPACES. Numeric, Numeric edited items set to ZERO. FILLER , OCCURS DEPENDING ON items left untouched. Q:INITIALIZE这个词做了些什么 A:将字母,字符,数字区域都置成空格(置空),将数字区置0,FILLER和OCCURS DEPENDING ON项不处理 A4) Elementary level item. Cannot be subdivisions of other items (cannot be qualified), nor can they be subdivided themselves. Q:77层有什么作用 A:基本层数据项,不能用做细分别的层,也不能被细分 A5) For condition names. Q:88层有什么作用 A:条件逻辑层 A6) For RENAMES clause. Q:66层有什么作用 A:重命名层 A7) IS NUMERIC can be used on alphanumeric items, signed numeric & packed decimal items and unsigned numeric & packed decimal items. IS NUMERIC returns TRUE if the item only consists of 0-9. However, if the item being tested is a signed item, then it may contain 0-9, + and - . Q:IS NUMERIC这个子句怎么确定(也就是说确定句子的真值) A:IS NUMERIC用在字符项,带符号数字,浮点数,不带符号数。如果目标项只含0~9则返回TRUE。但是,如果待测项目是个带符号数,那么他就含有0-9还有+和- A8) ARRAYS. 05 ARRAY1 PIC X(9) OCCURS 10 TIMES. 05 ARRAY2 PIC X(6) OCCURS 20 TIMES INDEXED BY WS-INDEX Q:COBOL中怎么建表/数组 A:如上.

浅谈COBOL开发

浅谈COBOL开发 近几年,由于IBM和HITACHI等大型机力推COBOL,使COBOL在沉睡了几年以后又重新火了起来。因为本人从毕业以来,一直在做COBOL的项目,今天斗胆把毕业以来的一些经验写出来,不管对还是错拿出来大家一起讨论讨论。 COBOL语言常用的开发方式有以下几种: 1. PC机开发。这种开发方式比较灵活,可以与当今比较流行的语言进行对接。把数据库、及开发环境都可以集成到我们的PC机上。程序执行的LOG和文件都在PC机上指定目录。当今比较流行的语言如.net、 VB、 C++等编译生成的LIB文件,COBOL都可以直接调用。这种开发方式所使用的开发工具中首推日立推出的COBOL2002,还有一个比较低的版本COBOL85,COBOL2002的优势在于DB连接方面。当然由于COBOL85版本太老,本人无缘使用,但是曾经听过一位前辈说COBOL85不能进行DB连接,也就是说COBOL85的数据存储只能以文件的形式存储。COBOL2002可以设定断点(VB、.NET程序员应该比较熟悉),程序执行过程中可以单步调试,察看变量值。COBOL2002还可以记录测试路径的覆盖率,一些异常处理可以利用设定断点的方式跑到,所以这种开发方式可以出现路径覆盖率为100%的情况。但是这种开发形式的语法要求比较低,比如说代码中出现全角空格就能顺利通过编译,而相同的代码在大机上编译就会出错。 2.B/S形式大机开发。程序员在PC机上开发,代码编写完成以后,通过FTP上传工具,把代码上传到大机端。利用远程登录telnet登录大机,在命令行输入编译代码。本身程序员在编写代码过程中完全占用PC机资源,不占用大机内存资源。当程序被传到大机上以后,才占用大机资源。由于大机是多用户多线程作业,所以即使代码死循环,大机也不会停掉。而是在这个线程执行一段时间以后,压到堆栈中,执行其他线程。这种大机典型的是H9000(HITACHI9000,个别人可能误以为是HP的产品)。大机上常常把目录固定,主处理和子程序往往在不同的目录下存放。程序执行过程中无法设定断点。如果想要查看程序执行过程中的变量,只能在代码中追加DISPLAY语句,在LOG中把变量值打出来。一般来说,大机的语法要求高一些,代码里除了X型变量中和注释出现全角空格外,其他地方出现空格是绝对不能编译通过的。 3.HOST端大机开发。程序员通过个人计算机和网络和大机相连,在编写代码的过程中,占用大机资源。就是说如果你PC删除一行代码,对应大机上也要删除一行代码。编写的代码无法在PC机上进行编译,代码需要使用大机的操作系统命令进行编译和执行。代码编写操作远远没有ULTRAEDIT方便,删除、拷贝都需要系统命令。而且要进行用户登录和退出。开发担当常常用一个文本记下所有常用命令,以便开发过程使用。这种开发的典型就是IBM 的S/390

Cobol基础

Cobol 语法基础 作成者审查者承认者 丁成远 变更履历 日期版本作成者备注 2005-03-01 1.0 丁成远初版

一.COBOL 语言的特点 最适于数据处理领域:算数计算量少而逻辑处理量多,输入输出量大,数据间存在着一定的逻辑关系,大量的分类排序;COBOL 比较接近英语,容易懂;通用性强,易植,COBOL结构严谨,层次分明。 二. COBOL的组成部分 1.标识部(IDENTIFICATION DIVISION):用于标识程序名。

IDENTIFICATION DIVISION. PROGRAM-ID. 程序名。 [AUTHOR。作者名。 ] [INSTALLATION。计算机设置场所。 ] [DATE-WRITTEN。源程序编写日期。 ] [DATE-COMPILED。源程序编译日期。 ] [SECURITY。保密程度。] 2.环境部(ENVIRONMENT DIVISION):用于说明程序运行的环境。ENVIRONMENT DIVISION. CONFIGRATION SECTION。 SOURCE-COMPUTER。源计算机名。 OBJECT-COMPUTER。目标计算机名。 [SPECIAL-NAMES。专用名描述项。 ] [INPUT-OUTPUT SECTION。 FILE-CONTROL。 {文件控制描述体} [I-O-CONTROL。输入输出控制描述体]] 3.数据部(DATA DIVISION):用于说明程序中涉及的所有数据。4.过程部(PROCEDURE DIVISION):是程序的核心部分,它决定计算机应进行什么操作。

cobol基本语法

基本語法 一、COBOL基本語法 一、cobol的书写格式(每行) 1、前6列为序号区(一般不编辑) 2、第7列为标示列,仅可以写如下几个标示符。 a. “*”注释符(注释当前行的代码) b “-“字符串连接符 3、第8列---11列为A区,包括以下内容。 a 部、节名。 b 层号01 4、第12列---72列为B区,过程部的程序必须写在B区中。 5、第72以后部分不能编辑。 二、cobol的语法结构 (几大部分) 1、标示部(IDENTIFICATION DIVISION):提供程序的一般性文档说明。 2、环境部(ENVIRONMENT DIVISION): 提供程序外部有关的项目。 a.配置节(CONFIGURATION SECTION) ①.指定源计算机(SOURCE-COMPUTE). ②.目标计算机(OBJECT-COMPUTE). b. 输入输出节(INPUT-OUTPUT SECTION). 文件的物理路径的定义。 方法二:(过程部中动态指定文件) SELECT FILE-LOG ASSIGN TO SELECT-FILE ORGANIZATION IS LINE SEQUENTIAL. 在数据部定义字符串变量SELECT-FILE,在文件FILE-LOG打开前动态指定文件路径。 3、数据部(DATA DIVISION)。 程序中的变量都在数据部中定义,Cobol中没有全局变量和局部之分。(变量的类型结构参照5.变量类型) a. 文件节(FILE SECTION) 给环境部定义的文件指定一个RECORD变量,读写文件用: FD FILE-LOG. 01 RECORD-LOG PIC X(2000). b. 工作存储节 定义程序中用到的临时变量。 a) COBOL变量定义需要加层号(表示层次关系), ·层号从01开始 如: 01 I PIC X(10). ·组合项 如: 01 WORK-AREA.

COBOL语言测试试卷(一)

COBOL语言测试试卷(一) 一、选择题(共10分) 1、关于COBOL语言,下述描述中正确的是:() A.COBOL可以用于开发操作系统。 B.COBOL还可以用于开发编译器。 C.COBOL主要用于编写面向商业的应用程序。 D.如今比较少用COBOL开发应用程序。 2、不属于COBOL程序的部的是:() A.过程部。 B.程序部。 C.数据部 D.环境部 3、COBOL代码中最小的单位是:() A. Division B. Section C. Sentence D. Statement 4、COBOL程序中的数据在哪个部中定义?() A.过程部。 B.环境部。 C.数据部 D.定义部 5、COBOL程序中如果有环境部的话,应置于:() A.过程部之后定义部之前。 B.定义部之后过程部之前。 C.定义部之后数据部之前。 D.数据部之后过程部之前。 6、定义部中不可缺少的段名是:() A.PROGRAM-ID B.AUTHOR C.FILE SECTION D.PROGRAM 7、COBOL程序中一般变量在哪里定义?() A.定义部 B.环境部 C.数据部的FILE SECTION D.数据部的WORKING-STORAGE SECTION 8、在过程部中,可以没有的是:() A.SECTION B.PARAGRAPH C.SENTENCE D.STATEMENT 9、当一个COBOL编译器区分A区和B区的时候,必须从B区开始的是:() A.段名 B.节名和01级数据 C.部名 D.过程部里的Sentences。 10、在COBOL程序中,下列用户自定义的名称有效的是:() A.This result B.-Grosspay C.Grosspay- D.Gross-pay 二、判断题(共20分)

COBOL经典面试题库(中文)

COBOL经典面试题库 Q1:列举COBOL的DEVISION A1:标识部,环境部,数据部,过程部 Q2:COBOL有哪些可用的数据类型 A2:字符型(这里指的是包含字母和数字),字母型,数字型 Q3:INITIALIZE这个词做了些什么 A3:将字母,字符,数字区域都置成空格(置空),将数字区置0,FILLER和OCCURS DEPENDING ON项不处理 Q4:77层有什么作用 A4:基本层数据项,不能用做细分别的层,也不能被细分 (来源:) Q5:88层有什么作用 A5:条件逻辑层 Q6:66层有什么作用 A6:重命名层 Q7:IS NUMERIC这个子句怎么确定(也就是说确定句子的真值) A7:IS NUMERIC用在字符项,带符号数字,浮点数,不带符号数。如果目标项只含0~9则返回TRUE。但是,如果待测项目是个带符号数,那么他就含有0-9还有+和- 05 ARRAY1 PIC X(9) OCCURS 10 TIMES. 05 ARRAY2 PIC X(6) OCCURS 20 TIMES INDEXED BY WS-INDEX Q8:COBOL中怎么建表/数组 A8:如上. Q9:OCCURS 子句能用在第一层吗 A9:不能 Q10:索引和下标有什么区别 A10:下标可以指定数组中任意中位置的元素(只要知道其下标),下标只能是数字型常量或者数字型变量(但是不能在指定的时候修改,如:A(K+1)这样是不行的,要修改的话要在指定的外部改,如:ADD 1 TO K,而索引的话是从表头/数组头开始检索(以BY N的指定检索规律往后滚) 再者,索引只能通过PERFORM, SEARCH 和SET来修改,如果要在一个表中使用SEARCH, SEARCH ALL,那这个表就要有索引(因为SEARCH, SEARCH ALL的参数中指定索引,所以即使其有很多限制还是得用它)

COBOL语法和文法

COBOL语法和文法 REDEFINES 可以用不同的变量描述同一内存。 01 PART_RECODE USAGE DISPLAY 03 PART-TYPE PICTURE... 03 PART_TYPE_A. 05 PART_NUMBER PICTURE... 05 PART_COST PICTURE... 03 PART_TYPE_B REDEFINES PART_TYPE_A. 05 UPC_CODE PICTURE... 03 PART_TYPE_C REDEFINES PART_TYPE_A. 05 ISBN PICTURE... 根据PART_TYPE决定用PART_TYPE_A还是PART_TYPE_B还是PART_TYPE_C。 规则: PART_TYPE_B和PART_TYPE_C长度不能大于PART_TYPE_A。 数据项不能有VALUE。 01层不能用REDEFINES. PART_TYPE_B和PART_TYPE_C中不能有OCCURS. PICTURE 定义基本项目的具体长度,格式,数据类型。可以简写成PIC. 格式字符串最多30个字符,可以包含下列字符: A 字母A-Z,a-z,空格 B 插入空格 P 标量字符,代表字段中不显示的小数点位置 S 代数符号,实际显示取决于项目的USAGE V 小数点位置 X 任何字符 Z 抑制前头的0并转换成空字符 0 插入0 9 数字0~9 / 插入/ , 插入,(逗号不能作为字符串的最后一位,最后时逗号是分隔符) 。插入。 * 抑制前头的0并转换成* + 正值插入+,负值插入- - 正值插入空格,负值插入- $ 插入美元号 CR 正值插入两个空格,负值插入CR DB 正值插入两个空格,负值插入DB 例子: 03 VAR PIC AAAAA. STATE变量长度为5个字符,不能有数字,等价于03 STATE PIC A(5)。

COBOL试题答案

一、选择题(15分)(含多项选择) 1、不属于COBOL程序的部的是:(B ) A.过程部。 B.程序部。 C.数据部 D.环境部 2、COBOL程序中的数据在哪个部中定义?(C ) A.过程部。 B.环境部。 C.数据部 D.标识部 3、COBOL程序中如果有环境部的话,应置于:(C ) A.过程部之后标识部之前。 B.标识部之后过程部之前。 C.标识部之后数据部之前。 D.数据部之后过程部之前。 4、标识部中不可缺少的段名是:(A ) A.PROGRAM-ID B.AUTHOR C.FILE SECTION D.PROGRAM 5、COBOL程序中一般变量在哪里定义?(D ) A.标识部 B.环境部 C.数据部的FILE SECTION D.数据部的WORKING-STORAGE SECTION 6、下列关于过程部的说法正确的是:(C ) A.过程部中可以不定义节但是必须定义段 B.过程部中可以不定义段但是必须定义节 C.过程部中可以不定义节和段,节和段是根据需要定义的 D.所有程序都是在过程部中以STOP RUN来结束的 7、下面是COBOL合法数据名的是:(ABD ) A.W ANG B.TAN-1 C.12345 D.END-OF E.PROGRAM F.GROSS-$ G.SECTION 8、关系运算符的优先顺序正确的是(A ) A.NOT > AND > OR B.OR> NOT > AND C.AND > NOT > OR D.NOT > OR > AND 9、下记语句表示A/B=>C的是(B ) A.DIV A INTO B GIVING C. B.DIV A BY B GIVING C 10、下记哪些方法可以显示出…ABCD?六个字符(A,C ) A. PIC X(6) VALUE "'ABCD'". 说明:V ALUE后依次为空格双引号单引号ABCD单引号双引号 B. PIC X(6) V ALUE ''ABCD''.说明:V ALUE后依次为空格单引号单引号ABCD单引号单引号 C. QUOTE ?ABCD? QUOTE 11、COBOL对文件的操作以为单位的(B ) A.整个文件 B.记录 C.字段

淘宝网店二维码使用教程全攻略

一、什么是二维码——还记得超市的条形码吗? 谈起“二维码”,可能很多人会犯糊涂。但是与它类似的“一维条形码”广泛地运用于超市商品识别,却是我们每个人都十分熟悉的。二维码正是“一维条形码”发展的“高级阶段”,在一个小小的方块里面包含一条链接地址,引导使用者通过扫描设备(如手机)快速进入相应 的网址。 图1:一维条形码图2:淘宝二维码 现在,淘宝为卖家们提供二维码在线生成的工具,您可以将您的店铺和宝贝的“手机浏览链接”转化成二维码印制出来,夹在包裹中、印在优惠券上甚至是你的商品上。举例来说,接收包裹时,买家拿到印有二位码的优惠券,此时,他们只需用手机的摄像头“照”一下这个黑白相间的小方块,就可以快速地通过手机进入您的店铺中。二维码还有更多的妙用和更多的好处。 图3:生活中使用淘宝二维码的场景

二、淘宝二维码妙在何处——轻轻一扫客源不断! 1. 好处在哪里? 淘宝买家通过手机上的二维码识别软件,扫描卖家发布的淘宝二维码,可以直接找到卖家的促销活动,店铺首页,宝贝单品。免去输入网址、关键词搜索的麻烦。 淘宝卖家可以将二维码印刷到包裹中的宣传物上(如优惠券、宣传册),随包裹发给买家,吸引买家通过二维码进入店铺进行二次购买,为您带来源源不断的客流。 您可以在PC店铺和商品详情页中贴出二维码,使顾客可以在手机中快速收藏,随时随地光顾您的店铺! 卖家还可以考虑在平面媒体(如《淘宝天下》)上发布带有二维码的促销活动。对于有能力大卖家,还可以在自己的商品上贴上相应的二维码。 图4:二维码的引流作用 2. 买家的操作方法 有软件和摄像头的买家:淘宝合作的免费二维码软件有淘宝Android版、快拍、QuickMark、码上淘、魔印等,手机访问https://www.doczj.com/doc/cb4757514.html,可快速下载。这些手机软件提供二维码扫描功能,只要买家打开这些软件,将摄像头对准二维码1秒中左右,识别成功后手机将自动进入对应的网页。 没有软件或者摄像头的买家可以在手机上进入https://www.doczj.com/doc/cb4757514.html,页面,输入活动码,同样能够进入到您所设置的链接中。 图5:买家的使用方法

Cobol基本语法总结

コボル基本語法 一、COBOL基本語法 compla項目使用的Cobol是Micro Focus 公司生产的Cobol,采用在HP-UNIX上运行。 一、cobol的书写格式(每行) 1、前6列为序号区(一般不编辑) 2、第7列为标示列,仅可以写如下几个标示符。 a. “*”注释符(注释当前行的代码) b “/“注释符(注释当前行的代码,程序编译时,强制程序清单另起一页,不建议使用) c “-“字符串连接符 d “D”DEBUG行标示符(程序为DEBUG模式时,标有该标示符的语句行代码执行,否则和注 释行效果一样) 3、第8列---11列为A区,包括以下内容。 a 部、节名。 b 层号01 4、第12列---72列为B区,过程部的程序必须写在B区中。 5、第72以后部分不能编辑。 二、cobol的语法结构(几大部分) 1、标示部(IDENTIFICATION DIVISION):提供程序的一般性文档说明,本项目只保留程序名 (PROGRAM-ID)一项。 2、环境部(ENVIRONMENT DIVISION): 提供程序外部有关的项目。 a.配置节(CONFIGURATION SECTION) ①.指定源计算机(SOURCE-COMPUTE). ②.目标计算机(OBJECT-COMPUTE). ③.设置debug模式(SOURCE-COMPUTE H9000V WITH DEBUGGING MODE) ④. 指定读环境变量设置. SPECIAL-NAMES. ENVIRONMENT-VALUE IS CNS-ENV-PARM ENVIRONMENT-NAME IS CNS-ENV-NAME. b. 输入输出节(INPUT-OUTPUT SECTION). 文件的物理路径的定义。 方法一:(写死文件路径) SELECT FILE-LOG ASSIGN "/usr3/WSI/commonlog/WSI1101.log" ORGANIZATION IS LINE SEQUENTIAL. 方法二:(过程部中动态指定文件) SELECT FILE-LOG ASSIGN TO SELECT-FILE ORGANIZATION IS LINE SEQUENTIAL. 在数据部定义字符串变量SELECT-FILE,在文件FILE-LOG打开前动态指定文件路径。 方法三:(环境变量中动态指定文件)

dw网页淘宝设计模板

竭诚为您提供优质文档/双击可除dw网页淘宝设计模板 篇一:dreamweaver在淘宝美工课中的应用 泉州新东方叶生方老师整理 dreamweaver在淘宝美工课中的应用 一、店铺装修(网页技术) 专业型课程分两个阶段:1、店铺装修基础阶段,2、html+css行内样式部分。 (一)实用型阶段——店铺装修基础 1、认识旺铺及类型、模板、模块、布局;旺铺20xx标准版拓展版20xx新版 2、ps切片导出web代码 3、dw表格排版 4、分类导航设计——ps切片、dw表格、热区三种技术综合运用 5、旺铺宽屏效果制作(页面背景、店头自定义、自定义大图三部分组成) 6、图片背景、旺旺代码、收藏代码、滚动代码 7、识别哪些效果属于模块功能,那些效果可以自定义

实现,常用的促销工具(限时打折、满就送、团购宝、搭配减价、会员管理等) 8、淘宝首页整体风格设计、“宝贝描详情页”风格设计 9、html常用标注介绍table、tR、td、img、a等用功能 (二)专业提升阶段——html+css行内样式 10、dw使用的注意要点以及认识tabletRtdFontdiVspanh1imgapliulmarquee等常用标注。 11、表格结构分析,学会手写简单的网页代码 12、认识css盒子模型 13、了解css排版基本方法——实际表格相似导航效果 14、运用css设计宝贝详情页版式、利用p、img标注的css属性设置版式 15、css美化表格 16、了解淘宝widget库的作用与意义——悬浮旺旺、宝贝放大镜等等特效 篇二:用dw做出漂亮的模板 如何用dw做出漂亮的促销表格模板 很多的卖家在逛淘宝店时会发现很多的店铺装修很美观,如打折模块和团购模块,自己想去问店主怎么制作,但是有几个淘宝卖家会告诉你呢,不过不要着急,下面让开淘网为你详解一番吧。今天我们讲的是如何用dReamweaVeR做

cobol 知识点集锦

cobol 知识点集锦 COBOL数据类型 计息是银行的一项重要业务,包括日常代理客户收、付计算客户利息和年度计息等。目前,这些工作大多数是在IBM ES9000主机的SAFE应用系统平台上进行,该系统联 机程序和联机计息程序是用IBM 370汇编语言实现的。为方便汇编语言读写,在VSAM文 件存储的数据中,数据存放格式进行了特殊的定义。如日期存放采用X(3)型,01年03月15日,存入EBCD码为X‘010315’。在进行年度计息时,为了实现各种复杂的运算工作,一般采用COBOL语言来实现各种运算。而采用COBOL语言读取X(3)型数据时,读出的是字符型数据,不能直接进行运算,必须转换为COBOL数据类型的数据后才能进行相应处理。 如刚才的X‘010315’,需要转换为内部十进制数据X‘0010315C’。本文介绍一种用COBOL语言实现字符型X(3)与内部十进制数据相互转换的方法。 由X(3)型转换为内部十进制 由于日期数据总是大于零,在COBOL语言的工作单元节定义变量DATE-FIRST后,再追加 定义COBOL语言的最小数据单元X‘000C’,即十进制12。由于重定义DATE-CASE为DATE-CHANGE后,DATE-CHANGE是原日期数据的1000倍,于是要在过程部将DATE-CHANGE除以1000。 首先,在COBOL程序WORKING-STORAGE SECTION. 中定义如下内容: WORKING-STORAGE SECTION. 01 DATE-CASE. 02 DATE-FIRST PIC X(3). 02 DATE-SIGN PIC 9(4) COMP VALUE 12.;定点二进制数 01 DATE-CHANGE REDEFINES DATE-CASE PIC 9(9) COMP-3. ;内部十进制数据 01 DATE-HEX PIC X(3). ;转换前数据 01 DATE-DEC PIC S9(7)COMP-3 . ;转换后数据 然后,在过程部PROCEDURE DEVISION.中加入如下语句: PROCEDURE DEVISION. MOVE DATE-HEX TO DATE-FIRST . COMPUTE DATE-CHANGE = DATE- CHANGE / 1000.

COBOL谭浩强版学习笔记

COBOL资料整理 COBOL语言概述 一.COBOL程序的结构 1.部 IDENTIFICATION DIVISION 标识部 ENVIRONMENT DIVISION 环境部 DA TA DIVISION 数据部 PROCEDURE DIVISION 过程部 2.节(SECTION)和段(PARAGRAPH) (1)部-节-段 (2)标识部下面不设节,直接设段 (3)过程部可以设节,下面再设段,也可以直接设段 3.句子、语句和子句 每一段由若干句子(Sentence)组成,一个句子以句号加上一个以上的空格来结束。 句子由语句(Statement)组成。 语句中又可以包含若干子句(clause),每一个子句也有一个动词(但这个动词往往是可以省略的),它指定某一方面的特定功能。 二.COBOL源程序的书写格式 1.1-6列:标号区 2.第7列:续行标志区(“-”为续行,“*”为注解) 3.8-11列:A区(部头,节头,段头,层号01、77,文件描述符FD等) 4.12-72列:B区(正文) 5.73-80列:注释区 三.COBOL字符 数字0-9,大写字母A-Z,小写字母a-z, 专用字符15个{ + - * / = , . ; ‘( ) < > $ 空格} 四.常量 1.数值常量 (1)小数点不能多于一个,而且不能出现在常数最右边。 (2)数值常量的长度不能超过18位数字。 (3)至少要有一个数字,不能有多于一个符号。 (4)数字间不能有空格,空格是分界符。 2.非数值常量 (1)用’’把字符串包起来 (2)假如要把’’放到非数值常量中,用QUOTE保留字, 如MOVE QUOTE ‘CHINA’QUOTE TO A (3)长度不应超过120个字符。

cobol学习笔记

cobol学习笔记(1) COBOL入門 COBOLとは? 2010/06/29 16:35 COBOL面向商业的通用语言 (Common business Oriented Language) コボル ? 1960.04 CODASYL-60 ? 1968. ANSI COBOL(COBOL68)第1次規格 ? COBOL74 第2次規格 ? COBOL85 第3次規格 ? COBOL2002 第4次規格 COBOL是Common Business-Oriented Language(公用面向商业的语言)的缩写,主要供数据处理、数据收集及分析之用。COBOL自60年代初开始广泛应用于计算机应用领域(商业和其他领域)。事实上,除了商业之外,各种管理工作都广泛使用COBOL,如各种统计工作,财会工作,企业计划编制,作业制度,情报检索,人事管理等。COBOL针对商业世界的使用,是真正商用应用程序开发的首选语言。 1.适于数据处理领域。 2.采用英语语法的高级语言,可读性、可维护性、可移植性较强。 3.通用性强,标准化程度较高。 4.结构严谨,层次分明。 5.缺点是比较繁琐。 cobol的书写格式(每行) 1、前6列为序号区(一般不编辑) 2、第7列为标示列,仅可以写如下几个标示符。 a. “*” 注释符(注释当前行的代码) b “/“ 注释符(注释当前行的代码,程序编译时,强制程序清单另起一页,不建议使用) c “-“ 字符串连接符 d “D” DEBUG行标示符(程序为DEBUG模式时,标有该标示符的语句行代码执行,否则和注释行效果一样) 3、第8列---11列为A区,包括以下内容。 a 部、节名。 b 层号01 4、第12列---72列为B区,过程部的程序必须写在B区中。 5、第72以后部分不能编辑。 cobol学习笔记(2)COBOL的程序结构 IDENTIFICATION DIVISION 标识部見出し部 2010/06/29 20:44 COBOL程序由4部(DIVISION)组成:IDENTIFICATION DIVISION.(标识部)、ENVIRONMENT DIVISION.(环境部)、DATA DIVISION.(数据部)、PROCEDURE DIVISION.(过程部),而每个部又由若干节 (SECTION)组成。

淘宝装修 SDK高级模板开发流程

淘宝网装修市场 高级模板设计指南1

目录 1、本地开发环境 (3) 1.1 什么是SDK (3) 1.2 下载SDK (3) 1.3 安装SDK (4) 1.4 SDK的目录结构 (7) 1.5 启动SDK (8) 2、使用SDK后台 (10) 2.1 创建模板 (10) 2.2 预览模板 (17) 2.3 配置SDK本地属性 (18) 3、模板的标准结构 (18) 4、设计模块 (18) 4.1 创建相关文件资源 (18) 4.2 编写模块代码 (19) 4.2.1 引入标识 (19) 4.2.2 使用KISSY效果 (19) 4.2.3 使用模块参数 (19) 4.2.4 调用数据接口 (20) 4.3 配置模块信息 (20) 5、设计页面 (22) 5.1 结构化页面 (22) 5.2 设计页面 (24) 5.2.1 引入单个模块 (24) 5.2.2 划分页面片区 (25) 5.2.3 配置页面信息 (26) 6、特殊页面要求 (27) 6.1 宝贝详情页面 (27) 6.2 宝贝列表,文章列表页面 (27) 6.3 不可装修的页面 (27) 7、调试模板装修效果 (28) 8、关于白名单过滤 (28) 9、PHP函数 (28) 10、发布模板到装修系统 (28) 2

1、本地开发环境 1.1什么是SDK SDK是淘宝提供给设计师在本地设计模板的软件开发包,SDK模拟了淘宝店铺环境。 SDK主要包括三个部分:Server,PHP引擎和模拟数据。 Server是指SDK会在本机上启动一个Server,这样我们可以通过浏览器浏览设计的作品。PHP引擎是指设计师只能使用PHP作为模板设计的语言。 模拟数据是指SDK包括了淘宝各个典型的店铺,这样设计师在设计模板时不用考虑实际的数据库。 目前,提供Windows操作系统和Mac操作系统的SDK工具。 1.2下载SDK 装修市场后台下载安装包,安装至本地,创建SDK web控制台。您将使用淘宝ShopSDK 来开发和上传设计模板。在开始设计之前,需在本地部署SDK环境。 设计师登录装修市场后,点击“设计师后台”导航按钮进入。(加入设计师注册流程帐号。) 进入设计师后台界面: 3

cobol介绍

英文缩写: COBOL (Common business Oriented Language) 中文译名: COBOL语言 解释: 一种适合于商业及数据处理的类似英语的程序设计语言。这种语言可使商业数据处理过程精确表达。 COBOL(面向商业的通用语言,又称为企业管理语言、数据处理语言等,Common Business Oriented Langauge)是最早的高级编程语言之一,是世界上第一个商用语言。 1 COBOL的历史 1959年5月,五角大楼委托格雷斯·霍波(G.Hopper)博士领导一个委员会并由Rear Admiral Grace Hopper公司主持开发,并于1961年由美国数据系统语言协会公布。正式发布于1960年4月,称为Cobol-60。1959年12月出现了第一个COBOL语言文本,并于1960年4月正式发表,因此也被称为COBOL-60。1968年美国国家标准委员会ANSI 又通过了新的标准ANSI COBOL X.3.23-1968。1972年国际标准化组织ISO将其作为ISO COBOL-72。1974年ANSI对COBOL-68作出了修订扩充,形成了ANSI COBOL X3.23-1974,随后1978年ISO采用其形成ISO COBOL-78,后来又提出了ANSI X3.23-85,增加了很多结构化程序设计的内容,ISO标准ISO1989:1985也采用了该标准。COBOL 标准还在不断地改进和完善,最新的标准COBOL 2002主体已经于2002年12月出版,其他部分还在不断地完善之中。现在最新的版本是Cobol-2002。 1963年,美国国家标准研究所(ANSI)进行了标准化,但是ANSI标准很少被遵循;因此,COBOL程序只是部分可移植的。 2 COBOL的重要性 经过40多年的不断修改、丰富完善和标准化,COBOL已发展为多种版本的庞大语言,在财会工作、统计报表、计划编制、情报检索、人事管理等数据管理及商业数据处理领域,都有着广泛的应用。 COBOL的重要性可以用这句话来描述:世界上70%的数据都是用COBOL语言处理的,并且90%的A TM事务处理用的都是COBOL语言。每天在线处理的COBOL事务有300亿次。500强中有492家(包括全部的100强)使用了COBOL语言,目前在COBOL方面的投资已经超过3万亿美元,,据称用COBOL书写的程序超过了1000亿行,并且以每年大约50亿行代码的速度在增长。 由于COBOL在商业领域的雄厚基础,而且COBOL主要是应用于银行、金融和会计行业等非常重要的商业数据处理领域。所以,即使对于具有相当经验的IT公司来说,重新编写COBOL语言的可靠的应用软件也是不实际或是从商业角度上并不可行的,而且还要花上很长的时间,只要大型机存在,COBOL就不会消失,即使是对电脑界产生巨大影响的“千年虫”(Y2K)也没有改变COBOL的命运。 3 COBOL的特点 COBOL是一种面向数据处理的、面向文件的、面向过程(POL)的高级编程语言,是一种功能很强而又极为冗长的语言。 COBOL适合于具有循环处理周期的环境(例如打印工资支票)以及数据操纵量相当大的环境。COBOL主要应用于商业数据处理领域,对各种类型的数据进行收集、存储、传送、分类、排序、计算及打印报表、输出图象是它的强项。 COBOL语法与英文很接近,即使不懂电脑的人也能看懂程序。 强大的文件处理功能,大量的数据通常以文件的形式存储在磁盘上。 仅提供了加、减、乘、除及乘方这五种简单的算术运算,因而不适于进行科学计算。 未来的COBOL将支持XML等Web时代的新技术。 4 COBOL的程序结构

相关主题
文本预览
相关文档 最新文档