当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

4.2.1while循环语句

9/17/2020 9:37:07 PM 人评论

4.2.1while循环语句

4.2 循环结构

循环结构是指在给定条件成立的情况下,重复执行一个语句块,当给定的条件不成立时,退出循环结构,执行循环结构后面的程序。实现循环结构的语句称为循环语句,在PHP中,循环语句有while循环语句、do…while循环语句和for循环语句。

4.2.1 while循环语句

while循环语句是最简单的循环语句,它的语法格式与if语句相似:

while(条件表达式){

语句块

}

功能:当while循环语句中条件表达式结果为TRUE时,程序将反复执行while中的语句块,直到表达式的结果为FALSE时才跳出while循环。while循环语句程序流程图如图4-10所示。例如,如下程序while.php的功能是计算1+2+3+…+100的结果。

figure_0070_0104
图4-10 while循环示例程序

<?php

$i = 1;

$sum = 0;

while($i<=100){

$sum = $sum + $i;

$i++;

}

echo $sum; //输出:5050

?>

4.2.2 do…while循环语句

do…while循环语句的语法格式:

do{

语句块

}while(条件表达式);

功能:程序会先执行 do 语句中的语句块,然后再检测条件表达式的值,如果为TRUE,继续执行do语句中的语句块,直到条件表达式的值为 FALSE 才跳出 do…while 循环语句。do…while循环语句程序流程图如图4-11所示。例如,如下程序doWhile.php的功能同样是计算1+2+3+…+100的结果。

figure_0071_0105
图4-11 do…while循环的示例程序

<?php

$i = 1;

$sum = 0;

do{

$sum = $sum + $i;

$i++;

}while($i<=100);

echo $sum;

?>

figure_0071_0106do…while循环语句后面必须加上分号作为该语句的结束。

do…while循环和while循环执行流程相似,但由于do…while循环对条件表达式的检测是在语句块执行结束后进行,因此do…while循环的语句块至少会被执行一次。

4.2.3 for循环语句

for循环语句语法格式较为复杂,却比while循环和do…while循环紧凑。for循环语句的语法格式如下所示。

for(表达式1;条件表达式2;表达式3){

语句块

}

for循环语句中,各表达式的功能如下。

表达式1的功能是初始化循环控制变量,表达式1只执行一次,并且不是必需的。

条件表达式 2 为循环控制条件,若条件表达式 2 值为TRUE,则执行语句块;若条件表达式2值为FALSE,则跳出for循环。条件表达式2也不是必需的。

表达式3的功能是修改循环控制变量的值。表达式3也不是必需的。

for循环语句程序流程图如图4-12所示。例如,如下程序for.php的功能是计算1+2+3+…+100的结果。右边的程序与左边的程序是等价的。

figure_0071_0107
图4-12 for循环语句程序流程图

<?php

$sum = 0;

for($i=1;$i<=100;$i++){

$sum = $sum + $i;

}

echo $sum; //输出:5050

?>

<?php

$sum = 0;

$i=1;

for(;$i<=100;){

$sum = $sum + $i;

$i++;

}

echo $sum; //输出:5050

?>

while循环、do…while循环以及for循环语句实现了相同的功能,这3个语句之间可以相互替换。当不知道循环次数时,经常使用 while 循环;如果要求一个固定次数的循环,可以考虑使用for循环。不管是while循环、do…while循环还是for循环,必须有循环结束条件,否则可能导致死循环。例如下面的for循环语句可能导致死循环。

for ($i=0; $i<=100; $i--)

for ( ; ; )

for ($i=0 ; $i<=100; $j++)

4.2.4 循环结构应用

程序nine.php使用PHP循环结构制作九九乘法表,该程序的运行结果如图4-13所示:

figure_0072_0108
图4-13 使用PHP循环结构制作九九乘法表

<strong>PHP九九乘法表</strong>

<br/>

<table border="1">

<?php

for ($c=1;$c<=9;$c++){

echo "<tr>";

for ($d=$c;$d<=9;$d++){

echo "<td align='right'>";

echo $c."×".$d."=".$c*$d." ";

echo "</td>";

}

echo "</tr>";

echo "<tr/><tr/>";

}

?>

</table>

程序nine.php说明如下。

(1)<strong />标签是HTML中的常用标签,该标签实现以粗体方式显示文本的功能。

(2)<table />标签是HTML中的常用标签,该标签制作一个表格,<table />标签的border属性用于定义表格边框的宽度。

(3)<tr />标签用于制作表格的一行,<tr />标签需嵌入到<table />标签中使用。

(4)<td />标签用于制作表格的一个单元格,该标签的align属性用于定义单元格中的文本对齐方式,<td />标签需嵌入到<tr />标签中使用。

上一篇:4.1.1if语句

下一篇:4.3.1continue语句

相关教程

共有条评论 网友评论

验证码: 看不清楚?