do case 语句
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6、表RSDA.DBF结构为:姓名(C,6);性别(C,2),年龄(N,2),出生日期(D,8)。判断表中是否有"李明",查询此人的性别及年龄,确定参加运动会的项目。
SET TALK OFF
USE RSDA
***********SPACE**********
【?】 FOR 姓名= "李明"
***********SPACE**********
IF .NOT. 【?】
DO CASE
CASE 性别= "男"
?"请参加爬山比赛"
CASE 年龄<=50
? "请参加投篮比赛"
CASE 年龄<=60
? "请参加老年迪斯科比赛"
***********SPACE**********
【?】
ELSE
? "查无此人"
BROWSE
ENDIF
USE
SET TALK ON
RETURN
『答案』:
1 LOCATE 或 LOCA 或 LOCATE★ALL
2 EOF()
3 ENDCASE 或 ENDC
13、对表XSDB.DBF中的计算机和英语都大于等于90分以上的学生奖学金进行调整:法律系学生奖学金增加12元、英语系学生奖学金增加15元、中文系学生奖学金增加18元,其他系学生奖学金增加20元。请在【】处添上适当的内容,使程序完整。
USE XSDB
***********SPACE**********
【?】
DO WHILE FOUN()
DO CASE
CASE 系别="法律"
ZJ=12
CASE 系别="英语"
ZJ=15
CASE 系别="中文"
ZJ=18
***********SPACE**********
【?】
ZJ=20
ENDCASE
REPL 奖学金 WITH 奖学金+ZJ
***********SPACE**********
【?】
ENDDO
USE
『答案』: 1 LOCA★FOR★计算机★>=90 ★.AND.★英语★>=90 或 LOCA★FOR★90<=★计算机★.AND.★90<=英语或 LOCA★FOR★90<=★计算机★.AND.★英语★>=90 或 LOCA ★FOR★计算机★>=90 ★.AND.★90<=★英语或 LOCA★FOR★计算机★>=90 ★AND★英语★>=90 或 LOCA★FOR★90<=★计算机★AND★90<=英语或 LOCA★FOR★90<=★计算机★AND★英语★>=90 或 LOCA★FOR★计算机★>=90 ★AND★90<=★英语
2 OTHERWISE 或 CASE★NOT★(★系别★=★"法律"★OR★系别★=★"英语"★OR ★系别★=★"中文"★) 或 CASE★.T. 或 CASE★NOT★(★系别★=★'法律'★OR★系别★=★'英语'★OR★系别★=★'中文'★) 或 CASE★NOT★(★系别★=★[法律]★OR★系别★=★[英语]★OR★系别★=★[中文]★)
18、实现:求0-100之间的奇数之和,超出范围则退出。
X=0
Y=0
DO WHILE .T.
X=X+1
DO CASE
***********SPACE**********
CASE 【?】
LOOP
CASE X>=100
***********SPACE**********
【?】
OTHERWISE
Y=Y+X
ENDCASE
***********SPACE**********
【?】
? "0-100之间的奇数之和为: ", Y
RETURN
『答案』:
1 MOD(★X,2)★=0 或 INT★(X/2)★=X/
2 或 X%2★=0 或 0=MOD★(X,2) 或 X/2★=★INT(X/2) 或 0=★X%2 或 MOD(★X,2)★<>1 或 MOD(★X,2)★#1 或 MOD(★X,2)★!=1
2 EXIT 或 QUIT
3 ENDDO 或 ENDD
4、在RSH.dbf 中,查找职工赵红的工资,如果工资小于200元,则增加100元;如果工资大于等于200元且小于500元时,则增加50元;否则增加20元。最后显示赵红的姓名和工资。
CLEAR
USE RSH
LOCATE FOR 姓名 =赵红
DO CASE
CASE 工资< 200
REPLACE 工资 WITH 工资+ 100
CASE 工资< 500
REPLACE 工资 WITH 工资+ 50
OTHERWISE
REPLACE 工资 WITH 工资+ 20
ENDCASE
***********FOUND**********
LIST 姓名,工资
USE
『答案』:1 LOCATE FOR 姓名= "赵红" 或 LOCA FOR 姓名= '赵红' 或 LOCA FOR 姓名= "赵红" 或 LOCATE FOR 姓名= [赵红] 或 LOCA FOR 姓名= [赵红] 或 LOCATE FOR 姓名= '赵红' 2 DISP 姓名,工资或 ?姓名,工资或 DISPLAY 姓名,工资
10、统计RSH.dbf 中职称是教授、副教授、讲师和助教的人数。
USE RSH
***********FOUND**********
STORE 1 TO A , B , C , D
DO WHILE .NOT.EOF ( )
DO CASE
CASE 职称 = "教授"
A = A + 1
CASE 职称 = "副教授"
B = B + 1
CASE 职称 = "讲师"
C = C + 1
CASE 职称 = "助教"
D = D + 1
ENDCASE
***********FOUND**********
NEXT 1
ENDDO
USE
? A,B,C,D
『答案』:1 STORE 0 TO A,B,C,D 2 SKIP 或 SKIP 1
36、键盘输入X值时,求其相应的Y值
* ┌ -1 (X<0)
* │
* Y=├ 0 (X=0)
* │
* └ 1 (X>0)
SET TALK OFF