VFP顺序结构与分支结构程序设计

合集下载

解析VFP三种循环语句

解析VFP三种循环语句
?” M = S SU ’ UM S TT E ALK ON RE TUR N

程序分析 :本例中循环的次数事前未知,只知道什么时候退出循环 时, 因此只能使用 D IE语句 , OWH L 不能使用 F R语句。 O 例2 计算 12 23 _ +) " + .N + 1 的值 执行过程: 命令执行时 , 首先判断 D L < O WHIE 条件 > 值为卫时 , 则 用 D IE O WH L 语句编写程序 反复执行 < 命令序列 >遇到 E D O时 , , N D 返回到 D IE处重复以 O WH L 用 F R语句编写程序, O 代码如下 上的过程。当 < 条件 > 值为F时, 直接跳出循环转去执行 E D O后面的 N D S T AL OFF E T K 命令。说明:O WH L 唐 起始命令,N D D IE是, E D O是循 书 命令 ;O D CL A R E I UT ” ” TO NP N= N WH L IE和 E D O之问的命令序列为循环体, ND S 0 = 令, 由它完成规定的数据处理工作 ;O P L O 是循环短路语句, 用于控制循环 F OR =1 I TO N S S I 、 = 十【f+l 的特殊命令,可以使程序执行流程转向循环开始命令处 ;x r E r 也是控制 ENDF OR 循环的特料谕冷 , 用于退 出循研 . , 向 可以跳出循研. 转去勃【 彳 = 酐 吉 瑜 ? ” =” S .S 令之后的命令 ; O P和 E T必须使用在循环体中, 往往是和分支 LO XI 而目 S ET lA ON r LK RET URN 结构配合使用;O WH L D IE和 E D O必须成对出现, ND 且各自独占—行; RE TURN D IE后的 < O WH L 条件 > 应在循环到一定次娄日 , 殳寸其值为F, 否则会导致 程序分析: 本例中循环的次数为 N 可以使用 D IE语句 , , O WH L 也可 死循环。出现死循环时, E C 可用 S 键终止。 以使用 F R语句。对程序代码进行比铰, O 显然 F R语句更加简洁直观。 O 1 2计数循环 例3 显示“ 学生入学登记表” 中性别为“ 且专业是“ 男” 计算机” 的学生 命令格式 : F R< 强 > ( O 锎 = 初值 > O< T 烛 > P步蛐 性别 专业 、 、 姓名 籍贯、 民族和入学成绩。

VFP

VFP
39
f=2*x-1
case x<3
f=3*x+5
case x<5 f=x+1
2013年秋
VFP程序设计
四、循环结构:
重复执行相同的操作(循环体) 1、条件循环
条件成立? 假
do while<逻辑表达式>
真 循环体
<语句序列>
enddo
enddo 后面语句
40
2013年秋
VFP程序设计
例:编写计算s=1+2+3+……+100和的程 序,要求输出结果格式为: s=1+2+3+…+100=5050 clear 循环 s i s=0 次数 初始值 0 1 i=1 1 1 2 do while i<=100 2 3 3 s=s+i 3 6 4 i=i+1 …… …… …… enddo 99 4950 100 ?"s=1+2+3+...+100=",s 100 5050 101 cancel
X Y X 2 X 2
2
( X 1) (0 X 1) ( X 0)
VFP程序设计
33
2013年秋
VFP程序设计
如何去掉空格?
34
2013年秋
VFP程序设计
35
2013年秋
VFP程序设计
3、多分支结构
do case case <逻辑表达式1> <语句序列1> case<逻辑表达式2> <语句序列2> …… case<逻辑表达式n> <语句序列n> [otherwise <语句序列n+1>] endcase

VF数据库程序设计教案

VF数据库程序设计教案

Visual Foxpro数据库程序设计教案姓名:李运娣系别:计算机第1章Visual FoxPro 数据库基础本章重点与学习目标:了解数据库系统的相关概念▪数据、数据库、数据库管理系统、数据库系统▪数据库管理系统发展过程▪概念模型以及常用的数据模型—层次模型、网状模型、关系模型 掌握关系数据库▪关系模型的相关属于数据库设计基础▪数据库设计的步骤和过程了解VF系统的发展过程▪数据库管理系统的发展▪VF的发展简史及了解Visual FoxPro系统的特点▪掌握VF系统的启动与退出方法▪熟悉VF系统的用户界面熟悉VF项目管理器▪创建新项目▪项目管理器窗口的各类选项卡教学器材:多媒体教学本章课时:3学时§1.1 数据库基础知识§1.1.1 计算机数据管理的发展1. 数据与数据处理数据是指存储在某一种媒体上能够识别的物理符号;数据处理是指将数据转换成信息的过程。

