第四章 选择结构程序设计_第1页
第四章 选择结构程序设计_第2页
第四章 选择结构程序设计_第3页
第四章 选择结构程序设计_第4页
第四章 选择结构程序设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

第四章选择结构程序设计,关系表达式和逻辑表达式用行IF语句实现选择结构用块IF实现选择多分支选择结构多分支转移语句选择结构程序设计,问题的提出,在实际问题中,要求计算机进行逻辑判断,即给出一个条件,让计算机判断是否满足条件,并按照判断的结果来做不同的处理。,从键盘输入一个数,如果是正数则打印出来,否则不做任何处理;将学生中成绩不合格者打印出来;将职工工资低于300元者打印出来;根判别式b2-4ac13,1315运行结果:-10,逻辑运算符,问题的提出:如果需要判断一个数是否满足0x10,语句IF0=dANDABS(c)=aORNOTcd+5,711ORcdAND2=aORNOTc13,假OR假AND假ORNOT假,假OR假OR真,IF语句,语法:IF关系表达式THEN语句1ELSE语句2,在IF语句中,实际是判别关系表达式的逻辑值是零还是非零。如果是非零(即条件成立),则执行THEN后的语句,否则执行ELSE后的语句(有ELSE语句!)。,IF53THENPRINT“Thisistrue.”ELSEPRINT“Thisisfalse”IF35THENPRINT“Thisistrue.”ELSEPRINT“Thisisfalse”IF2THENPRINT“Thisistrue.”ELSEPRINT“Thisisfalse”IF0THENPRINT“Thisistrue.”ELSEPRINT“Thisisfalse”,表达式的逻辑值可以赋值给变量:x=53x=5=3,用行IF语句实现选择结构,行IF语句有二种形式:(1)IF条件THEN语句例如:IFx0THENPRINTx(2)IF条件THEN语句1ELSE语句2例如:IFx0THENPRINTxELSEPRINTx一般形式:IF条件THEN语句1ELSE语句2,求解一元二次方程ax2+bx+c=0(参见SAMP4-2.BAS),选择结构的嵌套,在一个选择结构中包含另外一个选择结构,就称为选择结构的嵌套,举例:,INPUT“Pleaseinputx”IFx0THENy=1ELSEIFx=0THENy=0ELSEy=-1PRINT“y=“;y:END,对选择结构的嵌套的理解,选择结构的嵌套实际上是把一个IF结构的语句作为它外层IF结构的THEN或ELSE子句中应该执行的语句。,对比:IF逻辑表达式THEN语句1ELSE语句2IFx0THENy=1ELSEIFx=0THENy=0ELSEy=-1IFx=0THENIFx0THENy=1ELSEy=0ELSEy=-1,IFx=0THENIFx0THENy=1ELSEy=-1,规定:ELSE与离它最近的IF配对,关于选择结构嵌套的两点说明,利用块IF实现选择结构,语法:IF条件THEN语句组1ELSE语句组2ENDIF,举例:,INPUT“Pleaseinputx:”;xIFx0y=1ELSEIFx=0y=0ELSEy=-1ENDIFENDIFPRINT“x=”;x,”y=”;yEND,块IF实现选择结构举例,举例(P108,sam4-6.bas):,ELSEIF语句实现选择结构,语法:IF条件THEN语句组1ELSEIF条件2THEN语句组2ELSEIF条件2THEN语句组3.ELSEIF条件2THEN语句组nELSE语句组n+1ENDIF,INPUT“Pleaseinputyourmoneyforbuying:”,mIFm250THENd=0ELSEIFm500THENd=0.05ELSEIFm1000THENd=0.075ELSEIFm0y=1CASEIS=0y=0CASEIS=0,IS=100(各个条件之间的关系是“逻辑或”的关系,所以-0”CASE2TO10PRINT“2-10”ENDSELECT,除了CASEELSE子句外,其他CASE子句的顺序对执行结果没有影响,如果把CASEELSE子句放在最前,则首先执行的是CASEELSE子句,而认为前面的CASE子句均不符合条件,例如:SELECTCASEINT(m)CASEELSEd=0.15CASEIS250d=0CASE250TO499d=0.05ENDSELECT,多分支转移语句(ONGOTO语句),语法:ON算术表达式GOTO行号或行标号1,行号或行标号2,行号或行标号3例如:ONxGOTOa,b,c,d当x=1时,执行行标号为a的语句行;当x=2时,执行行标号为b的语句行;当x=3时,执行行标号为c的语句行;当x=4时,执行行标号为d的语句行。,INPUT“Enterx:”,xs=SGN(x)ONs+2GOTOa,b,ca:y=-1:GOTOdb:y=0:GOTOdc:y=1:GOTOdd:PRINT“x=”;x,”y=”;yEND,选择结构程序设计举例,例1:输入一个年份(例如1999),要求判断它是否是闰年。分析:判断闰年的条件是:能被4整除但不能被100整除的是闰年,如1992年;能被4整除又能被400整除的是闰年,如2000年;其他为非闰年。(参见:s4-11-1.bas,s4-11-2.bas,s4-11-3.bas,s4-11-4.bas),INPUTPleaseinputyear:;yearPRINTyear;is;IF(yearMOD4=0ANDyearMOD1000)ORyearMOD400=0THENPRINTaleapyear!ELSEPRINTNOTaleapyear!END,s4-11-1.bas,用行IF语句实现选择,s4-11-2.bas,用块IF结构实现选择,INPUTPleaseinputyear:;yearPRINTyear;is;IF(yearMOD4=0ANDyearMOD1000)ORyearMOD400=0THENPRINTaleapyear!ELSEPRINTNOTaleapyear!ENDIFEND,s4-11-3.bas,逐个条件判断,INPUTPleaseinputyear:;yearIFyearMOD4=0THENIFyearMOD100=0THENIFyearMOD400=0THENleap=1ELSEleap=0ENDIFELSEleap=1ENDIFELSEleap=0ENDIFIFleap=1THENPRINTyear;isaleapyear!ELSEPRINTyear;isNOTaleapyear!ENDIFEND,s4-11-4.bas,在块IF结构使用ELSEIF语句实现选择,INPUTPleaseinputyear:;yearIFyearMOD40THENleap=0ELSEIFyearMOD1000THENleap=1ELSEIFyearMOD400=0THENleap=1ELSEleap=0ENDIFIFleap=1THENPRINTyear;isaleapyear!ELSEPRINTyear;isNOTaleapyear!ENDIFEND,选择结构程序设计举例,例2有一城市,规划建设1个中心城和4个卫星城。中心城的边长20公里,卫星城边长为5公里,均为正方形,中心城的地价为每公顷10万,卫星城为5万,其他地区1万。编程序,输入任意一点的位置,确定该点的地价。,-10,-20,-20,20,20,-10,10,10,中心城的范围:|x|10AND|y|10卫星城的范围:20|x|25AND20|y|25,s4-12-1.bas,在块IF结构使用ELSEIF语句实现选择,INPUTPleaseinputyourcoordinate:;x,yIFABS(x)=20ANDABS(x)=20ANDABS(y)=25)THENprice=5ELSEprice=1ENDIFPRINTPrice=;priceEND,s4-12-2.bas,用3个行IF语句实现选择,INPUTPleaseinputyourcoordinate:;x,yIFABS(x)=20ANDABS(x)=20ANDABS(y)=20ANDABS(x)=20ANDABS(y)=25)THENprice=1PRINTPrice=;priceEND,s4-12-3.bas,用2个行IF语句实现选择,INPUTPleaseinputyourcoordinate:;x,yprice=1IFABS(x)=20ANDABS(x)=20ANDABS(y)=25THENprice=5PRINTPrice=;priceEND,s4-12-4.bas,通过标志变量实现选择,INPUTPleaseinputyourcoordinate:;x,yprice=1IFABS(x)=20ANDABS(x)=20ANDABS(y)1ANDflag2THENprice=1PRINTPrice=;priceEND,找出剩余2个数中的最大者,放在c中,找出4个数中的最大者,放在a中,找出剩余3个数中的最大者,放在b中,ab,真,假,a与b互换,ac,真,假,a与c互换,ad,真,假,a与d互换,bc,真,假,b与c互换,bd,真,假,b与d互换,c

温馨提示

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

评论

0/150

提交评论