zoukankan      html  css  js  c++  java
  • PHP流程控制之循环结构

    计算机程序最擅长的功能之一就是按规定的条件,重复执行某些操作。循环结构可以减少源程序重复书写的工作量,即在给定条件成立时,反复执行某程序段,直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称为循环体,在PHP中提供while循环、do-while循环和for循环三种。

    while循环

    while循环需要设定一个布尔型条件,当条件为真时,它不断地执行一个语句块,直到条件为假为止。程序执行到while语句后,会进行如下操作:

    • 计算表达式的值,确定是TRUE还是FALSE
    • 如果表达式为FALSEwhile语句将结束,然后执行while语句之后的语句。
    • 如果表达式为TRUE,则执行while语句花括号中的代码块,然后返回到第1步执行。

    Demo

    <html>
    	<head><title>使用while循环嵌套输出表格</title></head>
    	<body>
    		<table style="align: center;600px" border="1">
    			<?php
    				$out = 0;                           		
    				while( $out < 10 ) {                  		
    					$bgcolor = $out%2 == 0 ? "#FFFFFF" : "#DDDDDD";
    	
    					echo "<tr style='background-color:".$bgcolor."'>"; //指定行的背景颜色
    				
    					$in = 0;                        		
    					while( $in < 10 ) { 				  	
    						echo "<td>".($out*10+$in)."</td>"; 	//执行一次,输出一个单元格
    						$in++;                    			
    					}
    
    					echo "</tr>";                  			
    					$out++;                      			
    				}
    			?>
    		</table>
    	</body>
    </html>
    
    

    do...while循环

    do...whilewhile循环非常相似,区别在于表达式的值是在每次循环结束时检查。do...while的循环语句必定会执行一次,因为表达式的结果值在每次循环结束后检查。

    Demo

    <?php 
    $count = 0;
    do {
    	echo $count;
    	$count++;
    }
    while ($count < 10);
    ?>
    
    

    for循环

    for循环语句适用于明确知道重复执行次数的情况,即for语句将循环次数的变量在for语句中预先定义好。for语句由分号分隔成三个部分,即循环变量初始化、条件表达式和循环变量自增长或者自减少。初始化是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增量定义循环控制变量,每循环一次后按什么方式变化。。程序执行到for语句时,会进行如下操作:

    • 第一次进入for循环时,对循环控制变量赋初值。
    • 根据判断条件的结果决定是否要继续执行循环,如果判断条件为真,则继续执行循环;如条件为假,则结束循环执行下面的语句。
    • 执行完循环体内的语句后,系统会根据循环控制变量增减方式,更改循环控制变量的值,再回到步骤2重新判断是否继续执行循环。

    Demo

    <?php 
        for( $i = 1;  $i <= 10;  $i++ )            
    		echo "这是第<b> $i </b>次循环执行输出的结果<br>";	
    ?>
    
  • 相关阅读:
    HDU 5775 Bubble Sort
    HDU 5763 Another Meaning
    HDU 5773 The All-purpose Zero
    HDU 5768 Lucky7
    HDU 5769 Substring
    SPOJ 705 New Distinct Substrings
    POJ 3261 Milk Patterns
    HDU 1521 排列组合 指数型母函数
    HDU 1023 Traning Problem (2) 高精度卡特兰数
    HDU 2082 母函数模板题
  • 原文地址:https://www.cnblogs.com/qiandu23/p/5947328.html
Copyright © 2011-2022 走看看