2. 计算机数据管理数据管理:是指对数据的组织、分类、编码、存储、检索、维护等,它是数据处理的中心问题。

数据管理技术的发展过程:人工管理阶段(40年代中--50年代中);文件系统阶段(50年代末--60年代中);数据库系统阶段(60年代末--现在)。

§1.1.2 数据库系统1. 数据库有关概念数据库(DataBase):指数据库系统中以一定的方式将相关数据组织在一起,存储在外存储设备上形成的、为多个用户共享、与应用程序相互独立的相关数据集合。

数据库管理系统(DBMS):用于建立、使用和维护数据库的系统软件。

数据库管理系统对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。

数据库应用系统:数据库应用系统简称数据库系统,是指系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。

数据库管理员(DBA):负责全面管理和实施数据库控制和维护的技术人员。

2. 数据库系统的特点数据库系统是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段。

vfp第6章程序设计内容

vfp第6章程序设计内容

例6.2 Open database 教学管理(lz2) Use 学生 Accept ―请输入学生姓名:‖ to name Locate for 姓名=name If found() Display Endif ?―结束” Use return
例6.3 Use zgda(lz3) Locate for 基本工资<650.00 If .not. Eof() display Endif
Input "x=" to x
if x=0 y=cos(x) - x^3+3* x endif y=sin(x)+sqrt(x*x+1 )
例6.37铁路托运行李,假设每张车票可按每公斤 0.5元托运50公斤以内的行李,如果超过50公斤时, 超过的部分每公斤加价0.8元。计算公式和程序如下: p143 X=0.5×W 当W≤50公斤 X=0.5×50+0.8×(w-50) 当W>50公斤 Set talk off Input ―请输入行李的重量为:” to w If w<=50 x=0.5*w Else x=0.5*50+0.8*(w-50) Endif ?‖行李的重量为:”+str(w,6,2)+‖公斤,其运费 为:”+str(x,6,2)+‖元”
例6.4 输入乘出租车的公里数,求乘车费(计费标准: 2.5公里以内6元;2.5公里以外,每超过1公里,增 加到1.2元,要求四舍五入到元)。(lz5) * PROG6.PRG CLEAR INPUT ―请输入公里数:” TO X IF X>2.5 PAY=(X-2.5)*1.2+6 ELSE PAY=6 ENDIF ? "应付费",ROUND(PAY,0), "元" CANCEL

VF第五章

VF第五章

3.WAIT命令 WAIT [<字符表达式>] [TO<内存变量>] [WINDOW[NOWAIT]][CLEAR] [TIMEOUT <数值表达式>] 该命令从键盘向<内存变量>输入一单个 字符。若直接按回车键,则<内存变量>取 空字符 。 返回

clear use d:\dbf\xs input "请输入要查找的入学分数:" to fs locate all for rxzf=fs wait "按任意键继续!!!" disp use
RETURN
5.2.2 选择 结 构 程 序 设 计(3)
多分支选择语句
DO CASE
CASE <逻辑表达式1> <语句序列1> [CASE<逻辑表达式2> <语句序列2> …… CASE<逻辑表达式n> <语句序列n>] [Otherwise <语句序列> ] ENDCASE
* prog5-7 SET TALK OFF CLEAR INPUT "x=" TO x DO CASE CASE x<=0 y=x*x+4*x-1 CASE x>0 .and. x<=10 y=3*x*x-2*x+1 CASE x>10 y=x*x+1 ENDCASE ? "分段函数值为:"+STR(y,10,2) SET TALK ON
根据输入X的值,计算下面分
段函数的值,并显示结果。
X2 4X1 2 Y 3 X 2 X 1 X21
(X 0) (0 X 10) (X 10)

VF 第5章 结构化程序设计

VF 第5章 结构化程序设计

