- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实用标准文案
实用标准文案
精彩文档
精彩文档
Visual FoxPro 程序设计基础实例
▲ 表文件CJ.DBF情况:
学生成绩数据库的表文件cj.dbf 结构为:
字段名
字段类型
宽度
小数位
学号
字符型
6
姓名
字符型
10
英语
数值型
6
2
高等数学
数值型
6
2
计算机应用
数值型
6
2
总分
数值型
7
2
平均分
数值型
6
2
建立表文件cj.dbf 结构显示如下:
输入一些学生成绩。
例 2-1 计算表CJ.DBF中的平均分和总分的程序set talk off
CLOSE ALL
USE c:\000\CJ
REPLACE ALL 总分 WITH 英语+数学+计算机应用REPLACE ALL平均分 WITH 总分/3
LIST
执行结果为:
例2-2 统计成绩表CJ.DBF中平均分大于90分的所有学生数目。SET TALK OFF
CLEAR
USE c:\000\CJ M=0
SCAN FOR 平均分90 DISPLAY
M=M+1 ENDSCAN
?总数为:,M USE RETURN
执行结果:
例2-3 统计成绩表CJ.DBF中所有英语大于等于75分的学生数目。SET TALK OFF
USE C:\000\CJ MCOUNT=0
FOR REC=1 TO RECCOUNT() && RECCOUNT() 为该库中的记录数GO REC
IF 英语75 LOOP
ENDIF DISPLAY
MCOUNT=MCOUNT+1 ENDFOR
? 英语成绩不小于75分的总数为:, MCOUNT USE
RETURN
执行结果:
例2-4 显示表CJ.DBF中英语成绩小于90分的学生。SET TALK OFF
CLEAR USE CJ
DO WHILE.T. ( **或DO WHILE.NOT.EOF( ) ) IF 英语=90
SKIP (或** LOOP ) ENDIF
DISPLAY
WAIT按任一键继续显示.… SKIP
ENDDO USE RETURN
执行结果:
例2-5 对成绩表CJ.DBF查询,若首记录的平均分数大于60分,则显示及格;成绩不及格”否则显示不及格。
SET TALK OFF CLEAR
USE C:\000\CJ
IF 平均分 60
? 姓名+成绩及格
ELSE
? 姓名+成绩不及格 ENDIF
USE RETURN
执行结果如下:
例 2-6 对成绩表CJ.DBF查询,根据该学生的平均分进行分类: 优秀 90=平均分
优良 80=平均分 90 良好 70=平均分80 及格 60=平均分70 不及格 平均分60
程 序 为 : SET TALK OFF CLEAR
USE C:\000\CJ DO CASE
CASE 平均分 = 90
? 姓名 +:成绩优秀 CASE 平均分 = 80
? 姓名 + : 成绩优良 CASE 平均分 = 70
? 姓名 + :成绩良好 CASE 平均分 = 60
? 姓名 + : 成绩及格 OTHERWISE
? 姓名 + : 成绩不及格 ENDCASE
USE RETURN
执行结果如下:
例 2-7 设计5 乘5 的乘法表set talk off
clear x=1
do while x=5 y=1
do while y=x s=x*y
??str(y,1)+*+str(x,1)+=+str(s,2)+ y=y+1
enddo
?
x=x+1 enddo
执行结果:
例 2-8 DO CASE……ENDCASE命令的嵌套用法. SET TAlK OFF
CLEAR
?1 录入
?2 查询
?3 修改
?4 打印
ACCEPT输入选择(0-4):TO MSELECT DO CASE
CASE MSELECT=l
DO APP 录入程序CASE MSELECT=2
DO QUER 查询程序 CASE MSElECT=3
DO MOD 修改程序CASE MSELECT=4
CLEAR
?1--打印A 类表
?2--打印B 类表
?3--打印C 类表
ACCEPT输入选择(1-3):TO MY DO CASE
CASE MY=1
DO PRINT A CASE MY=2
DO PRINT B CASE MY=3
DO PRINT C END CASE
例 2-9 显示成绩库CJ.DBF中记录号为偶数的前三个学生记录。
SET TALK OFF
CLEAR
USE C:\000\CJ
FOR REC=2 TO 6 STEP 2 GO REC
DISPLAY SKIP 2 ENDFOR USE RETURN
执行结果:
例 2-10 编程计算:S=l! +2! +3!+...+10!的值。要求用过程求阶乘。SET TALK OFF
CLE
文档评论(0)