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

admin2010-08-21  33

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

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

答案C

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

最新回复(0)