5.4 程序设计的三种基本结构
按照结构化程序设计的观点,任何 算法都可通过三种基本程序结构的组 合来完成。这三种基本程序结构分别 是:顺序结构、分支结构和循环结构。 5.4.1 结构化程序设计概述 5.4.2 选择结构 5.4.3 循环结构
5.4.1 结构化程序设计概述
结构化程序设计的提出 为了便于阅读和修改程序 方法:严格按照三种基本程序结构编写程序 程序模块化,尽量减少各模块间关联 自顶向下逐步求精:整体->部分->更小部分 程序的三种基本结构 顺序结构 选择结构 循环结构
5.1.2 程序文件的基本组成
程序一般由以下要素组成:
变量:保存中间结果,参与运算。
普通语句:操作数据库的命令、输入输出
等。 程序流程语句:控制程序方向,如跳转、 选择等。 过程与函数:完成特定功能的子程序块
5.2 算法与流程图
算法是程序设计的重要环节,算法的 好坏直接影响到程序运行的效率和开销。 利用流程图描述算法是一种常用方法, 它可以使算法的描述直观形象,便于理 解。
5.2.3 算法的流程图描述(1)
在程序设计中,更经常是用流程图来 描述算法。用一些简单的几何框图表示 各种类型的操作,然后用带箭头的有向 流线将各个框图连结起来,以表示其执 行的先后顺序,这种框图称为“流程 图”。用流程图描述算法,直观形象, 易于理解。
5.2.3 算法的流程图描述(2)
最常用的流程图符号如下所示。 起止框:表示程序的开始和结束。
3.输入单字符语句: WAIT(2)
②WAIT语句只接收单个字符。若含有[TO <内存变量名>],则把该字符送内存变量, 内存变量是字符型的。 ③WAIT 语句的特点在于响应速度快,它常 用于程序中控制屏幕显示的暂停,使用户看 清屏幕上的内容之后,再按任一键让程序继 续执行。 例如:WAIT "请看清结果后按任一意键, 程序将继续运行"

VFP程序设计基础

VFP程序设计基础

三条输入命令的异同
• ACCEPT命令只能接受字符型数据,不需 定界符,输入完毕按回车键结束;
• WAIT命令只能输入单个字符,且不需定界 符,输入完毕不需按回车键;
• INPUT命令可接受数值型、字符型、逻辑 型、日期型和日期时间型数据,数据形式 可以是常量、变量、函数和表达式,如果 是字符串,需用定界符,输入完毕按回车 键结束。
分支结构后面语句 结束
语句格式: If <条件> [Then] <语句序列1>
ELSE <语句序列2>
Endif
例,求两个数中较小值: Input "X=" To X Input "Y=" To Y If X<Y M=X Else M=Y Endif ? " X与Y中的较小者是:", M
语句的嵌套
程序文件的类型
在VFP中,可以执行源程序、编译程序、 应用程序和可执行程序4种程序文件。
(1)源程序(PRG):源程序是文本文件,可 以对其内容进行修改。只要有源程序文件, 就可以生成其他3种程序文件。
(2)编译程序(FXP):每个源程序文件都有 对应的编译程序文件,执行编译程序比执行 源程序的速度快。
Do <程序文件名>
输入字符串语句
语句格式: Accept [<字符表达式>] To <内存变量>
“字符表达式”:作为执行到此语句时的提 示信息。若无此项,则不输出任何信息。
内存变量:用来接收输入的字符串。若不输 入任何字符,则将空字符赋值给内存变量。
例: Accept “请输入学号:” To XH ? ”输入的学号是:”+XH

第7章 VF结构化程序设计

第7章 VF结构化程序设计

