首頁 > 後端開發 > php教程 > php入門基礎教學之for循環列印空心菱形

php入門基礎教學之for循環列印空心菱形

WBOY
發布: 2016-07-25 09:00:14
原創
2476 人瀏覽過
本节为大家介绍for循环打印空心菱形,for循环应用的例子,供大家学习参考。

上一节我们介绍了php for循环,这节看几个具体的例子。 思路: 1、写出代码打印实心的金字塔 2、修改代码,把金字塔抛空 3、修改代码,把金字塔倒转 4、修改倒转后的代码,把金字塔抛空 5、修改代码,把具体的数进行参数化

1、打印实心金字的金字塔:

<?php
//$n=5;
//by bbs.it-home.org
for($i=1;$i<=5;$i++){
//打印空格
for($j=1;$j<=5-$i;$j++){
   echo " ";
  }
  //打印*号
  for($k=1;$k<=2*$i-1;$k++){
   echo "*";
  }

  echo "<br/>";
 }
?>
登入後複製

2、把金字塔抛空

<?php
 //$n=5;
 for($i=1;$i<=5;$i++){
  //打印空格
  for($j=1;$j<=5-$i;$j++){
   echo " ";
  }
 //打印*号
 for($k=1;$k<=2*$i-1;$k++){
  //打印第一行后最后一行都打*连接
  if($i==1 || $i==5){
   echo "*";
  }else{
  //怎么打空格和*号的问题
   if($k==1 || $k==2*$i-1){
    echo "*";
   }else{
    echo " ";
   }
  }
 }
 echo "<br/>";
 }
?>
登入後複製

3、把金字塔倒转

<?php
 //$n=5;
 for($i=1;$i<=5;$i++){
  //打印空格
  for($j=1;$j<=5-$i;$j++){
   echo " ";
  }
  //打印*号
  for($k=1;$k<=2*$i-1;$k++){
   //打印第一行后最后一行都打*连接
   if($i==1 || $i==5){
     echo "*";
   }else{
    //怎么打空格和*号的问题
    if($k==1 || $k==2*$i-1){
     echo "*";
    }else{
     echo " ";
    }
   }
  }
 echo "<br/>";
 }
 //倒转
 //by bbs.it-home.org
 for($i=5;$i>=0;$i--){
  //打印空格
  for($j=0;$j<=5-$i;$j++){
   echo " ";
  }
  //打印*号
  for($k=1;$k<=2*$i-3;$k++){
   echo "*";
  }
 echo "<br/>";
 }
?>
登入後複製

4、把金字塔抛空,并把中间的*号去掉 修改这里的代码(if($i==1 || $i==5){ //去掉$i==5 把中间抛空)

<?php
 //$n=5;
 for($i=1;$i<=5;$i++){
  //打印空格
  for($j=1;$j<=5-$i;$j++){
   echo " ";
  }
  //打印*号
  for($k=1;$k<=2*$i-1;$k++){
  //打印第一行后最后一行都打*连接($i==1 || $i==5) 
   if($i==1){ //去掉$i==5 把中间抛空
    echo "*";
   }else{
    //怎么打空格和*号的问题
    if($k==1 || $k==2*$i-1){
     echo "*";
    }else{
     echo " ";
   }
  }
 }
 echo "<br/>";
 }
 //by bbs.it-home.org
 //倒转 抛空
 for($i=5;$i>=0;$i--){
  //打印空格
  for($j=0;$j<=5-$i;$j++){
   echo " ";
  }
  //打印*号
  for($k=1;$k<=2*$i-3;$k++){
   //怎么打空格和*号的问题
   if($k==2*$i-3 || $k==1){
    echo "*";
   }else{
    echo " "; 
   }
  }
 echo "<br/>";
 }
?>
登入後複製

5、把具体的数进行参数化 :把具体数字5改成$n=5代替,随后可以设置$n的值,可以任意放大和缩小

<?php
 $n=5;
 for($i=1;$i<=$n;$i++){
  //打印空格
  for($j=1;$j<=$n-$i;$j++){
   echo " ";
  }
  //打印*号
  for($k=1;$k<=2*$i-1;$k++){
  //打印第一行后最后一行都打*连接($i==1 || $i==5) 
   if($i==1){ //去掉$i==5 把中间抛空
    echo "*";
   }else{
    //怎么打空格和*号的问题
    if($k==1 || $k==2*$i-1){
     echo "*";
    }else{
     echo " ";
    }
  }
 }
 echo "<br/>";
 }
 //倒转 抛空
 for($i=$n;$i>=0;$i--){
  //打印空格
  for($j=0;$j<=$n-$i;$j++){
   echo " ";
  }
  //打印*号
  for($k=1;$k<=2*$i-3;$k++){
   //怎么打空格和*号的问题
   if($k==2*$i-3 || $k==1){
    echo "*";
   }else{
    echo " "; 
   }
  }
 echo "<br/>";
 }
?>
登入後複製

php入門基礎教學之for循環列印空心菱形 感谢大家关注php入门教程,本系列的php基础教程将帮助php新手朋友,快速掌握php这门编程语言。 程序员之家将继续为大家推出php相关教程,祝大家学习进步!



來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板