📄 sec2-3.htm
字号:
style='font-size:12.0pt;font-family:宋体'>块以后流程转到</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>END IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句。</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>END IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句是块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>的“出口”,无论执行完</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>then</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>块或</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>else</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>块,流程都转到</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>END IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句,接着执行</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>ENDIF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句之后的下一语句。</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>END IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句本身不进行什么操作,它是块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>的结束符号,用它标志块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>的范围</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>(</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句开始,</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>END IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>结束</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>)</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>。</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
<p class=MsoNormal style='text-indent:24.0pt;mso-char-indent-count:2.0;
line-height:17.0pt;mso-line-height-rule:exactly;mso-char-indent-size:12pt'><span
lang=ZH-CN style='font-size:12.0pt;font-family:宋体'>一个块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>中可完整地包含另一个</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>(</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>或多个</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>)</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>,称为块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>的嵌套。注意嵌套时不能交叉。</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
<p><a name="第2_3_1b"><span lang=EN-US style='font-family:宋体;color:red'>b)</span></a><span
lang=EN-US style='font-family:宋体;color:red'> ELSE IF</span><span lang=ZH-CN
style='font-family:宋体;color:red'>语句</span><span lang=EN-US style='font-family:
宋体;color:red'><o:p></o:p></span></p>
<p class=MsoNormal style='text-indent:24.0pt;mso-char-indent-count:2.0;
line-height:17.0pt;mso-line-height-rule:exactly;mso-char-indent-size:12pt'><span
lang=ZH-CN style='font-size:12.0pt;font-family:宋体'>在块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>中,</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>then</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>块和</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>else</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>块还可以包含另一个块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>,即上面介绍的块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>的嵌套。如果嵌套的层次比较多,而每一个块</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>又都要包含块</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句、</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>ELSE</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句、</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>ENDIF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句,程序就会冗长。而且每一层的嵌套都向右缩进,层次多时就会发生困难,无法再向右缩进了。</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
<p class=MsoNormal style='text-indent:24.0pt;mso-char-indent-count:2.0;
line-height:17.0pt;mso-line-height-rule:exactly;mso-char-indent-size:12pt'><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>F77</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>提供</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>ELSE IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句来处理“否则,如果……”的情况。其一般形式为:</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:22.8pt;text-indent:24.0pt;mso-char-indent-count:
2.0;mso-char-indent-size:12pt'><span lang=EN-US style='font-size:12.0pt;
font-family:宋体;color:#FF9900'>IF(</span><span lang=ZH-CN style='font-size:12.0pt;
font-family:宋体;color:#FF9900'>逻辑表达式</span><span lang=EN-US style='font-size:
12.0pt;font-family:宋体;color:#FF9900'>1) THEN<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:45.6pt;text-indent:24.0pt;mso-char-indent-count:
2.0;mso-char-indent-size:12pt'><span lang=ZH-CN style='font-size:12.0pt;
font-family:宋体;color:#FF9900'>…</span><span lang=EN-US style='font-size:12.0pt;
font-family:宋体;color:black'><span style='mso-tab-count:8'> </span>then
</span><span lang=ZH-CN style='font-size:12.0pt;font-family:宋体;color:black'>块</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:22.8pt;text-indent:24.0pt;mso-char-indent-count:
2.0;mso-char-indent-size:12pt'><span lang=EN-US style='font-size:12.0pt;
font-family:宋体;color:#FF9900'>ELSE IF(</span><span lang=ZH-CN style='font-size:
12.0pt;font-family:宋体;color:#FF9900'>逻辑表达式</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体;color:#FF9900'>2) THEN<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:45.6pt;text-indent:24.0pt;mso-char-indent-count:
2.0;mso-char-indent-size:12pt'><span lang=ZH-CN style='font-size:12.0pt;
font-family:宋体;color:#FF9900'>…</span><span lang=EN-US style='font-size:12.0pt;
font-family:宋体;color:black'><span style='mso-tab-count:8'> </span>else
if </span><span lang=ZH-CN style='font-size:12.0pt;font-family:宋体;color:black'>块</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:22.8pt;text-indent:24.0pt;mso-char-indent-count:
2.0;mso-char-indent-size:12pt'><span lang=EN-US style='font-size:12.0pt;
font-family:宋体;color:#FF9900'>ELSE<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:45.6pt;text-indent:24.0pt;mso-char-indent-count:
2.0;mso-char-indent-size:12pt'><span lang=ZH-CN style='font-size:12.0pt;
font-family:宋体;color:#FF9900'>…</span><span lang=EN-US style='font-size:12.0pt;
font-family:宋体;color:black'><span style='mso-tab-count:8'> </span>else
</span><span lang=ZH-CN style='font-size:12.0pt;font-family:宋体;color:black'>块</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体;color:#FF9900'><o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:22.8pt;text-indent:24.0pt;mso-char-indent-count:
2.0;mso-char-indent-size:12pt'><span lang=EN-US style='font-size:12.0pt;
font-family:宋体;color:#FF9900'>END IF<o:p></o:p></span></p>
<p class=MsoNormal style='text-indent:24.0pt;mso-char-indent-count:2.0;
line-height:17.0pt;mso-line-height-rule:exactly;mso-char-indent-size:12pt'><span
lang=ZH-CN style='font-size:12.0pt;font-family:宋体'>当处理多分支选择时,用数条</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>ELSE IF</span><span
lang=ZH-CN style='font-size:12.0pt;font-family:宋体'>语句往往比较方便,在程序中</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>ELSE IF</span><span
lang=ZH-CN style='font-size:12.0pt;font-family:宋体'>语句不必向右缩进,而连续用多个</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>ELSE IF</span><span
lang=ZH-CN style='font-size:12.0pt;font-family:宋体'>语句表示各个条件的选择。注意块</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句必须有一个</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>END IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句与之对应。而</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>ELSE IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句不需</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>END IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句与之对应,它可以有与之配对的</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>ELSE</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>语句。</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
<p class=MsoNormal style='text-indent:24.0pt;mso-char-indent-count:2.0;
line-height:17.0pt;mso-line-height-rule:exactly;mso-char-indent-size:12pt'><span
lang=ZH-CN style='font-size:12.0pt;font-family:宋体'>例:解</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><span style='position:relative;
top:3.0pt;mso-text-raise:-3.0pt'><!--[if gte vml 1]><v:shapetype id="_x0000_t75"
coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"
filled="f" stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:87pt;
height:15.75pt' o:ole="">
<v:imagedata src="Sec2-3.files/image003.wmz" o:title=""/>
</v:shape><![endif]--><![if !vml]><img border=0 width=116 height=21
src="Sec2-3.files/image006.gif" v:shapes="_x0000_i1025"><![endif]></span><!--[if gte mso 9]><xml>
<o:OLEObject Type="Embed" ProgID="Equation.3" ShapeID="_x0000_i1025"
DrawAspect="Content" ObjectID="_1070107396">
</o:OLEObject>
</xml><![endif]--></span><span lang=ZH-CN style='font-size:12.0pt;font-family:
宋体'>。</span><span lang=EN-US style='font-size:12.0pt;font-family:宋体'><a
href="example/e_231_02.f90">[e_231_02.f90]</a><o:p></o:p></span></p>
<p style='mso-char-indent-size:12pt'><a name="第2_3_1c"><span lang=EN-US
style='font-family:宋体;color:red'>c)</span></a><span lang=EN-US
style='font-family:宋体;color:red'> </span><span lang=ZH-CN style='font-family:
宋体;color:red'>块</span><span lang=EN-US style='font-family:宋体;color:red'>IF</span><span
lang=ZH-CN style='font-family:宋体;color:red'>构造</span><span lang=EN-US
style='font-family:宋体;color:red'><o:p></o:p></span></p>
<p class=MsoNormal style='text-indent:24.0pt;mso-char-indent-count:2.0;
line-height:17.0pt;mso-line-height-rule:exactly;mso-char-indent-size:12pt'><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>F90</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>明确提出了块的概念。块是作为单元看待的一个可执行构造的序列,它可用于</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>构造、</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>CASE</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>构造和</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>DO</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>构造中,对这三种构造都可命名</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>(</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>即标签</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>)</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>。块的规则为:</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'>1)</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>如果一个块中包含一个可执行构造,那么它必须完整地被包含在该块中。</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>2)</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>禁止从块的外部转入块的内部,可以在块的内部进行控制转移,也可以从块内转移到块的外部。</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>3)</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>块是可以嵌套的。</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
<p class=MsoNormal style='text-indent:24.0pt;mso-char-indent-count:2.0;
line-height:17.0pt;mso-line-height-rule:exactly;mso-char-indent-size:12pt'><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'>IF</span><span lang=ZH-CN
style='font-size:12.0pt;font-family:宋体'>构造的一般形式为:</span><span lang=EN-US
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -