COBOL语言测试试卷(一)

  • 格式:doc
  • 大小:56.00 KB
  • 文档页数:6

COBOL语言测试试卷(一)一、选择题(共10分)1、关于COBOL语言,下述描述中正确的是:()A.COBOL可以用于开发操作系统。

B.COBOL还可以用于开发编译器。

C.COBOL主要用于编写面向商业的应用程序。

D.如今比较少用COBOL开发应用程序。

2、不属于COBOL程序的部的是:()A.过程部。

B.程序部。

C.数据部D.环境部3、COBOL代码中最小的单位是:()A. DivisionB. SectionC. SentenceD. Statement4、COBOL程序中的数据在哪个部中定义?()A.过程部。

B.环境部。

C.数据部D.定义部5、COBOL程序中如果有环境部的话,应置于:()A.过程部之后定义部之前。

B.定义部之后过程部之前。

C.定义部之后数据部之前。

D.数据部之后过程部之前。

6、定义部中不可缺少的段名是:()A.PROGRAM-IDB.AUTHORC.FILE SECTIOND.PROGRAM7、COBOL程序中一般变量在哪里定义?()A.定义部B.环境部C.数据部的FILE SECTIOND.数据部的WORKING-STORAGE SECTION8、在过程部中,可以没有的是:()A.SECTIONB.PARAGRAPHC.SENTENCED.STATEMENT9、当一个COBOL编译器区分A区和B区的时候,必须从B区开始的是:()A.段名B.节名和01级数据C.部名D.过程部里的Sentences。

10、在COBOL程序中,下列用户自定义的名称有效的是:()A.This resultB.-GrosspayC.Grosspay-D.Gross-pay二、判断题(共20分)1、在写COBOL程序时,数据名称可以随意写,只要合乎语法就行。

()2、就象其它编程语言一样,COBOL允许程序员自定义常量名。

()3、COBOL程序中用到的每个变量都必须在数据部里声明。

()4、COBOL变量只要声明类别而不用描述长度。

()5、COBOL是严格区分数据类型的程序语言,明确了数据类型也就明确了数据格式和取值范围。

()6、“-123”和-123都是常量值,二者没有区别。

()7、象征常数指COBOL程序员自己定义的常量。

()8、ZERO、ZEROS和ZEROES具有不同的含义和作用。

()9、组数据有且仅有2级数据项目。

()10、组数据定义时下一级数据项层号必须比上一级数据项层号大1。

()12、一般认为组数据的类型是X,其长度由其所有子项决定。

()13、COBOL数据类型很简单,为变量赋值时也非常简单,无需程序员自己考虑数据格式。

()14、DISPLAY语句后的WITH NO ADVANCING子句导致回车/换行。

()15、ACCEPT只能从键盘接受输入。

()16、用COBOL开发的应用程序生存周期一般很短,维护工作量所占比重不大。

()17、COBOL程序维护仅仅指发现并修正程序中的BUG,而不包括环境和用户需求变化引起的修改。

()18、编写COBOL程序时应确保没有错误,而无需考虑将来的修改。

()19、在变量定义中使用SYNC子句导致数据存取时间减慢,但能节约存储空间。

()20、COBOL不能控制数据的存储格式,但是能控制数据的显示和打印格式。

()三、填空题(20分)1、象其它多数语言一样,COBOL程序包括顺序、_______和_______三种结构。

2、在PIC子句中,与XXXXX等价的写法是_______。

3、COBOL实现循环的动词是_______,其语法格式有多钟变体。

4、COBOL中的条件可以用简单条件、_______和条件名,而简单条件又分为_______、_______和_______ 三种。

5、在组合条件运算符中,优先级最高的是_______,居中的是_______,而最低的是_______ 。

6、定义组数据时最高级别的组数据项层号一般为_______,其它级一般数据项层号可以取_______到_______之间的任何数,而定义条件名的层号是_______。

7、当程序往下执行的可选路径超过2条时,除了可以用多个IF语句外,一般用_______实现。

