三、讀程序(本大題共5小題,每小題4分,共20分)
認(rèn)真閱讀所給的程序,每段程序后面會根據(jù)上面的程序給出幾個小題,每小題列出的四個備選項(xiàng)中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內(nèi),錯選、多選或未選均無分。
【程序(一)】
*表S1.DBF,其中有字段變量“編號”,且以它作為關(guān)鍵字已建立索引文件SA.IDX,在該表
*中因誤操作可能有一些重復(fù)的記錄,以下程序是實(shí)現(xiàn)查詢重復(fù)記錄并判斷是否刪除重復(fù)的
*記錄。
SET TALK OFF
USE S1 INDEX SA
K=“Y”
DO WHILE NOT EOF()
XM=編號
SKIP
IF ______
DELETE
DISPLAY
WAIT“是否立即刪除(Y/N)” TO K
IF UPPER(K)=“Y”
PACK
ELSE
RECALL
ENDIF
ENDIF
ENDDO
USE
SET TALK ON
1.本程序中建立并打開索引SA的主要作用是( )
A.為了建立循環(huán)結(jié)構(gòu) B.讓記錄按編號排序
C.為了配合查詢命令 D.為了保證該表可編輯
2.本程序中,橫線處IF語句的條件表達(dá)式為 ( )
A.XM == 編號 B.NOT EOF()
C.SEEK D.FOUND()
3.程序中DISPLAY命令的作用是( )
A.顯示第1條記錄的信息 B.顯示作了刪除標(biāo)記的重復(fù)記錄的信息
C.顯示所有記錄的信息 D.顯示最后1條記錄信息
【程序(二)】
* Employee表中有 姓名、工齡、級別、獎金等字段
SET TALK OFF
USE Employee
LOCATE ALL FOR 級別=“工程師”
DISPLAY
A=工齡
IF A<10
REPLACE 獎金 WITH 獎金*2
ELSE
IF A>20
REPLACE獎金WITH獎金*5
ELSE
REPLACE獎金WITH獎金*3
ENDIF
ENDIF
USE
SET TALK ON
4.本程序的功能是( )
A.顯示employee表中所有工程師信息,并修改所有工程師獎金,即工齡10年以下獎金翻2倍,工齡20年以上獎金翻5倍,工齡為10至20年獎金翻3倍
B.找到employee表中第一個工程師,并修改這個工程師的獎金,即該員工工齡為10年以下獎金翻2倍,工齡20年以上獎金翻5倍,工齡為10至20年獎金翻3倍
C.顯示employee表中所有工程師信息,并修改所有工程師獎金,即工齡10年以下獎金翻3倍,工齡20年以上獎金翻2倍,工齡為10至20年獎金翻5倍
D.找到employee表中第一個工程師,并修改這個工程師的獎金,即該員工工齡為10年以下獎金翻3倍,工齡20年以上獎金翻2倍,工齡為10至20年獎金翻5倍
5.若已經(jīng)對“級別”字段建立索引, 且為當(dāng)前索引,將程序中“ LOCATE ALL FOR 級別=“工程師” ”,這句查詢命令改成seek命令,以下哪個選項(xiàng)是正確的 ?( )
A.seek “工程師” B.seek 級別=工程師
C.seek 級別 D.seek 級別=“工程師”