目录
程序文件的执行
如果文件名不带扩展名,则 方式1命令格式: Visual DO <程序文件名> FoxPro按下列顺序寻 找并执行这些程序:可执行 文件(.EXE)、应用程序 方式2菜单方式:“程序” “运行” (.app)、编译后的目标程序 文件(.fxp)和程序文件(.prg)。 方式3:利用工具栏按钮
目录
例7.3 在屏幕第5行,第10列的位置上输入学生的 姓名。 [解] name=SPACE(8) @5,10 SAY "请输入学生姓名" GET name READ
目录
2.格式输出命令 格式: @<行,列> SAY <表达式> 功能:在屏幕指定的坐标位置上输出表达 式的值。 @11,12 say 5+2
目录
7.3.2 多分支选择语句
功能:
依次判断各条件表达式是 否满足,若条件满足,就执行 该条件后的语句序列。如果没 有一个条件表达式满足条件, 如果没有OTHERWISE,则 直接转向ENDCASE之后的第一 条命令。若有OTHERWISE,就执
CASE <条件表达式1
<语句序列1 CASE <条件表达式2
信息。 注释是不可执行的部分,它对程序的 运行结果不会产生任何影响。
目录
3. 置缺省路径命令
格式:SET DEFAULT TO [盘符:][路径] 功能:用于设置进行输入输出时的缺省路径,如在命令窗口
中输入USE XSB,那这个XSB应是缺省路径里的表文件。
4. 置会话状态命令 格式:SET TALK ON|OFF
目录
2. 任意数据输入命令 <内存变量>
格式:INPUT [<提示信息>] TO

VisualFoxPro程序设计教程

VisualFoxPro程序设计教程
[〈变量名〉] = MESSAGEBOX(〈信息内容〉[,〈对话 框类型〉[,〈对话框标题〉]])
【 例 3-9】 在 例 3-5 中 使 用 信息对话框来显示计算结 果,如图3-23所示。
只需改写命令按钮的Click事件代码: 图3-23 鸡兔同笼 h = THISFORM.Text1.Value f = THISFORM.Text2.Value x = (4 * h – f) / 2 y = (f – 2 * h) / 2 a = " 笼 中 鸡 有 " + ALLTRIM(STR(x)) +" 只 , 兔 有 " + ALLT(STR(y)) +"只。" = MESSAGEBOX(a,0,"鸡兔同笼")
bel3.Caption = " 问笼中鸡有多少只?兔有 多少只?"
编写命令按钮Command1的Click事件代码:
h = THISFORM.Text1.Value
f = THISFORM.Text2.Value
x=(4*h–f)/2
y=(f–2*h)/2 bel3.Caption = " 则 笼 中 鸡 有 " +ALLT(STR(x))+"只,兔有" +ALLT(STR(y))+"只。"
Visual FoxPro 程序设计教程
第3章 顺序结构程序设计
3.1 基本语句 3.1.1 赋值语句 3.1.2 语句的续行 3.1.3 程序注释语句 3.1.4 程序暂停语句 3.1.5 程序结束语句
3.2 输入与输出 3.2.1 使用标签 3.2.2 使用文本框 3.2.3 使用编辑框 3.2.4 使用焦点 3.2.5 形状与容器控件 3.2.6 使用对话框 3.2.7 使用图像

vf

vf

实验四程序设计初步一、目的和要求1. 掌握顺序结构、分支结构、循环结构。

2. 掌握子程序、过程、函数的区别和具体应用。

二、实验原理VFP中包括三种基本控制结构:顺序结构、分支结构与循环结构。

常见的分支和循环结构如下所示。

分支语句格式:IF <逻辑表达式><语句序列1>[ELSE<语句序列2>]ENDIF多分支语句格式:DO CASECASE <逻辑表达式1><语句序列1>CSAE <逻辑表达式2><语句序列2>…CASE <逻辑表达式n><语句序列n>[OTHERWISE<语句序列n+1>]ENDCASEWHILE循环语句格式:DO WHILE <逻辑表达式><语句序列>ENDDOFOR循环语句格式:FOR <内存变量>=<数值表达式1> TO <数值表达式2> [STEP <数值表达式3>] <语句序列>ENDFORSCAN循环语句格式:SCAN [<范围>] [FOR< 逻辑表达式1>] [WHILE< 逻辑表达式2>]<语句序列>ENDSCAN应用程序一般包含多个模块,模块是可以命名的一个程序段,可以指主程序、子程序和自定义函数。

各种调用形式如下所示。

三、实验内容及步骤1.编一个程序,能根据记录号修改某设备的价格和部门。

*e4-1.prgclearuse sb@10,5 say "修改设备的价格"?input "请输入记录号:" to jlhdisplay 价格record jlhinput "请重新输入第"+str(jlh,1)+"个设备的价格:" to jg replace 价格with jgdisplay 价格use2.编一个程序,能打开任意表浏览。

