请问怎么让*变成白色,注释的部分哪里除了问题。。。
<html>
<head>
<meta charset="utf-8">
<title>lab2</title>
</head>
<body>
<form action="#" method="post">
<input type="text" name="num" placeholder="请输入要打印的行数">
<br/>
<input type="submit" name="s1" value="金字塔">
<input type="submit" name="s2" value="空心菱形">
</form>
</body>
</html>
<?php
error_reporting(E_ALL&~E_NOTICE);
$s1=$_POST['s1']; //接收金字塔
$s2=$_POST['s2']; //接收空心菱形
if($s1){
$num=$_POST['num']; //接收数字
if($num>0){
for($i=1;$i<=$num;$i++){
for($k=$num;$k>=$i;$k--){
/*echo "<span style='color:#fff'>*</span>";*/
echo ' - ';
}
for($j=3;$j<=$i*2+1;$j++){
echo ' * ';
}
echo '<br/>';
}
}else{
echo '层数请为正整数';
}
}3
收起
正在回答 回答被采纳积分+1
2回答
guly
2019-11-16 11:20:50
你好,*号白色部分没有问题,是循环出现问题,建议参考代码如下:
<?php
error_reporting(E_ALL&~E_NOTICE);
$s1=$_POST['s1']; //接收金字塔
$s2=$_POST['s2']; //接收空心菱形
if($s1) {
$num = $_POST['num']; //接收数字
if ($num > 0) {
for ($i = 1; $i <= $num; $i++) {
//打印一个由空格组成的倒直角三角形
for ($k = 1; $k <= $num - $i; $k++) {
//echo " "; //打印空格
echo "<span style='color:#fff;'>*</span>";
}
//负责打印一个由星号组成的等腰三角形,三角星星个数=层数减1乘以2加1
for ($j = 1; $j <= 2 * $i - 1; $j++) {
echo "*"; //打印星星个数
}
echo "<br/>";
}
}
else{
echo '层数请为正整数';
}
}如果解决您的问题请采纳,祝学习愉快!
PHP小白零基础入门
- 参与学习 人
- 提交作业 626 份
- 解答问题 4928 个
想要学好Web后端开发的中流砥柱语言,本阶段为你轻松铺就扎实的基础,从前端网页布局的搭建到后台PHP开发,助你从零基础到掌握主流开发语言。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星