用php语言编程:输出一个由“*”符号组成的菱形图形(必须使用for循环语句)

 我来答
PowerUnleashed
推荐于2017-12-16 · TA获得超过126个赞
知道答主
回答量:65
采纳率:0%
帮助的人:64.7万
展开全部
我的是C#编的,语言不重要,关键是掌握方法,我晚自习想了两节课后自己想到了原创的算法(虽然回家调试没得到菱形,但很快就修改成功了)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 字符图案输出
{
class Program
{
static void Main(string[] args)
{
bool b = true;
while (b == true)
{
try//判断数据是否合法↓
{
Console.Write("请输入一个奇数: ");
int n = Convert.ToInt32(Console.ReadLine());
if (n % 2 == 0)
{
continue;
}
for (int i = 1; i <= (2 * n) -1; i++)
{
for (int j = 1; j <= Math.Abs(n - i); j++)//绝对值实现对称, 如:3210123,想想,◆是不是先输出空格,并逐行减少, 后逐行增多
{
Console.Write(' ');
}
for (int k = 1; k <= Math.Abs(n - Math.Abs(n - i)); k++)//同理,◆第一行输出1个*,后逐行增多,然后又逐行减少
{
Console.Write("* ");//如果*后没有空格,则是半个菱形
}
Console.WriteLine();
}
}
catch
{
b = true;
}
}
}
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
风吹乱坟岗
2014-03-07
知道答主
回答量:19
采纳率:0%
帮助的人:9.8万
展开全部
这个 我正在研究。。。

<?php
echo '<table>';

for($i = 1,$j =0;$i <= 9;$i++){
echo '<tr>';
//倒序
$i <= 5?$j++:$j--;
//输出前空格
for($n =(5-$j);$n > 0;$n--){
echo '<td> </td>';
}
//输出*号
for($xing = (2*$j-1);$xing > 0;$xing--){
if($xing%2==1){
echo '<td>*</td>';
}else{
echo '<td> </td>';
}
}
//输出后空格
for($n =(5-$j);$n > 0;$n--){
echo '<td> </td>';
}
echo '</tr>';
}

echo '</table>';
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式