VF 第9章 结构化程序的设计

VF 第9章 结构化程序的设计

1. 打开工作数据表 2. 增加数据表记录 3. 删除数据表记录 4. 修改数据表记录 5. 打印数据表记录 6. 关闭工作数据表
WAIT “请选择相应代码:” TO CHOICE ? “您选择的是第” + CHOICE + “个选项”
2019/11/9 滕永晨* 15
4. 格式输入语句
第9章
格式: <行,列> SAY <提示信息> GET <变量>
3.程序文件的执行
第9章
命令格式: DO <程序文件名>
功 能 : 将程序文件从磁盘调入内存, 编译 成.FXP目标文件后并执行。
菜单方式:①.CANCEL:终止程序运行,清除 所有的私有变量,返回命令窗口。 ②.RETURN:结束程序执行,返回调用它的上 级程序,若无上级程序则返回命令窗口。 ③.QUIT:结束程序执行并退出Visual.FoxPro 系统,返回操作系统。
② 输入L 型数据时,.T. 和 .F. ,两边的 . 不能省;
③ 输入D 型数据时,要用{ } 或CTOD( ) 将字符串转成 日期型变量。
2019/11/9 滕永晨* 11
第9章
例9-2:求任意两数之和。 INPUT “请输入另一个数x:” TO x INPUT “请输入另一个数y:” TO Y ?X+Y
Visual FoxPro提供双分支选择语句、多分支选 择语句两种选择结构。
2019/11/9 滕永晨* 30
第9章
9.3.1 双分支选择语句(选择判断语句)
.T.
条件
语句序列1
.F.
IF
<语句序列1 [ELSE
<语句序列2>] ENDIF
ENDIF 后 的 语 句

VFP顺序结构和选择结构

VFP顺序结构和选择结构

vfp⽀持3种基本程序控制构造:顺序结构,选择结构和循环结构⼀.顺序结构:我们将依次执⾏程序中的语句的程序结构称为顺序结构,这是最简单的1种程序结构例:顺序结构例程程序⽂件内容:set talk offclearinput "请输⼊圆的半径:" to rs=3.1415926*r*r"圆的⾯积是:",sreturn说明:执⾏程序时,屏幕上显⽰提⽰信息:请输⼊圆的半径.当⽤户键⼊半径并按回车时,vfp计算出圆的⾯积并显⽰在屏幕上.⼆.选择结构:实际应⽤中,常需要先判断后处理,根据不同情况做不同的处理.选择结构就是对指定的条件进⾏判断,如果条件成⽴,则执⾏指定的语句序列.在vfp中,选择结构包括if语句和do case语句.1.if语句:格式:if 条件语句序列1[else][语句序列2]endif说明:(1).格式中的条件,多为条件表达式或逻辑表达式,结果为逻辑真或逻辑假(2).执⾏该语句时,⾸先对条件进⾏判断,如果是逻辑真,则执⾏语句序列1,然后转到endif后的第1条语句继续执⾏;否则执⾏语句序列2,然后转到endif后的第1条语句继续执⾏.(3).需判断的条件⽐较多时,可以使⽤if语句嵌套.(4)endif必须与if成对出现例:设计1个查询程序,希望当待⼈不存在时有信息提⽰.程序⽂件内容:clearaccept "请输⼊待查⼈姓名" to xmlocate for 姓名=xmif .not.eof()displayelsemessagebox("查⽆此⼈")endifusereturn说明:程序执⾏时,执⾏locate命令时,记录指针从表的⾸记录⼀直找到最后1条记录都未发现该姓名记录时,记录指针才最后停在⽂件尾,此时eof()为真值;相反,若eof()取假值,则表⽰记录指针停在待查⼈的记录上.即当.not.eof()为真时,记录指针停在待查⼈的记录上,查到的指定的记录.也可⽤found()来代替程序中的.not.eof()。

程序设计三种基本结构

程序设计三种基本结构

程序设计三种基本结构在Visual Basic 程序设计语言中,提供了以下三种基本的控制结构:其对应的结流程图如下所示:顺序结构分支结构循环结构顺序顺序结构是按语句的先后次序依次执行的控制结构,其中“执行A”和“执行B”可以是一个语句也可以是一组语句。

