VFP习题以及SQL练习题 下载本文

ENDIF ELSE

?\表中没有刘明的记录!\ ENDIF USE

RETURN

2. 逐条显示数据表 STU.DBF 中的所有记录。 SET TALK OFF USE STUD

DO WHILE ___________①__________ DISPLAY

_____________②_____________ WAIT \按任意键显示下一条记录!\ ENDDO USE

RETURN

3. 在表 SSS.DBF 中查询某专业的学生, SSS.DBF中有“专业”字段名。 SET TALK OFF USE SSS

ACCEPT \请输入专业名称:\ TO ZY LOCATE FOR 专业=ZY

IF ____________①____________

? \没有符合条件的记录,按任意键结束!\ WAIT CLEAR RETURN ENDIF

* 逐条显示该专业所有学生的记录 DO WHILE .NOT.EOF() DISPLAY

________________②_______________ ENDDO WAIT RETURN

4. 在表ABC.DBF 中查询“姓名”为李燕的记录。 SET TALK OFF USE ABC

_________①____________ SEEK \李燕\ IF FOUND() DISPLAY ELSE

?\库中没有李小燕的记录!\ ENDIF

USE

RETURN

5. 本程序是根据输入的表,在表中查找指定“姓名”的记录,如果找到则删除此记录 set talk off

accept \输入数据表名:\ use ______①_______ accept \姓名:\ locate __________ if .not.______ __________

else ? \查无此人\ endif use

set talk on return

6. 设学生的数学、 物理、 英语这三门课程的期末考试成绩存在放在表 CJ.DBF 中。如果某一学生三门课程的成绩均达到 85 分以上(包括 85 分在内), 应在该学生记录的“等级”这一字段中填入“优秀”。 SET TALK OFF USE CJ

DO WHIL.NOT.EOF()

IF 数学>=85____________①___________ ______________②_____________ ENDIF SKIP ENDDO USE

RETURN

7. 在表 STUD.DBF 中查找总分最高者并输出其姓名、专业和总分。 SET TALK OFF USE STUD XM=姓名 ZY=专业 ZF=总分

DO WHILE.NOT.EOF()

_______________①_____________ IF ZF<总分

____________②____________ ③_

____________④____________ ____________⑤____________ ENDIF ENDDO

CLEAR

?XM, ZY, ZF USE

RETURN

8. 设成绩表 CJK.DBF 中“数学”(数值型字段)这门课程的学分为4, 其学分值计算的方法如下:

数学≥90,学分值为4; 80≤数学〈90,学分值为3; 70≤数学〈80,学分值为2; 60≤数学〈70,学分值为1; 数学〈60,学分值为0。

计算任一学生学这门课程的学分值的程序如下: SET TALK OFF USE CJK

ACCEPT \输入学号:\ XF=0 && 存放学分值 LOCATE FOR 学号=XH DO CASE

CASE__________①__________ XF=4

CASE___________②___________ XF=3

CASE___________③___________ XF=2

CASE___________④___________ XF=1 OTHERWISE XF=0 ENDCASE ?\学号:\ USE

RETURN

9. 按程序中的要求填内容。 SET TALK OFF

ACCEPT \输入数据表名:\ USE &KM

* 连续显示1~5 条记录 ____________①__________ WAIT

GO BOTTOM

* 显示最后 4 条记录

____________②__________ LIST REST USE

RETURN

四、 读程序选结果

1. 有以下两个表文件,其中表文件 SEE.DBF 中的记录如下: Record # 学号 姓名 性别 专业

1 0004 方平军 男 机械工程 2 2009 王子李 男 计算机 3 1007 肖丹苹 女 经济管理 4 1002 李小锋 男 经济管理 5 3020 李旭君 女 电子工程 表JOY.DBF 中的记录如下:

Recod # 学号 数学 物理 1 0004 82 78 2 2009 72 83 3 1007 92 95 4 1002 90 93 5 3020 85 86 执行以下程序: SET TALK OFF SELECT 2 USE JOY SELECT 1 USE SEE

LOCATE FOR \李\姓名 XH=学号 XM=姓名 SELECT 2

LOCATE FOR 学号=XH SX=数学

?XH,XM,SX SELECT 1 CONTINUE XH=学号 SELECT 2 CONTINUE

?学号,A->姓名,物理 CLOSE ALL RETURN

(1) 第一条命令?显示的值分别为________。

(A)1002、李小锋、90 (B)0004、方平军、82 (C)2009、王子李、72 (D)1002、李小锋、78 (2) 第二条命令?显示的值分别为________。

(A)2020、李旭君、85 (B)3020、李旭君、86 (C)2009、王子李、83 (D)1002、李小锋、93 2. 有以下两个表文件,其中表文件 KU1.DBF 中的记录如下: