VF第4部分((分支、循环))_第1页
VF第4部分((分支、循环))_第2页
VF第4部分((分支、循环))_第3页
VF第4部分((分支、循环))_第4页
VF第4部分((分支、循环))_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序设计基础

(VisualFoxPro)第四讲程序设计基础(2) 杨劲副教授

电话:12.分支(选择)结构实例

分支结构是在程序执行时,根据不同的条件,选择执行不同的程序语句,用来解决有选择、有转移的诸多问题。多路分支语句常见的分支结构有:IF语句流程图1)IF语句

格式:见教材P57条件?语句序列1语句序列2YNENDIF之后的命令(教材P53)【例3-3】修改【例3-2】,在文本框text1、text2、text3中输入三角形的三边,单击“计算”按钮,如果输入的三边能构成三角形,则在文本框text4中显示三角形的面积;否则用提示框给出提示信息:不能构成三角形,重新输入!。如图所示。“计算”按钮的“Click”事件代码如下:a=thisform.text1.valueb=thisform.text2.valuec=thisform.text3.valueifa+b>canda+c>bandb+c>a=(a+b+c)/2area=sqrt(*(-a)*(-b)*(-c))thisform.text4.value=round(area,1)elsemessagebox("不能构成三角形,重新输入!")thisform.text1.value=0thisform.text2.value=0thisform.text3.value=0thisform.text4.value=0thisform.text1.setfocusendif清空文本框光标定位在text1中EXM1:判断某一年是否是闰年。提示1:假如年份用y表示,判断y是否是闰年的方法是:若y能够被400整除或y能够被4整除并且不能够被100整除。y/4=int(y/4)andy/100<>int(y/100)ory/400=int(y/400)提示2:判断一个整数M能否被另一个整数N整除,常用的三种方法:①MOD(M,N)=0②M%N=0③INT(M/N)=M/N结构化方法表单设计(教材p54例3-4)EXM2:输入两个数,比较大小,并输出较大数。输入两个数a,ba>b??aYN结束?b方法一:双分支输入两个数a,ba<b?把b的值赋给aYN?a方法二:单分支输入两个数a,ba>b??aYN结束?b输入两个数a,ba<b?把b的值赋给aYN?aEXM3:输入两个数,比较大小,并按从大到小的顺序输出。输入两个数a,ba<b?交换a,b的值YN?a,b容器A容器B容器C

12

3交换1、C=A2、A=B3、B=C赋值赋值赋值输入两个数a,ba<b?交换a,b的值YN?a,bEXM4:比较任意三个数的大小,并输出较大数。输入三个数a,b,ca>b?c>a?c>b?输出c输出a输出c输出b结束NYYNNY输入三个数a,b,ca>b?c>a?c>b?输出c输出a输出c输出b结束NYYNNY(教材P53)【例3-5】已知一元二次方程的3个系数,求一元二次方程的根。求根公式:提示:需要判断输入的参数能否组成有实根的一元二次方程。分支的嵌套“求解”命令按钮的“Click”事件代码如下:a=thisform.text1.valueb=thisform.text2.valuec=thisform.text3.valueifa=0

messagebox("二次项系数为0,这不是一个一元二次方程") thisform.text1.setfocuselse d=b^2-4*a*c ifd>=0 x1=round((-b+sqrt(d))/(2*a),2) x2=round((-b-sqrt(d))/(2*a),2) thisform.text4.value=x1 thisform.text5.value=x2 else

messagebox("该方程没有实数根!")

endifendif4)多分支语句(教材58页)条件1ENDCASE后面的语句条件2otherwise命令序列1命令序列2命令序列N命令序列Q条件NDOCASEEXM5:输入月份值,显示对应季节的中文名字(3,4,5月为春季,6,7,8月为夏季,9,10,11月为秋季;12,1,2月为冬季)。(P56例3-6)

“输出”命令按钮的click事件代码:yf=val(thisform.text1.value)docase caseyf=3oryf=4oryf=5 jj="春季" caseyf=6oryf=7oryf=8 jj="夏季" caseyf=9oryf=10oryf=11 jj="秋季" caseyf=12oryf=1oryf=2 jj="冬季"endcasethisform.label3.caption=jj提示:①if…endif,docas

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论