结构化程序设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验5结构化程序设计

【实验目的】

1.掌握建立、修改、运行和调试程序文件的方法。

2.掌握顺序结构的程序设计方法。

3.掌握分支结构的程序设计方法。

4.掌握循环结构的程序设计方法。

5.掌握子程序调用的程序设计方法。

【实验内容】

1.练习建立、修改、运行和调试程序文件。

2.练习顺序结构的程序设计。

3.练习分支结构的程序设计。

4.练习循环结构的程序设计。

5.练习子程序的程序设计。

【实验要求与步骤】

【实验5.1】练习建立、修改、运行和调试程序文件。

实验分析

建立、修改和执行程序可以使用主菜单、工具栏和命令3种方法来实现;其中命令:MODIFY COMMAND <程序文件名>用来建立和修改程序;命令:DO <程序文件名>用来执行程序。

(1)建立程序文件。

操作步骤

①启动Visual FoxPro。

②在系统菜单中,选择【文件】|【新建】命令,在弹出的对话框中选择“程序”单选按钮,然后单击“新建文件”按钮,打开程序文件编辑窗口,如图1-5-1所示。

③输入程序,如图1-5-2所示。

④选择系统【文件】|【保存】命令,或单击工具栏中的“保存”按钮,弹出“另存为”对话框。

⑤选择保存路径,输入新建的程序文件名。

⑥关闭程序文件编辑窗口。

Visual FoxPro 程序设计上机指导

·59·

(2)修改程序文件。 操作步骤

① 在系统菜单中,选择【文件】|【打开】命令,在弹出的“打开”对话框中选定文件类型为程序,然后选择程序文件所在文件夹,鼠标选中要打开的程序文件,单击“确定”按钮,如图1-5-3所示。

图1-5-3 选择要打开的程序文件

② 进入程序文件编辑窗口后,修改程序。 ③ 存盘退出程序文件编辑窗口。 (3)运行和调试程序。 操作步骤

① 在系统菜单中,选择【程序】|【运行】命令,在弹出的“运行”对话框中选择程序文件所在文件夹,鼠标选中要运行的程序文件,单击“运行”按钮,如图1-5-4所示。

② 如果程序没有语法错误,则系统运行所指定的程序文件。

③ 如果程序中,存在语法错误,则系统显示“程序错误”对话框,在对话框中提示用户并给出错误信息,将程序编辑窗口中的错误语句高亮显示,如图1-5-5所示。

④ 根据需要,在“取消”、“挂起”、“忽略”、和“帮助”4个按钮中进行选择,每个按钮中的英文字母表示各个按钮所对应的按键。选择后回到程序编辑窗口。 ⑤ 修改程序。

⑥ 存盘后重复上述程序调试操作,直到程序正确。

技巧解析

程序中的错误可以分为语法错误和逻辑错误,通常在Visual FoxPro 中,只能找到语法错误,在程序调试过程中,还要注意消除逻辑错误。

图1-5-4 选择要运行的程序 图1-5-5 “程序错误”对话框

【实验5.2】数值计算类程序设计。

(1)计算100以内的所有奇数和并显示,程序运行结果如图1-5-6所示。

实验分析

首先设定变量S用来存放奇数的和,把变量S初始值清0。其次要实现题中要求,必须使用循环结构来对100以内的数据逐一进行判断,如果满足奇数条件则将其累加到变量S上,否则继续对下一个数据进行判断,直到100为止。

图1-5-6 “奇数和”程序运行结果

在程序编辑器窗口输入如下代码。

SET TALK OFF

CLEAR

?SPACE(10)+"计算100以内的所有奇数和"

S=0

FOR I=1 TO 100

IF INT(I/2)<>I/2

S=S+I

ENDIF

NEXT

@5,10 SAY "100以内的所有奇数和为:"+STR(S,6)

技巧解析

其中循环语句可以使用DO WHILE…ENDDO,也可以使用FOR…ENDFOR循环,FOR 语句通常用来控制有固定循环次数的程序设计。

(2)求自然数1~N中能同时被5和3整除的数之和,运行结果如图1-5-7所示。

图1-5-7 “整除数求和”程序运行结果

实验分析

本程序完成将N个自然数中所有能被3和5整除的数求和,并输出计算结果的功能。首先用INPUT语句从键盘接收自然数N,然后在循环体中使循环变量I从1增加到N,每次增加一个循环变量值,随着I的增加,将能被3和5整除的数筛选出来并求和。当I>N时,循环结束,将总和S输出。在循环体内的分支结构条件表达式中,欲判断I能否同时被3和5整除,条件表达式应为MOD(I,3)=0 .AND. MOD(I,5)=0。

·60·

Visual FoxPro程序设计上机指导

在程序编辑器窗口输入如下代码。

CLEAR

SET TALK OFF

?"求自然数1~N中能同时被5和3整除的数之和"

INPUT "请输入N的值:" TO N

S=0

FOR I=1 TO N

IF MOD(I,3)=0 AND MOD(I,5)=0

S=S+I

ENDIF

ENDFOR

?"能同时被5和3整除的数之和",S

RETURN

技巧解析

当使用.AND.操作符的时候,两个条件同时为真时,逻辑表达式结果为真;当使用.OR.操作符的时候,任意一个条件为真时,逻辑表达式结果为真。

(3)用户由键盘输入整数K(1

图1-5-8 “阶乘和”程序运行结果

实验分析

本程序首先分别判断输入的整数K与M是否满足条件。如果不满足条件,则由循环程序控制要求重新输入;如果输入数据满足条件,利用FOR循环,首先计算K的阶乘值,将求和变量S赋初始值为K!,设置(K+1)~M的循环,每次循环都计算一次新的阶乘,并加到变量S上,最终求得总和。

在程序编辑器窗口输入如下代码。

SET TALK OFF

CLEAR

?SPACE(30)+"本程序名是:求阶乘和.PRG"

DO WHILE .T.

DO WHILE .T.

INPUT '请输入数值K(1

IF 1

EXIT

ELSE

WAIT '输入错误!请输入1到5之间的整数'

LOOP

ENDIF

ENDDO

·61·

相关文档
最新文档