cobol学习03——基本数据类型


基本数据类别

1.变量

  COBOL中的变量是指可以在程序中被改变的数据。

  常量包含变量名称和变量长度。变量在数据部定义。

2.常量

  普通常量和象征常量

  普通常量在定义的同时,通过VALUE  语句赋值。

  象征常量是COBOL中关键字表示的。

    如:ZERO(ZEROS,ZEROES)/SPACE(SPACES)/HIGH-VALUE(HIGH-VALUES)

      LOW-VALUE(LOW-VALUES)/QUOTE(QUOTES)/ALL

3.直接数

  分为数字型直接数和字符型直接数两类。

  数字型直接数

  非法直接数:89A  82.  123456789987654321000(不能超过18位)  ‘123’

  字符型直接数

  ‘ABC’

4.结构体

  一组相关数据可以构成一个结构体。  

  单元结构体

  组结构体

1.字符类型

  使用PIC  X进行定义。可包含任何字符组成的数据。

  如果由多个字符组成时,可用两种方式定义。PIC XXX  和 PIC X(3)。

2.整形数类型

  使用PIC 9定义。

   如果由多个字符组成时,可用两种方式定义。PIC 999  和 PIC 9(3)。

3.浮点数类型

  可用于算术运算。通过V表示小数点的位置。

  注意:定义浮点数的小数点使用的符号V并不占用实际存储空间。不单独开辟空间存放小数点。

4.Signed Number符号类型

  针对正负数而言。可包含正数和负数。

  例:  PIC S99V99  VALUE  -12.74.  

IDENTIFICATION DIVISION.
PROGRAM-ID I-SYSTEM.

ENVIRONMENT DIVISION.
CONFIGURATION SECTION.

DATA DIVISION.
WORKING-STORAGE SECTION.
01 SUM1 PIC S99.

PROCEDURE DIVISION.
MOVE -10 TO SUM1.
ADD 10 TO SUM1.
DISPLAY "SUM1:",SUM1.
STOP RUN.

运行结果:+00

5.Numric Edited Field 格式输出类型

  用于特定的格式输出。

  a、货币格式

  常用于生成报表,工资单,账单等。需要在数字前加上货币符号‘$’。

  (编译时出现错误,暂停测试
  b、通过“+”、“-”定义算术符号格式

    通过CR和DB定义算术符号格式

    当原始数据为正数时,CR和DB会被空格代替

    当原始数据为负数时,CR和DB会显示出来。

  c、算术数格式

  包含 小数 和 多位数。

  对于多位数,使用‘,’进行分隔,每三位为一个单位。

  d、日期格式

  用于对年月日表示的数据进行格式输出。日期格式通常使用‘/’将年、月、日进行分隔。

  例:01  DATE  PIC  9(8)

    01  EDITED-DATE   PIC  9999/99/99.

    PROCEDURE  DIVISION.

      MOVE  20080101  TO  DATE.

      MOVE  DATE  TO  EDITED-DATE

  e、其他格式

    e1.通过‘*’和‘Z’定义的其他格式

    ‘*’的作用主要是抑制数据前面无效的0。并将其转换为“*”。

    ‘Z’与‘*’类似,将无效的0用空格代替。    

    e2.通过‘0’和‘B’定义的其他格式

    ‘0’作为分隔符,将数据进行分隔。

    ‘B’与‘*’类似,用空格将数据进行分隔。

   各种特殊类型综合描述: