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

admin2014-11-29  29

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

最新回复(0)