《(9.14)--单分支和双分支.ppt》由会员分享,可在线阅读,更多相关《(9.14)--单分支和双分支.ppt(22页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第第4 4章章 控制结构控制结构4.2 4.2 选择结构选择结构 1.1.单单单单分支分支分支分支结构结构结构结构功能功能功能功能:当表达式的值为当表达式的值为当表达式的值为当表达式的值为TrueTrueTrueTrue或非零时,执行或非零时,执行或非零时,执行或非零时,执行ThenThenThenThen后面的语句块,后面的语句块,后面的语句块,后面的语句块,否则不做任何操作。否则不做任何操作。否则不做任何操作。否则不做任何操作。If If ThenThen 语句块语句块语句块语句块End End If If或或或或 If If Then Then 格式:格式:格式:格式:4.2.1 If4
2、.2.1 If条件语句条件语句条件语句条件语句4.2 4.2 选择结构选择结构 执行过程:执行过程:执行过程:执行过程:false(0)true(true(非非0 0)表达式表达式 语语 句句 表达式表达式 语语 句句true(非0)1.1.单单单单分支分支分支分支结构结构结构结构4.2 4.2 选择结构选择结构执行过程:执行过程:执行过程:执行过程:1.1.单单单单分支分支分支分支结构结构结构结构false(0)true(true(非非0 0)表达式表达式 语语 句句 表达式表达式 false(0)4.2 4.2 选择结构选择结构 false(0)说明:(1)表达式:一般为关系表达式或逻辑表
3、达式,也可为算术表达式。表达式值按非零为True、零为False进行判断。(2)语句块:可以是一条或多条语句。若用单行结构格式表示,则只能有一条语句或各条语句间用冒号分隔,并且只能在同一行上书写。(3)单行结构格式没有End If。1.1.单单单单分支分支分支分支结构结构结构结构4.2 4.2 选择结构选择结构例例例例4.24.24.24.2 已知两已知两已知两已知两个数个数个数个数M M M M和和和和N N N N,比较它们的大小,比较它们的大小,比较它们的大小,比较它们的大小,使得使得使得使得M M M M大于大于大于大于N.N.N.N.:If If MN MN ThenThen T=M
4、T=M M=NM=N N=TN=T End If End If 或或或或 If If MN MN Then Then T=M:M=N:N=TT=M:M=N:N=T35MMN NT T4.2 4.2 选择结构选择结构程序设计基础例例例例4.24.24.24.2 已知两个数已知两个数已知两个数已知两个数M M M M和和和和N N N N,比较它们的大小,比较它们的大小,比较它们的大小,比较它们的大小,使得使得使得使得M M M M大于大于大于大于N.N.N.N.:If If MN MN ThenThen T=MT=M M=NM=N N=TN=T End If End If 或或或或 If If
5、MN MN Then Then T=M:M=N:N=TT=M:M=N:N=T35MMN NT T34.2 4.2 选择结构选择结构例例例例4.24.24.24.2 已知两个数已知两个数已知两个数已知两个数M M M M和和和和N N N N,比较它们的大小,比较它们的大小,比较它们的大小,比较它们的大小,使得使得使得使得M M M M大于大于大于大于N.N.N.N.:If If MN MN ThenThen T=MT=M M=NM=N N=TN=T End If End If 或或或或 If If MN MN Then Then T=M:M=N:N=tT=M:M=N:N=t5MMN NT T3
6、34.2 4.2 选择结构选择结构程序设计基础例例例例4.24.24.24.2 已知两个数已知两个数已知两个数已知两个数M M M M和和和和N N N N,比较它们的大小,比较它们的大小,比较它们的大小,比较它们的大小,使得使得使得使得M M M M大于大于大于大于N.N.N.N.:If If MN MN ThenThen T=MT=M M=NM=N N=TN=T End If End If 或或或或 If If MN MN Then Then T=M:M=N:N=TT=M:M=N:N=T55MMN NT T34.2 4.2 选择结构选择结构程序设计基础例例例例4.24.24.24.2 已知
7、两个数已知两个数已知两个数已知两个数M M M M和和和和N N N N,比较它们的大小,比较它们的大小,比较它们的大小,比较它们的大小,使得使得使得使得M M M M大于大于大于大于N.N.N.N.:If If MN MN ThenThen T=MT=M M=NM=N N=TN=T End IfEnd If 或或或或 If If MN MN Then Then T=M:M=N:N=TT=M:M=N:N=T55MMN NT T34.2 4.2 选择结构选择结构程序设计基础例例例例4.24.24.24.2 已知两个数已知两个数已知两个数已知两个数M M M M和和和和N N N N,比较比较比较
8、比较它们的大小,它们的大小,它们的大小,它们的大小,使得使得使得使得M M M M大于大于大于大于N.N.N.N.:If If MN MN ThenThen T=MT=M M=NM=N NN=T=T End If End If 或或或或 If If MN MN Then Then T=M:M=N:N=TT=M:M=N:N=T53MMN NT T34.2 4.2 选择结构选择结构2.2.双双双双分支结构分支结构分支结构分支结构格式:格式:格式:格式:If If ThenThen 1ElseElse 2End IfEnd Iffalse(0)false(0)true(true(非非0 0)表达式表
9、达式 语语 句句 1语语 句句 2true(非0)表达式表达式 语语 句句 1特点特点特点特点:当表达式当表达式当表达式当表达式的值为的值为的值为的值为TrueTrueTrueTrue或非或非或非或非零时,执行零时,执行零时,执行零时,执行ThenThenThenThen后面的语句块后面的语句块后面的语句块后面的语句块1 1 1 1,否则执行否则执行否则执行否则执行ElseElseElseElse后后后后面的语句块面的语句块面的语句块面的语句块2 2 2 2。或或或或 If If Then Then 1 Else Else 24.2 4.2 选择结构选择结构2.2.双双双双分支结构分支结构分支
10、结构分支结构格式:格式:格式:格式:If If ThenThen 1ElseElse 2End IfEnd Iffalse(0)false(0)true(true(非非0 0)表达式表达式 语语 句句 1语语 句句 2false(0)表达式表达式 语语 句句 2特点特点特点特点:当表达式当表达式当表达式当表达式的值为的值为的值为的值为TrueTrueTrueTrue或非或非或非或非零时,执行零时,执行零时,执行零时,执行ThenThenThenThen后面的语句块后面的语句块后面的语句块后面的语句块1 1 1 1,否则执行否则执行否则执行否则执行ElseElseElseElse后后后后面的语句
11、块面的语句块面的语句块面的语句块2 2 2 2。或或或或 If If Then Then 1 Else Else 24.2 4.2 选择结构选择结构程序设计基础35MMN NMAXMAX例例例例4.3 4.3 输出输出输出输出两两两两个个个个变量变量变量变量MM和和和和N N中较大者中较大者中较大者中较大者 :If If M N ThenM N Then MAX MAX=N N Else Else MAX MAX=MM End End If If Print Print“MAX=”,MAX“MAX=”,MAX :4.2 4.2 选择结构选择结构35MMN NMAXMAX :If If M N
12、ThenM N Then MAX MAX=N N Else Else MAX MAX=MM End End If If Print Print “MAX=”,MAX“MAX=”,MAX :例例例例4.3 4.3 输出输出输出输出两两两两个个个个变量变量变量变量MM和和和和N N中较大者中较大者中较大者中较大者4.2 4.2 选择结构选择结构 :If If M N ThenM N Then MAX MAX=N N Else Else MAX MAX=MM End End If If Print Print“MAX=”,MAX“MAX=”,MAX :35MMN NMAXMAX5例例例例4.3 4.
13、3 输出输出输出输出两两两两个个个个变量变量变量变量MM和和和和N N中较大者中较大者中较大者中较大者4.2 4.2 选择结构选择结构程序设计基础35MMN NMAXMAX :If If M N ThenM N Then MAX MAX=N N Else Else MAX MAX=MM End End If If Print Print“MAX=”,MAX“MAX=”,MAX :5 MAX=5输出输出例例例例4.3 4.3 输出输出输出输出两两两两个个个个变量变量变量变量MM和和和和N N中较大者中较大者中较大者中较大者4.2 4.2 选择结构选择结构程序设计基础73MMN NMAXMAX :
14、If If M N ThenM N Then MAX MAX=N N Else Else MAX MAX=MM End End If If Print Print“MAX=”,MAX“MAX=”,MAX :例例例例4.3 4.3 输出输出输出输出两两两两个个个个变量变量变量变量MM和和和和N N中较大者中较大者中较大者中较大者4.2 4.2 选择结构选择结构程序设计基础73MMN NMAXMAX :If If M N ThenM N Then MAX MAX=N N Else Else MAX MAX=MM End End If If Print Print“MAX=”,MAX“MAX=”,M
15、AX :例例例例4.3 4.3 输出输出输出输出两两两两个个个个变量变量变量变量MM和和和和N N中较大者中较大者中较大者中较大者4.2 4.2 选择结构选择结构程序设计基础73MMN NMAXMAX :If If M N ThenM N Then MAX MAX=N N Else Else MAX MAX=MM End End If If Print Print“MAX=”,MAX“MAX=”,MAX :7例例例例4.3 4.3 输出输出输出输出两两两两个个个个变量变量变量变量MM和和和和N N中较大者中较大者中较大者中较大者4.2 4.2 选择结构选择结构73MMN NMAXMAX :If
16、 If M N ThenM N Then MAX MAX=N N Else Else MAX MAX=MM End IEnd If f Print Print“MAX=”,MAX“MAX=”,MAX :7 MAX=7输出输出例例例例4.3 4.3 输出输出输出输出两两两两个个个个变量变量变量变量MM和和和和N N中较大者中较大者中较大者中较大者4.2 4.2 选择结构选择结构例例例例4.4 4.4 4.4 4.4 计算计算计算计算分段函数分段函数分段函数分段函数If x0 Then If x0 Then y=sin(x)+y=sin(x)+Sqr(x*x*x+1)/xSqr(x*x*x+1)/xElse Else y=Cos(x)-x 2+2*xy=Cos(x)-x 2+2*x End If End Ify=Cos(x)-x 2+2*y=Cos(x)-x 2+2*x xIf If x0 Then x0 Then y=sin(x)+Sin(x)+Sqr(x*x*x+1)/xy=sin(x)+Sin(x)+Sqr(x*x*x+1)/x 双分支结构实现双分支结构实现双分支结构实现双分支结构实现:单分支结构实现单分支结构实现单分支结构实现单分支结构实现:思考:如果将两语思考:如果将两语句改变顺序是否能句改变顺序是否能实现分段函数,为实现分段函数,为什么?什么?