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’与‘*’类似,用空格将数据进行分隔。
各种特殊类型综合描述: