为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 07 程序的分支执行结构 08版

07 程序的分支执行结构 08版

2008-11-10 50页 ppt 1MB 18阅读

用户头像

is_174731

暂无简介

举报
07 程序的分支执行结构 08版nullnull《计算机应用技术基础》null第7章 程序的 分支结构《计算机应用技术基础》本章目录本章目录7-1 程序的建立与维护 7-2 程序的流程控制7-1 程序的建立与维护 7-1 程序的建立与维护 Visual FoxPro程序文件,是一个以(.PRG)为扩展名的文本文件。任何可以建立、编辑文本文件的工具,都可以创建和编辑Visual FoxPro程序文件。这些文本编辑工具,可以是Visual FoxPro系统提供的内部编辑器,也可以是其它常用文本编辑软件。在文本编辑环境下,不仅可以对程序文件进行输入和...
07 程序的分支执行结构 08版
nullnull《计算机应用技术基础》null第7章 程序的 分支结构《计算机应用技术基础》本章目录本章目录7-1 程序的建立与维护 7-2 程序的控制7-1 程序的建立与维护 7-1 程序的建立与维护 Visual FoxPro程序文件,是一个以(.PRG)为扩展名的文本文件。任何可以建立、编辑文本文件的工具,都可以创建和编辑Visual FoxPro程序文件。这些文本编辑工具,可以是Visual FoxPro系统提供的内部编辑器,也可以是其它常用文本编辑软件。在文本编辑环境下,不仅可以对程序文件进行输入和修改,还可以实现字符串查找、替换、删除和编辑功能。7-1-1 用菜单选择方式建立及维护程序 7-1-1 用菜单选择方式建立及维护程序 1.创建与修改程序文件 命令方式 MODIFY COMMAND 〈程序文件名〉 菜单方式 打开“文件”菜单,选择“新建”;在“新建”窗口,选择“程序”,再选择“新建文件”;在“程序文件”编辑窗口,输入程序文件,并保存,此时建立程序文件的操作结束。2.运行程序文件2.运行程序文件 调用程序文件,即运行程序文件,是程序文件建立的最终目的。在Visual FoxPro系统中,调用程序文件有很多方法,在这里仅介绍其中两种方法。 菜单方式 以菜单方式调用程序文件,操作方法如下: (1)在Visual FoxPro系统主菜单下,打开“程序”菜单,选择“运行”。 (2)在“运行”窗口,输入被调用的程序文件名即可。 null 命令方式 在Command 窗口中,输入如下命令,则程序文件被调用。 DO 〈程序文件名〉3.维护程序 3.维护程序 修改程序文件时,可以从菜单“文件”中选择“打开”命令,从屏幕显示的“打开”对话框中选择要修改的文件,在文件编辑器窗口中进行编辑修改程序。 保存程序保存程序在编辑过程中, 按Ctrl+Q或Esc键,中止程序的编辑; 按Ctrl+W键,保存编辑的程序,并返回到“命令”窗口中。 程序文件名默认的扩展名为.PRG。 如果省略“程序文件名”,系统会自动以“程序1”为程序文件名存盘。 4.运行程序4.运行程序在命令窗口中键入: DO(程序文件名) 执行一个Visual FoxPro程序,程序文件名前根据需要可以加上路径。如: DO ‘d:\VFP\程序1.prg’ 该命令可以在命令窗口发出,也可以出现在某个程序文件中,这样就使得一个程序在执行的过程中还可以调用执行另一个程序。 null当程序被执行时,文件中包含的命令被依次执行,直到程序执行完毕,或遇到以下命令: ① CANCAL:终止程序运行,清除所有私有变量,返回命令窗口。 ② DO:转去执行另一个程序。 ③ RETURN:结束当前程序的执行,返回到调用它的上级程序,若无上级程序则返回到命令窗口。 ④ QUIT:退出VFP系统,返回到操作系统。 null Visual FoxPro程序文件通过编译、连编,可以产生不同的目标代码文件。如果没有对程序进行编译,而且程序中存在错误,则在执行程序过程中Visual FoxPro会指出程序中存在的错误,出现错误提示对话框。此时,可以取消操作,中止程序的运行,修改后再运行。 7-1-3 程序的编译7-1-3 程序的编译在运行程序时,系统提供了两种方式:先编译后执行和一边编译一边执行。 先编译后执行是在编辑窗口打开要编译的程序,然后在菜单“程序”中选定“编译”。7-1-4 编程时的一般规则7-1-4 编程时的一般规则1.每行只能写一条命令,每条命令以回车换行作为结束标志; 2. 命令一行写不下时,可以分多行输入,在未输入完的数据后加分号,然后回车换行,系统会把此行作为前一行的续行; 3.“*”,“&&”,“NOTE”用来作为程序的说明的符号和命令;“*”及“NOTE”只能放在一行的前面,而“&&”可以放在前面或后面。7-1-5 简单的输入输出命令7-1-5 简单的输入输出命令(1). ACCEPT命令 格式 :accept [<提示信息>] to <内存变量> 功能:在屏幕上显示提示信息,等待用户输入一个字符串,赋值给一个内存变量 注意:该命令只能接受字符型常量,输入一个字符串(不必加引号)且按回车键后,程序继续执行1.键盘输入语句:用于程序执行中原始数据输入nullCLEA ACCE "请输入用户名=" TO USER ? USER WAITACCEPT命令:thisform.text1.value=‘’ACCEPT命令:thisform.text1.value=‘’null(2). INPUT命令 格式:input [<提示信息>] to <内存变量> 功能:与accept相似,不同的是能接受字符型、数字型、日期型和逻辑型数据。 说明:除输入数值型数据外,其他几种类型的数据一律使用定界符;输入的信息可以是表达式,input命令有计算功能 nullINPUT "请输入密码:" TO PASSWORD ? PASSWORD WAITINPUT命令:thisform.text1.value=0INPUT命令:thisform.text1.value=0INPUT与ACCEPT的区别INPUT与ACCEPT的区别 INPUT[<提示信息>]TO<内存变量> ACCEPT[<提示信息>]TO<内存变量> (1)两条命令的主要区别在于:ACCEPT命令能在用户的输入内容中自动添加定界符后再给变量赋值,而INPUT命令则把输入内容的值计算出来后向变量赋值。因此,用 ACCEPT命令只能接受字符型常量,而INPUT命令则能接受任何类型的表达式。 nulljg=7800 INPUT "输入价格:"TO a ACCEPT "输入价格:"TO b ?'a=',a,'b=',b 执行时,先后两次输入同样的内容jg+200,而输出结果却不相同,分别为 a=8000 b=jg +200 null(2)命令中可选项缺省时,屏幕上无显示信息而直接等待用户的输入;另外,提示信息也可以是含有变量的字符型表达式,这时屏幕上显示的提示信息将随变量值的不同而变化。 例如, m='微型机' INPUT “输入"+m+'价格'TO p 命令执行时,屏幕的提示信息为: 输入微型机价格 注意, INPUT命令也能接受字符型常量,但需把该常量两边的定界符同时输入。null(3). WAIT命令 【格式】WAIT [<提示符表达式>] [T0 <内存变量>][Windows[Nowait]][CLEAR] [TIMEOUT<数值表达式>] 【功能】等待用户从键盘上输入一个字符存入指定变量中。 nullINPUT "请输入密码:" TO PASSWORD ? PASSWORD WAIT "进入程序吗?Y/N" TO YN ?YN2.格式输出语句2.格式输出语句 无论是内存变量还是字段变量都可以使用?或??命令输出,这种输出方式简单,但是不能按照用户指定的位置输出。格式输出语句能按用户的要求来设计屏幕格式,使之美观、方便。 【格式】 @ <行号,列号> SAY <表达式> 【功能】 从指定的行、列号开始输出表达式的值。 【说明】 1. <表达式>可以是常量、字段变量及由它们组成的表达式。 2. 定位输出时,一次只能输出一个表达式。 THISFORM.TEXT2.VALUE=3.14159*R*RTHISFORM.TEXT2.VALUE=3.14159*R*R文本输出命令 文本输出命令 命令格式(一): \|\\<文本行> 命令格式(二): TEXT <文本信息> ENDTEXT null 命令格式(一): \|\\<文本行> 命令格式(二): TEXT <文本信息> ENDTEXT 功能: 格式(一)能将一行文本信息的内容按书写形式的原样显示出来.\与\\的区别在于前者输出的文本行带有回车换行符,就是在下一行的第一列开始输出;而后者则不带,文本行在当前光标位置开始显示。格式(二)则能把TEXT与ENDTEXT之间的文本信息内容显示出来,允许其间出现多个文本行。 null说明: (1)文本输出命令TEXT与ENDTEXT只能在程序工作方式中使用,而且必须成对出现。 (2)通常把指定的屏幕画面用TEXT与ENDTEXT括起来后直接写在程序之中,以便在程序执行中把该画面按原样显示或打印出来。null(3)在文本信息中允许出现变量、函数和表达式,本命令能识别它们并显示其值。但需事先设置状态SET TEXTMERGE ON,并且把它们用符号“<<”与“>>”括起来以区别于一般的文字信息。如果这两个条件不同时具备,则本命令将它们与其它的文字信息同样看待而直接输出。null例如,执行下述命令后,在所显示的图式下面将显示系统的当前日期。 SET TEXTMERGE ON TEXT ************** 设备管理系统 ************** <> ENDTEXT 3.程序设计辅助语句命令3.程序设计辅助语句命令(1) CLEAR 语句: 【格式】CLEAR 【功能】清除屏幕信息语句 (2) SET TALK ON/OFF语句: 【格式】SET TALK ON / OFF 【功能】命令执行的结果传送/不传送到屏幕上null(3) 程序运行结束命令: QUIT && 返回操作系统 CANCEL && 返回Visual FoxPro 6.0“命令”窗口 RETURN && 返回调用处 7-2 程序的流程控制 7-2 程序的流程控制 Visual FoxPro系统的程序有两个特点: 一是程序控制流模式,由顺序、分支、循环三种基本结构构成。 二是面向对象可视化的结构程序模块,在每个模块的内部也是由程序控制流组成。 常见的控制结构如下: 程序的3种基本结构程序的3种基本结构任何一种计算机语言程序主体是由3种基本结构组成:顺序结构、选择结构和循环结构。顺序结构循环结构选择结构7-2-1 顺序结构7-2-1 顺序结构 在结构化程序设计方法中,程序基本控制结构有三种,即顺序结构、分支结构和循环结构。顺序结构是一种线形结构,是最基本的程序结构,它是按照命令或语句的排列顺序,依次执行。 7-2-2 选择结构7-2-2 选择结构分支结构是在程序执行时,根据不同的条件,选择执行不同的程序语句,用来解决有选择、有转移的诸多问题。选择结构的基本形式 选择结构的基本形式 有三种基本形式: 1、单条件选择结构 单分支结构 是一种IF-ENDIF分支结构 格式: IF<条件表达式> <语句序列> EDNIF 功能:条件表达式的值为真(.T.)则执行“语句序列”,否则为假(.F.)则直接执行EDNIF后续语句条件真假语句序列null例2:从键盘输入一个数,若为正数则输出,若为非正数则结束。 此题学生自己分析。2、双向分支结构2、双向分支结构双向分支语句,即根据用户设置的条件表达式的值,选择两个操作中的一个来执行。是一种IF-ELSE-ENDIF选择结构 格式: IF<条件表达式>  <语句序列1> ELSE <语句序列2> ENDIF 功能:表达式为真,则执行“语句序列1”,再执行EDNIF的后续语句;为假,则执行“语句序列2”,再执行EDNIF的后续语句。条件真假语句序列1语句序列2null例1:从键盘输入一个数X,如果被5除余数为3,输出“3”, 否则输出“余数不为3”. *MODI COMM BCB2.PRG CLEA INPUT “请输入一个数: ”TO X IF X%5=3 ?” 余数为3” ELSE ?” 余数不为3” ENDIFX= X%5= null例3:求一元二次方程AX2+BX+C=0的实根。 分析:用根的判别式:D=B2-4AC进行判别,如果:D≥0,说明有实根,如果:D<0,则说明无实根。 INPUT "请输入A = "TO A INPUT "请输入B = "TO B INPUT "请输入C = "TO C ?"" M=B*B-4*A*C IF M>=0 X1 = (-B + SQRT(M))/(2*A) X2 = (-B-SQRT(M))/2/A ?"X1= ",X1 ?"X2= ",X2 ELSE ?"无实数解!" ENDIF nullnull1、从键盘输入一个数X,如果能被2整除,输出’偶数’,否则输出“奇数”。 *MODI COMM BCB1.PRG CLEA INPUT “请输入一个数: ”TO X IF INT(X/2)=X/2 ?”这是一个偶数!” ELSE ?”这是一个奇数!” ENDIFnull例:用IF-ELSE-ENDIF方法,再做一次求解一元二次方程的根,若有实根,则输出实根,否则输出“无实根”。3、多分支条件选择语句(多路选择)3、多分支条件选择语句(多路选择)是一种DO CASE-ENDCASE分支结构 格式: DO CASE CASE<条件表达式1>  <语句序列1> CASE<条件表达式2>  <语句序列2> …… CASE<条件表达式n> <语句序列n> [OTHERWISE  <语句序列n+1>] ENDCASE条件1语句 序列1条件n。。。语句 序列nOTHERWISEyNNynull功能:依次判断条件1-n的表达式,当遇到第一个条件为真时,则执行该表达式对应的语句序列,然后转去执行ENDCASE的后续语句,若前几个表达式都为假,则执行OTHERWISE的语句序列,然后执行ENDCASE的后续语句。 使用分支语句应注意的几点使用分支语句应注意的几点(1)IF… … ENDIF和DO CASE… … ENDCASE 必须配对使用,DO CASE与第一个CASE〈条件表达式〉之间不应有任何命令。 (2)〈条件表达式〉可以是各种表达式或函数的组合,其值必须是逻辑值。 (3)〈命令行序列〉可以由一个或多个命令组成,可以是条件控制语句组成的嵌套结构。 (4)DO CASE… … ENDCASE 命令,每次最多只能执行一个〈命令行序列〉。在多个CASE项的〈条件表达式〉值为真时,只执行第一个〈条件表达式〉值为真的〈命令行序列〉,然后执行ENDCASE的后面的第一条命令。null例:从键盘输入一个学生的成绩,按下述规定输出: 90分-100分 输出“优秀” 80分-89分 输出“良好” 70分-79分 输出“中等” 60分-69分 输出“及格” 0分— 59分  输出“不及格” 参考P135【例7-10】练习练习编写程序,输入一个数,判断这个数能否被6整除。 编写一正整数存于变量X中,判断它是几位数。7-6 小结7-6 小结通过本章的学习,要求读者掌握以下主要内容: l   程序的建立与维护。 l  程序的基本操作,如:程序的运行、编译及编程时的一般规则等。 l  掌握结构化程序设计的基本要点及顺序结构、和选择结构的编程概念技巧。 本章作业:本章作业:作业27 编写顺序结构程序 作业28 阅读分支结构程序 作业29 编写分支结构程序 null
/
本文档为【07 程序的分支执行结构 08版】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索