php入门基础教程之for循环打印空心菱形

WBOY
Libérer: 2016-07-25 09:00:14
original
2462 Les gens l'ont consulté
本节为大家介绍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/>";
 }
?>
Copier après la connexion

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/>";
 }
?>
Copier après la connexion

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/>";
 }
?>
Copier après la connexion

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/>";
 }
?>
Copier après la connexion

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/>";
 }
?>
Copier après la connexion

效果图 感谢大家关注php入门教程,本系列的php基础教程将帮助php新手朋友,快速掌握php这门编程语言。 程序员之家将继续为大家推出php相关教程,祝大家学习进步!



source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal