|
从下列的3道试题(试题一至试题三)中任先2道解答。如果解答的试题数超过2道,则题号小的2道解答有效。 试题一 阅读以下说明和流程图,回答问题1至问题3,将解答写在答卷的对应栏内。 【说明】 本流程图描述了某仓库物品入出库管理的处理流程。每张入库单或出库单都由两位操作员分别录入,经处理1或处理3输入系统后作合法性检查,并将合法的入库单或出库单记入入库单文件或出库单文件。然后通过处理 2 或处理 4 实时更新库存文件。处理5每周执行一次,它依次检查库中的每一种物品,当某物品的库存量小于该物品的最低库存量时,制订采购计划,输出订购单。处理6和处理7每月执行一次,处理6将入库单文件和出库单文件合并成月入出库文件,并根据统计的要求对其进行排序。处理 7 进行统计,产生月报表,并把该月合并后的月入出库文件添加到月入出库后备文件中,以备日后查找,最后清除入库单文件、出库单文件和月入出库文件。 系统中某些文件和报表的格式如下: 库存文件记录:物品编号十名称十规格十库存量十最低库存量十最高库存量(其中“最高库存量”指该物品允许存放在库中的最大值) 入库单文件记录:日期+物品编号+数量 出库单文件记录:日期十物品编号十数量 月报表格式: 物品编号 日期 入库数 出库数 xxxx xx xx xx xx xx xx xx xx xx . . . 当月小计 xxx xxx xxxx xx xx xx xx xx xx xx xx xx . . . 【问题1】 指出处理3能检查出库单中的哪些错误。 【问题2】 指出月入出库文件的记录格式. 【问题3】 指出处理6排序的第一和第二关键字。 【流程图】 试题二 阅读以下说明和流程图,回答问题 1 至问题 3,将解答写在答卷的对应栏内。 【说明】 有一种游戏,其规则如下:有一个3×3的方格,每个方格中只可画‘+’符号或‘-’符号,表示该方格的值。图(a)定义了各方格的位置,表1为每个方格位置定义了与其相关联的位置集,各方格的初值如图(b)所示。游戏开始后,每次可选一个值为‘+’的方格位置,然后根据表1将该位置所对应的每个相关联的位置上的符号重画成与其不同的符号,即将‘+’重画成‘-’,将‘-’重画成‘+’。重画操作可用所选的位置编号来描述。例如在图(b)所示的情况下,选择位置4时,重画结果如图(c)所示。经过连续的若干次这样的操作后,当3×3方格呈现出图(d)所示的图形时,表示获胜;当呈现出图(e)所示的图形时,表示失败。 下列流程图旨在输出从初始状态出发直至获胜的重画操作(即所选的位置编号)序列。图中假定数组A[0..8]存放3×3方格的值,数组c[0..8][1..5]存放表 1所示的各方格位置的相关联的位置集、数组d[0..8]存放各方格位置的相关联的位置个数,数组元素 S[1]~ S[k]存放各次重画操作所对应的位置编号,变量N存放3×3 方格中当前的‘+’符号的个数。 012 -+- +++ - 345 -+- +-+ +-+ ――― 678 一+一 +++ 一 图(a) 图(b) 图(C) 图(d) 图(e) 表1方格位置及其相关位置集的对照表 方格位置 相关位置集 0 0134 1 012 2 1245 3 036 4 13457 5 258 6 3467 7 678 8 4578 【问题1】 填充图中的①-④。 【问题2】 图中的⑤应与A、B、C中的哪一点连接。 【问题3】 如果每次由游戏者选择方格改由程序自动枚举选择,那么,为从初态出发求出所有可 能的获胜重画操作序列,在哪些情况下需要进行回溯处理。 【流程图】 试题三 阅读以下说明和流程图,回答问题1和问题2, 将解答写在答卷的对应栏内 【说明】 本流程图采用状态矩阵方法将已知字符序列翻译成实数(其句法本题的状态矩阵分成两部分,语义动作矩阵FM和状志转换矩阵S放每个状态遇到某字符时应执行的语义动作以及执行动作后应转移到的新状态。 本题的状态矩阵分成两部分,语义动作矩阵FM和状志转换矩阵S放每个状态遇到某字符时应执行的语义动作以及执行动作后应转移到的新状态。本流程图从0状态出发逐个读入字符,在执行了FM中相应的语义动作SM中指出的相应新状态,重复这一过程,直至到达9状态或10状确地把该字符序列翻译成实数(注意,此时已多读进实数后的下一个字符);出错。 图3.1 某语言的实数句法图 状态转换矩阵 SM \ \字符类 \新状态\ 状态\ \ +或- (类别0) 数字 (类别1) 小数点 (类别2) 字符E (类别3) 其它字符 (类别4) 0 1 2 3 10 10 1 10 ① ② 10 10 2 9 2 4 6 9 3 10 5 10 10 10 4 9 ③ 9 ④ 9 5 9 5 9 6 9 6 7 8 10 10 10 7 10 ⑤ 10 10 10 8 9 8 9 9 9 语义动作矩阵 FM \ \字符类 \新状态\ 状态\ \ +或- (类别0) 数字 (类别1) 小数点 (类别2) 字符E (类别3) 其它字符 (类别4) 0 f1 f2 f0 f7 f7 1 f7 ⑥ f0 f7 f7 2 f6 ⑦ f0 f0 f6 3 f7 ⑧ f7 f7 f7 4 f6 f3 f6 f0 f6 5 f6 f3 f6 ⑨ f6 6 ⑩ f5 f7 f7 f7 7 f7 f5 f7 f7 f7 8 f6 f5 f6 f6 f6 现有以下语义动作函数: f0: 空函数,不做任何操作。 f1:按当前字符确定实数符号sign为1或一1。 f2:翻译实数的整数部分值(求m )。 f3:翻译实数的小数部分值(求d)。 f4:按当前字符(幂的正负号)确定求幂所用的因子 PS(10.0或0.1)。 f5:翻译实数的幂(求p)。 f6:求实数的值R=sign*(m+d)*p f7:输出错误信息。 【流程图】 注:设已知实数字符串存于字符数组str中。 【问题1】 将状态转换矩阵SM中①-⑤处的正确内容填入答卷的对应栏内。 【问题2】 将语义动作矩阵 FM中⑥-⑩处的正确内容填入答卷的对应栏内。 试题四 在COMST型计算机上可以使用试卷上所附的CASL汇编语言,阅读程序说明和 CASL程序,把应填入_(n)_ 处的字句,写在答卷的对应栏内。 【程序4.1说明】 本子程序是对15位二进位串,求它的奇校验位,生成16位二进位串,使16位二进位串中有奇效个1。 进入此子程序时,15位二进位串在GR1的第1位至第15位,假定GR1的第0位是0,求得的奇校验位装配在GR1的第0位上。 【程序4.1】 START BEG PUSH 0,GR2 PUSH 0,GR2 LEA GR3,1 ____(1)____ L1 SLL GR2,1 ____ (2) ____ LEA GR3,1, | |
| 2004年上半年程序员考试题及答案二 2004年上半年程序员考试题及答案一 2003年度系统设计师/高级程序员试题 2003年程序员考试试题 99年度高级程序员试卷答案 99年度高级程序员上午试卷 轻松应对高程软件设计题 网络程序员级模拟考试试题 程序员02年上午试卷硬件部分解答 网络程序员考试练习题 |
| 文章评论 | |||