8、组数据的最后一级数据一般是不可再分的,称为________数据。

9、_______子句用于定义数据显示和打印的格式,而_______子句用于定义数据的存储格式,它可以帮助我们从速度和_______上进行程序优化。

四、程序分析(30分)1、写出下列程序片段的输出。

PROCEDURE DIVISION.OUTSIDE.DISPLAY "NOW I AM AT OUTSIDE."PERFORM MIDDLE THRU INSIDE.DISPLAY "JUNMP TO OUTSIDE.".STOP RUN.MIDDLE.DISPLAY "NOW I AM AT MIDDLELINE."INSIDE.DISPLAY " NOW I AM AT INSIDE."PERFORM MIDDLE.DISPLAY " BACK TO INSIDE".2、写出下述程序的输出。

IDENTIFICATION DIVISON. PROGRAM-ID. Whereis.DATA DIVISION.01 CityCode PIC 9 VALUE 5.88 Wuhan VALUE 1.88 Beijing VALUE 2.88 Shanghai VALUE 3.88 Hongkong VALUE 4.88 mainland VALUE 1 THRU 3.PROCEDURE DIVISION.FINDME.SUBTRACT 2,1 From CityCode.IF WuhanDISPLAY "Hey, I am home."END-IFIF BeijingDISPLAY "Hey, I am in Beijing."END-IFIF ShanghaiDISPLAY "Hey, I am in Shanghai." END-IFIF mainlandDISPLAY "Hey, I am in China mainland." END-IF.EXIT PROGRAM.3、阅读以下程序:IDENTIFICATION DIVISON.PROGRAM-ID. feeder.DATA DIVISION.WORKING-STORAGE SECTION.O1 Myrice PIC 9(3) VALUE 500.PROCEDURE DEVISION.BEGIN.DISPLAY “Myrice is”,Myrice.CALL “eater” USING BY REFERENCE Myr ice.DISPLAY “Now Myrice is”,Myrice.EXIT PROGRAM.IDENTIFICATION DIVISION.PROGRAM-ID. eater.DATA DIVISON.LINKAGE SECTION.01 Rice PIC 9(3).PROCEDURE DIVISION USING Rice.EAT.SUBTRACT 100 FROM Rice.EXIT PROGRAM.END PROGRAM eater.END PROGRAM feeder.请问程序的输出是什么?如果将斜体划线部分改为CALL “eater” USING BY CONTENT Myrice.程序的输出又是什么?4、阅读以下程序片段回答问题:EVALUATE Gender TRUE TRUEWHEN "M" Age‹20 ANY MOVE 5 TO BonusWHEN "F" Age‹20 ANY MOVE 10 TO BonusWHEN "M" Age>19 AND ‹41 Service‹10 MOVE 12 TO BonusWHEN "F" Age>19 AND ‹41 Service‹10 MOVE 13 TO BonusWHEN "M" Age>40 Service‹10 MOVE 20 TO BonusWHEN "F" Age>40 Service‹10 MOVE 15 TO BonusWHEN "F" ANY Service>20 MOVE 25 TO BonusWHEN OTHER MOVE 1 TO BonusEND-EVALUATE(1)若Gender为“M”,AGE为20,Service为20,则最终Bonus应为多少? (2)若Gender为“F”,AGE为35,Service为21,则最终Bonus应为多少?5、分析以下程序片段的输出:PERFORM IterationCount VARYING Idx1 FROM 1 BY 5UNTIL Idx1 EQUAL TO 16AFTER Idx2 FROM 6 BY -2UNTIL Idx2 LESS THAN 2 DISPLAY “Idx1=”,Idx1, “Idx2=”,Idx2END PERFORM.五、程序设计(20分)1、在一个储户信息管理系统中,每个储户的信息表如下:为在内存中存放50个储户信息,请给出数据定义。

(10分)2、请写一个COBOL程序计算8的阶乘。

(10分)。