在VB中录制的宏都是顺序结构的语句。

例如,以下程序段的控制结构就属于顺序结构:a=1b=a+1c=a+b例1:以下是一段Visual Basic宏程序,运行后变量x的值为x=2y=3y=y+1x=x+y-1选择分支结构又称为选择结构。

根据条件判断其是否成立,从而选择程序执行的方向,执行其中的一个分支。

分支结构的语法结构如下:语法1语法2If 条件 Then语句End If If 条件 Then语句1 Else语句2 End If例2:以下是一段Visual Basic宏程序,运行后变量a的值为a=10If a<10 Thena=a+1Elsea=a-1End If循环循环结构是根据条件判断是否成立,如果条件成立则重复执行循环结构中某语句序列功能,直到条件不成立为止,最后退出循环结构。

其中For…Next语句的语法定义如下:(详见书本第137页)For counter=start To end [Step step][statements]Next [counter]说明:counter必要参数,用作循环计数器的数值变量start必要参数,counter的初值end必要参数,counter的终值Step可选参数,counter的步长。

如果没有指定,step默认的值为1例3:以下是一段Visual Basic宏程序,运行后变量m的值为m=0For i=1 To 3m=m+2Next i。

VFP-程序设计

VFP-程序设计
12
补充: 1.显示xsda.dbf中在1978年以后出生的记录。
DISPLAY FOR 出生年月>{1978/12/31} 或:DISPLAY FOR year(出生年月)>1978
2.显示xsda.dbf中所有是团员的记录。
LIST FOR 团员否
13
二、执行 1.菜单方式:Program->Do… 在弹出的Do 对话框中选择程序文件并执行。 2.命令方式: do <命令文件名> 例4-3:执行例4-1创建的程序文件 do a.prg 例4-3:执行例4-2创建的程序文件 do LT2
操作
36
几点说明 a.IF--ELSE—ENDIF三者要匹配 b.ELSE,ENDIF要独占一行 c.ENDIF总是离与它最近的IF语句匹配。
37
2.多分支(情况分支语句)
<命令格式> DO CASE 情况n 其他 情况1 情况2 CASE <条件表达式1> 条件1 条件2 条件3 条件n F <语句序列1> T CASE <条件表达式2> B B1 B2 B3 Bn <语句序列2> …… [OTHERWISE <语句序列>] ENDCASE
SR>3000?
计算所得税: ZS=SR*0
计算所得税 ZS=SR*0.2
显示个人所得税
结束
35
SET TALK OFF INPUT „请输入收入情况:’ TO SR IF SR>9000 <- 9000以上 ZS=SR*0.4 ELSE IF SR>6000 <- 6000~ 9000 ZS=SR*0.3 ELSE IF SR>3000 <- 3000~6000 ZS=SR*0.2 ELSE <- 0~3000 ZS=0 ENDIF ENDIF ENDIF ?‟应征税为:‘,ZS

vfp8.1-三种程序结构

vfp8.1-三种程序结构

&&初始化,打开表
ACCE '输入姓名: ' TO XM LOCA FOR 学生.姓名=XM
&&处理
DISP USE
&&恢复、结束
程序的三种基本结构
* TEST4.PRG
关联查询学生选课成绩
&& 初始化部分
CLEA
&& 清屏
SELE 1 USE 选课 ALIAS XK
&& 选择1号工作区 && 打开选课表
算法: (1) 输入年份; INPUT ‘输入年份’ TO Y (2)判断是否闰年,并输出结果;
程序的三种基本结构
程序:
CLEA INPUT ‘输入年:’ TO Y
TJ=MOD(Y,4)=0 AND MOD(Y,100)!=0 ;
OR MOD(Y,400)=0
IF TJ ?Y,’是闰年’
ELSE ?Y,’不是闰年’ ENDIF
2)双分支结构
输入4 7 输入5 2
【例】输出两数X,Y中大的 一个(IF …ELSE… ENDIF) INPUT ‘输入X’ TO X
输入X 输入Y
INPUT ‘输入Y’ TO Y
IF X>Y
S=X
?X else
?Y endif
.T. Y> .F.
X
输出Y
输出X
cancel
输出 7
结束
输出5
程序的三种基本结构
&& 输出与结束部分
CANCEL
程序的三种基本结构
2、选择结构
根据某逻辑表达式的值,判断与决定程序的走向。

