2.强大的数据功能Visual FoxPro 8.0新增数据主要体现在4个方面。“IDE”选项卡:设置Visual FoxPro 8.0系统窗口的显示形式。......
2023-12-04
3.5 程序流程与控制
在Visual FoxPro 8.0中,程序常用的结构控制方式有3种,即顺序结构控制方式、分支结构控制方式和循环结构控制方式。
3.5.1 顺序结构控制方式
所谓顺序结构控制方式,是指程序在设计和运行过程中,按照一定的顺序执行。
【例3.1】在职工基本情况表(见表3.3)中添加职工记录,按照职工号、姓名、性别、年龄等顺序进行添加。
程序代码如下:
Set talk off
Clear
Use 职工基本情况表.dbf
Store space (6) to wnumber
Store space (8) to sname
Store space (2) to sex
Store space (2) to wyear
Store space (8) to proformance
Store space (4) to polity
Store space (6) to salary
Store space (10) to bio
@ 0,0 say “添加新职工”
@ 1,15 say “职工号” get wnumber
@ 2,15 say “姓名” get sname
@ 3,15 say “性别” get sex
@ 4,15 say “年龄” get wyear
@ 5,15 say “职称” get proformance
@ 6,15 say “政治面貌” get polity
@ 7,15 say “工资” get salary
@ 8,15 say “个人简历” get bio
@ 9,15 say “照片” get photo
Append Blank
Replace “职工号” with wnumber
Replace “姓名” with wnumber
Replace “性别” with sex
Replace “年龄” with wyear
Replace “职称” with proformance
Replace “政治面貌” with polity
Replace “工资” with salary
Replace “个人简历” with bio
Replace “照片” with photo
=messagebox(“添加成功!”)
Use
Set talk on
结果如图3.5.1所示。
3.5.2 分支结构控制方式
所谓分支控制方式,是指在当前几种可能的情况中选择一种情况来执行程序。
图3.5.1 提示信息对话框
1.IF分支
格式如下:
If <条件>
<语句序列1>
Else
<语句序列2>
Endif
【例3.2】统计数字的范围。
程序代码如下:
Set talk off
Clear
Store 0 to m
Store 0 to n
Store 0 to p
Store 0 to q
Store 0 to a
Accept“请输入一个数:” to a
If a>100
m=m+1
Else
If a>10 and a<=100
n=n+1
Else
If a>1 and a<=10
p=p+1
Else
If a<=1
q=q+1
Endif
Endif
Endif
Endif
?m,n,p,q
Set talk on
结果如下:
2.CASE分支
格式如下:
Do case
Case <条件1>
<语句序列1>
Case <条件2>
<语句序列2>
Case <条件3>
<语句序列3>
…
Other
<语句序列n>
Endcase
【例3.3】在命令按钮组中选择一个按钮。命令按钮组如图3.5.2所示。
(www.chuimin.cn)
图3.5.2 命令按钮组
程序代码如下:
Set talk off
Do case
Case This.Commandgroup1.Value=1
Go top
Case This.Commandgroup1.Value=2
If! Bof()
Skip -1
Endif
Case This.Commandgroup1.Value=3
If! Eof()
Skip
Endif
Case This.Commandgroup1.Value=4
Go bottom
Case This.Commandgroup1.Value=5
Thisform.release
Endcase
Thisform.refresh()
3.5.3 循环结构控制方式
所谓循环结构控制方式,是指在程序执行过程中同一个条件被执行多次。
1.For循环
格式如下:
For <条件>
<语句序列>
Endfor
功能:若满足条件,则重复执行语句序列。
【例3.4】计算的值。
程序代码如下:
Set talk off
Clear
Store 0 to a
Store 0 to s
For a=0 to 100
s=s+a
Endfor
a=a+1
?s
Set talk on
结果如下:
5050
【例3.5】计算10!的值。
程序代码如下:
Set talk off
A=1
For B=1 To 10
A=A*B
Endfor
?A
Set talk on
结果如下:
3628800
2.Do While循环
格式如下:
Do while <条件>
<语句序列>
Enddo
功能:如果满足条件,则重复执行语句序列。
【例3.6】计算一个数组。
程序代码如下:
Set talk off
Dimension C (2, 3)
A=1
Do While A<=2
B=1
Do While B<=3
C(A,B)=A*B
?C
B=B+1
Enddo
?
A=A+1
Enddo
Return
Set talk on
结果如下:
3.Scan循环
格式如下:
Scan <条件>
<语句序列>
Endscan
功能:如果满足当前打开表的范围条件,则执行语句序列。
【例3.7】在职工基本情况表(见表3.3)中查询职称为讲师的职工记录。
程序代码如下:
Set talk off
Use 职工基本情况表.dbf
Scan all for 职称=“讲师”
Display
Endscan
Set talk on
结果如下:
2.强大的数据功能Visual FoxPro 8.0新增数据主要体现在4个方面。“IDE”选项卡:设置Visual FoxPro 8.0系统窗口的显示形式。......
2023-12-04
第一种网状模型数据库结构被开发、研制出来,它是网状数据库模型的基础和典型代表。而在数据库中,二者是相互独立的。表1.1数据库管理系统与传统文件应用系统特性对照表......
2023-12-04
图2.3.1Visual FoxPro 8.0的用户界面2.3.1标题栏标题栏位于用户界面的最上方,主要包括系统图标、标题和控制按钮。菜单项主要作用是对Visual FoxPro 8.0提供帮助信息。......
2023-12-04
数据和信息是两种不同的概念。2.数据库系统数据库系统是计算机系统与数据结合使用的一个应用系统,它是由数据库、数据库管理系统、数据库应用系统、开发人员和管理人员构成的。......
2023-12-04
图3.4.1追加记录结果例如,在职工基本情况表中删除所有男职工的记录:Set talk offUse 职工基本情况表.dbfDelete all for 性别=“男”ListUseSet talk on结果如下:3.替换命令命令格式如下:Replace [表达式1] with [表达式2]功能:用表达式2替换表达式1。例如:Set talk offUse 职工基本情况表.dbfSkip 4DisplayUseSet talk on结果如下:9.显示屏幕或窗口命令命令格式如下:Set talk off/on/window/nowindow功能:控制程序在执行时结果是否出现在屏幕或窗口上。......
2023-12-04
2.字符运算符字符运算符有+和-。3.逻辑运算符逻辑运算符有!4.关系表达式关系表达式是由关系运算符、数值表达式、字符表达式或日期表达式组成的式子。......
2023-12-04
相关推荐