如果在命令窗口执行命令:LIST名称,主窗口中显示: 记录行 名称 1 电视机 2 计算机 3 电扇线 4 电脑连线 5 电话线 假定名称字段为字符型,宽度为8

admin2012-09-07  38

问题 如果在命令窗口执行命令:LIST名称,主窗口中显示:
   记录行  名称
    1     电视机
    2     计算机
    3     电扇线
    4     电脑连线
    5     电话线
    假定名称字段为字符型,宽度为8,那么下面程序段的输出结果是(            )。
      GO 2
      SCAN NEXT 4 FOR LEFT(名称,2)=“电”
        IF RIGHT(名称,2)=“线”
           EXIT
        ENDIF
      ENDSCAN
      ?名称

选项 A、电视机
B、电扇线
C、电脑连线
D、电话线

答案C

解析 程序中,首先将指针指向第二条记录,然后执行SCAN循环。SCAN语句的格式是:
        SCAN[<范围>][FOR<条件1>][WHILHE<条件2>]
        循环体
    执行该语句时,指针自动、依次地在当前表的指定范围内满足条件的记录上移动,对每一条记录执行循环体内的命令。题干中的范围是从第2条记录到第5条记录。循环条件是LEFT(名称,2)=“电”,即表示第一个字为“电”字的记录(因为一个汉字占用两个字符),如果满足条件,则进入循环体,接着判断RlGHT(名称,2)是否为“线”,如果是则跳出循环体,输出该记录的“名称”;否则记录指针指向下一条记录,重新开始循环。通过分析,第4条记录恰好符合条件,循环结束,最后显示的是“电脑连线”。
    本题要注意的是第3条记录“电扇线”,因为字段宽度为8,而“电扇线”只占6个字节,因此在使用RIGHT(名称,2)得到的结果是最后两个空字节,而不是“线”字。
转载请注明原文地址:https://kaotiyun.com/show/S6sp777K
0

最新回复(0)