计算机vfp教程第7章 结构化程序设计

计算机vfp教程第7章 结构化程序设计
【例7-26】采用主程序调用子程序的方法,对于任意输入的整数x、y、z 的值,计算 w=x!+y!+z! 的值。 **主程序main1.prg CLEAR ALL INPUT "x= " TO x INPUT "y= " TO y INPUT "z= " TO z n=x &&将x的值赋给n,为计算x的阶乘做准 备 DO subp1 &&调用subp1子程序计算x的阶乘 a=t &&把子程序计算的结果存入变量a n=y DO subp1 b=t n=z
7.3.4 多路分支结构
用来解决在多种不同情况下的程序选择执行问题。 格式: DO CASE CASE <条件1> <语句序列1> CASE <条件2> <语句序列2> …… CASE <条件n> <语句序列n> [OTHERWISE <语句序列n+1>] ENDCASE
【例7-13】编程计算银行存款整存整取应得的利息。 CLEAR INPUT "本金(元):" TO bj INPUT "存期(年):" TO cq DO CASE CASE cq>=5 rate =4.5 &&年利率为4.5% CASE cq>=3 rate =3.6 &&年利率为3.6% CASE cq>=2 rate =3.1 &&年利率为3.1% CASE cq>=1 rate =2.7 &&年利率为2.7% CASE cq>=0.5 rate =2.21 &&年利率为2.21% OTHERWISE rate =1.23 &&年利率为1.23% ENDCASE lixi=bj*cq*rate /100 ? &&输出一个空行 ? " 应得利息:"+STR(lixi, 8, 2) RETURN

《VisualFoxPro程序设计》第六章结构化程序设计

