1. 程式人生 > >c# 一句代碼搞定菱形打印

c# 一句代碼搞定菱形打印

src void png 菱形 代碼 cnblogs bsp 技術 ()

需求:打印金字塔,菱形,如:

技術分享

首先定義行數n,對金字塔而言,空格依次遞減,星號依次遞增。菱形以行數位分界點,從0-n與金字塔相同,從n到2n-1行規律相反;因此需要以n位基準,用行數與n相減求絕對值,方法如下:

public static void PrintDiamond(int n)
{
  for (int i = 1; i <= 2 * n - 1; i++) // 金字塔則只需在該行將2n-1改為n即可
  {
    for (int j = 1; j <= Math.Abs(n - i); j++)
     Console.Write(" ");
    for (int k = 1; k <= 2 * (n - Math.Abs(i - n)) - 1; k++)
      Console.Write("*");
    Console.WriteLine();
  }
}

c# 一句代碼搞定菱形打印