




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序设计基础
(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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 天津2025年天津蓟州区教育系统招聘教师100人笔试历年参考题库附带答案详解
- 天津2025年天津市聋人学校招聘笔试历年参考题库附带答案详解
- 台州浙江台州三门县人民医院医共体分院招聘编外工作人员笔试历年参考题库附带答案详解-1
- 北京2025年北京西城区教委人才引进招聘笔试历年参考题库附带答案详解
- 石墨科技产品在商业谈判中的价值体现
- 小学数学教学工作总结
- 2025年抗艾滋病用药项目建议书
- 2025年度家族信托房产装入与家族内部协议合同
- 2025年度国有企业改革合作协议
- 2025至2030年中国七星拼图数据监测研究报告
- 2025年2级注册计量师专业实务真题附答案
- 2025年春季学期教导处工作计划及安排表
- 果实品质评价体系建立与应用-深度研究
- 智能制造技术在工业设计中的应用
- 2025年湖南高速铁路职业技术学院高职单招高职单招英语2016-2024年参考题库含答案解析
- 北京市东城区2024-2025学年高一上学期期末统一检测历史试卷(含答案)
- 发展新质生产力如何“因地制宜”
- 《fema失效模式分析》课件
- 联合救治房颤患者的协议书
- 企业自查报告范文
- 人教版小学六年级下册音乐教案全册
评论
0/150
提交评论