php 如何实现输出这个图形 php 如何实现输出这个图形, 谢谢啦 * ******** *** * 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <?php//方法一echo " *<br/>";echo " ***<br/>";echo "*****<br/>";echo " ***<br/>";echo " *<br/>";?> <?php//方法二$max = 5;//这里设置最多的*,奇数for($i=1;$i<=$max;$i+=2){$blank = ($max - $i)/2;for($j=0;$j<$blank;$j++){ echo " ";}for($k=0;$j<$i;$k++){ echo "*";}echo "<br/>";}for($i=$max-2;$i>=1;$i-=2){$blank = ($max - $i)/2;for($j=0;$j<$blank;$j++){ echo " ";}for($k=0;$j<$i;$k++){ echo "*";}echo "<br/>";}?>这个没测试过,应该没问题 <?phpecho "<pre> * *** ***** *** *</pre>";?>我用这个实现的。不知道是不是楼主想要的 不是啦,要求是用一个for loop实现的,用户输入3以上的奇数,就可以生成类似的图形。如: **** * * ******** *** * 给你一个提示,自己想吧,呵呵。function listz($sum){ if ($sum%2==1){ for($x=1;$x<$sum;$x++){ } } }listz($sum); http://blog.csdn.net/ottozy/archive/2010/04/23/5520593.aspx <?php//方法二$max = 5;//这里设置最多的*,奇数for($i=1;$i<=$max;$i+=2){$blank = ($max - $i)/2;for($j=0;$j<$blank;$j++){ echo " ";}for($k=0;$k<$i;$k++){ echo "*";}echo "<br/>";}for($i=$max-2;$i>=1;$i-=2){$blank = ($max - $i)/2;for($j=0;$j<$blank;$j++){ echo " ";}for($k=0;$k<$i;$k++){ echo "*";}echo "<br/>";}?> <?php function printRhombus($n){ if($n == 1){ echo '*'; }elseif($n%2 == 1){ $ret = printOne($n,1); $newstr = strrev($ret); $newstr = substr($newstr,$n); $strrhombus .= $ret.$newstr; echo $strrhombus; }else{ echo "请输入奇数"; }}function printOne($n,$m){ if($n == $m){ $retstr .= str_repeat("*",$m); }elseif($n>$m){ $blanklen = ($n-$m)/2; $retstr .= str_repeat(" ",$blanklen); $retstr .= str_repeat("*",$m); $retstr .= str_repeat(" ",$blanklen); $m = $m + 2; $retstr .= printOne($n,$m); } return $retstr;}printRhombus(5);?> <form action="" method="post"> <input type="text" value="" name="Number" id="Number" /> <input type="submit" value="submit" /></form><?phpfunction makeShape($iNum) { $arr = array(); $s = ""; for($i=1; $i<=$iNum; $i++) { for($j=1; $j<=$iNum - $i; $j++) { $s .= " "; } for($k=1; $k<=2*$i-1; $k++) { $s .= "*"; } $arr[$i] = "$s<br/>"; unset($s); } return $arr;}$aShape = array();if(isset($_POST['Number'])) { $aShape = makeShape(($_POST['Number'] + 1)/2); for($i=1; $i<=count($aShape); $i++) { echo $aShape[$i]; if($i == count($aShape)) { for($j= count($aShape)-1; $j>=1; $j--) echo $aShape[$j]; } }}?> php 能做什么? wamp phpmyadmin 打不开 懂得请进 php+sql server2000连不上 如何实现文件下载的控制(安全)? 请高手帮忙看看!!!为什么以下代码利用internet上不能进行预览啦(页面上什么东西都没有,一片空白)? 请问phpbb是免费的吗? 请问,php中的mail函数 急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急 算法探讨! up者有分! 怎样把input框中的值传给button按钮的函数作为参数? 在使用PEAR的Services_Twitter包的时候出现错误提示 首写拼音字母分类显示封面频道中的子栏目名称
<?php
//方法一
echo " *<br/>";
echo " ***<br/>";
echo "*****<br/>";
echo " ***<br/>";
echo " *<br/>";
?>
<?php
//方法二
$max = 5;//这里设置最多的*,奇数
for($i=1;$i<=$max;$i+=2){
$blank = ($max - $i)/2;
for($j=0;$j<$blank;$j++){
echo " ";
}
for($k=0;$j<$i;$k++){
echo "*";
}
echo "<br/>";
}
for($i=$max-2;$i>=1;$i-=2){
$blank = ($max - $i)/2;
for($j=0;$j<$blank;$j++){
echo " ";
}
for($k=0;$j<$i;$k++){
echo "*";
}
echo "<br/>";
}
?>这个没测试过,应该没问题
echo "<pre>
*
***
*****
***
*
</pre>";
?>
我用这个实现的。不知道是不是楼主想要的
如:
*
***
*
*
***
*****
***
*
function listz($sum){
if ($sum%2==1){
for($x=1;$x<$sum;$x++){
}
}
}
listz($sum);
//方法二
$max = 5;//这里设置最多的*,奇数
for($i=1;$i<=$max;$i+=2){
$blank = ($max - $i)/2;
for($j=0;$j<$blank;$j++){
echo " ";
}
for($k=0;$k<$i;$k++){
echo "*";
}
echo "<br/>";
}
for($i=$max-2;$i>=1;$i-=2){
$blank = ($max - $i)/2;
for($j=0;$j<$blank;$j++){
echo " ";
}
for($k=0;$k<$i;$k++){
echo "*";
}
echo "<br/>";
}
?>
function printRhombus($n){
if($n == 1){
echo '*';
}elseif($n%2 == 1){
$ret = printOne($n,1);
$newstr = strrev($ret);
$newstr = substr($newstr,$n);
$strrhombus .= $ret.$newstr;
echo $strrhombus;
}else{
echo "请输入奇数";
}
}function printOne($n,$m){ if($n == $m){
$retstr .= str_repeat("*",$m);
}elseif($n>$m){
$blanklen = ($n-$m)/2;
$retstr .= str_repeat(" ",$blanklen);
$retstr .= str_repeat("*",$m);
$retstr .= str_repeat(" ",$blanklen);
$m = $m + 2;
$retstr .= printOne($n,$m);
}
return $retstr;
}
printRhombus(5);?>
<form action="" method="post">
<input type="text" value="" name="Number" id="Number" />
<input type="submit" value="submit" />
</form>
<?php
function makeShape($iNum) {
$arr = array();
$s = "";
for($i=1; $i<=$iNum; $i++) {
for($j=1; $j<=$iNum - $i; $j++) {
$s .= " ";
}
for($k=1; $k<=2*$i-1; $k++) {
$s .= "*";
}
$arr[$i] = "$s<br/>";
unset($s);
}
return $arr;
}
$aShape = array();
if(isset($_POST['Number'])) {
$aShape = makeShape(($_POST['Number'] + 1)/2);
for($i=1; $i<=count($aShape); $i++) {
echo $aShape[$i];
if($i == count($aShape)) {
for($j= count($aShape)-1; $j>=1; $j--)
echo $aShape[$j];
}
}
}
?>