《VisualFoxPro程序设计》第六章结构化程序设计
其中各参数的说明如下:
Visual FoxPro 6.0 程序设计.课件
4.非格式输出命令
-*-
该命令的格式如下: ?|?? <表达式列表> 该命令的功能是在Visual FoxPro的主窗口中换行或不换行输出<表达式列表>中各个表达式的值,其中,?表示换行输出,即<表达式列表>中各个表达式的值在当前主窗口中最后一次输出位置的下一行输出;??表示不换行输出,即<表达式列表>中各个表达式的值在当前主窗口中最后一次输出位置后直接输出,并不换行。
程序文件 程序控制结构 过程与过程调用 程序的调试 提示:单击各个标题前的动画符号“ ” ,链接到相应的章节。
第6章 结构化程序设计
在程序设计的方法中,结构化程序设计是程序设计的基本方法。结构化程序设计的基本思想是逐步求精、模块化和自顶向下,将一个复杂的程序系统的设计任务分成多个易于控制和处理的子任务,每个子任务都是可独立编程的子程序、过程或函数模块。其程序控制结构有顺序结构、分支结构和循环结构三种。
Visual FoxPro 6.0 程序设计.课件
6.2 程序控制结构
Visual FoxPro 6.0 程序设计.课件
-*-
01
02
04
分支结构程序设计
循环结构程序设计
顺序结构程序设计
6.2程序控制结构
-*-
程序的控制结构包括顺序结构、分支结构和循环结构3种,每一种控制结构可以包含一个或多个语句,任何程序都是由这3种基本控制结构构成的。
其中各参数的说明如下:
该命令格式如下:
@<行,列> SAY <提示信息> [GET <变量名>6-6 结果显示 【例6-2】编写程序prog2.prg,使用格式输入输出命令,修改学生信息表student中指定学号的学生记录的字段值。 程序编辑窗口的输入如图6-5,运行时在屏幕中输入“王燕燕”,运行结果如图6-6。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

[课题]:顺序结构与分支结构程序设计
[目的要求]:了解顺序结构、分支结构的概念,理解分支语句的格式、作用及流程,掌握顺序结构、分支结构的程序设计,领会分支结构在程序的作用。

[重点]:分支语句的格式、作用与流程;分支结构程序的编写。

[难点]:流程与程序的编写。

[学时]:2学时
[教学过程及内容]:
导入:
面向过程程序设计包括三种基本控制结构:顺序结构、分支结构、循环结构。

今天我们来了解有关顺序结构、分支结构的有关内容
一、顺序结构
概念:程序的执行是按其语句排列的先后顺序进行执行的程序。

例:CLEAR
SET TALK OFF
USE RS
ACCEPT "请输入要修改记录的教师名:" to xm
LOCATE FOR 姓名=xm
REPL 职称 WITH "教授"
USE
SET TALK ON
RETURN
是按其语句的排列先后顺序执行的
二、分支结构
概念:选择分支结构是根据条件的测试结果执行不同的操作。

VFP中有两条命令实现条件分支:二路选择分支结构(IF…ENDIF)和多路选择分支结构(DO CASE …ENDASE)。

<一> IF…ENDIF结构
1、结构:IF < 条件表达式>
< 语句系列1>
[ELSE
< 语句系列 2>]
ENDIF
2、功能:当<条件表达式 >的值为真时,执行< 语句系列1>;否则执行< 语句系列 2>。

如果没有ELSE的子句,则当<条件表达式 >的值为假时,不进行任何操作。

注:IF和ENDIF必须配对使用。

3、流程(板书略)
4、例:从键盘输入一个正整数,判断其是奇数,还是偶数
SET TALK OFF
clear
INPUT "请输入一个正整数:" TO X
IF INT(X/2)=X/2
?X,"为偶数!"
ELSE
?X,"为奇数!"
ENDIF
SET TALK ON
5、练习:从键盘输入一个正整数,若该数能被3或7整除,则输出该数的平方
6、IF 嵌套
解释:一个IF语句中包含另一个IF语名
例:从键盘输入一个成绩,若在85~100之间,则输出“优”,若在70~85之间,则为“良”,若在60~75,则为“及格”,在60以下,则为“不及格”,否则输出“非法成绩”
SET TALK OFF
CLEAR
INPUT “请输入你的成绩” TO N
IF N>100 OR N<0
?”非法成绩!”
RETURN
endif
IF N>=85
?”优”
ELSE
IF N>=70
?”良“
ELSE
IF N>=60
?”及格”
else
?”不及格”
ENDIF
ENDIF
ENDIF
SET TALK ON
RETURN
7、练习:解分段函数
x2+7 x<0
y= x+7 x=0
x2-7 x>0
<二> DO CASE … ENDASE结构
1、结构:见教材P42。

DO CASE
CASE <条件表达式1>
<语句系列1>
[CASE <条件表达式2>
<语句系列2>
……
CASE <条件表达式N>
<语句系列N>]
[OTHERWISE
<语句系列N+1>]
ENDCASE
2、功能:依次判断<条件表达式>的值,当值为真时执行对应的<语句系列>,执行后转到ENDCASE的下一条语句;当所有<条件表达式 >的值都为假时,则执行OTHERWISE下面的<语句系列1>。

注:DO CASE和ENDCASE必须配对使用,case 的条件表达式的值必须为逻辑值。

3、流程:板书略
4、例:同例对成绩作出评语
SET TALK OFF
CLEAR
INPUT “请输入你的成绩:” to n
If n>100 or n<0
?”非法成绩!”
endif
do case
case n>=85
?”优”
case n>=70
?”良”
case n>=60
?”及格”
otherwise
?”不及格”
endcase
set talk on
return
[小结]
1、IF…ENDIF、DO CASE … ENDASE的结构、功能
2、流程
[作业]
1、从键盘输入一半径,然后求圆的周长、面积与球的体积
2、解ax2+bx+c=0的根,a、b、c的值从键盘输入
clear
?"一元二次方程:a*x^2+b*x+c"
input "a=" to a
input "b=" to b
input "c=" to c
d=b*b-4*a*c
do case
case d<0
?"无实根"
case d=0
?"x1=x2=",-b/(2*a)
case d>0
?"x1=",(b+sqrt(d))/(-2*a)
?"x2=",(b-sqrt(d))/(-2*a)
endcase
3、现某商店按顾客购物的多少分别给予不同的优惠如下:250元以下的,没有折扣;250~500之间的,优惠5%;500~1000之间的,优惠7.5%;1000~2000之间的,优惠10%,2000及2000以上的,优惠15%。

请从键盘输入你的购物款,然后输出实际金额。

相关文档
最新文档