解題思想:首先我們印出一個n行的菱形,一般菱形都是奇數行的(好看一點),所以我們印出來的是一個奇數行的菱形,一般是這個形式:
解題想法:我們可以把菱形看成兩個部分,看成是上面一個正三角和下面一個反三角組成,然後我們分別印出來就好了。
Console.WriteLine("输入一个大于2的正整数");//至少3行才能出一个菱形,输入一个偶数菱形就是这个偶数减1行 int n = Convert.ToInt32(Console.ReadLine()); for (int i = 1; i <= (n + 1) / 2; i++) //打印菱形的上面部分 { for (int j = (n - 1) / 2; j >= i; j--) { //打印空格 Console.Write(" "); } for (int k = 1; k <= i * 2 - 1; k++) { //打印“*”号,第i行有i*2-1个“*”号 Console.Write("*"); } Console.WriteLine(); } for (int i = (n - 1) / 2; i >= 1; i--)//打印菱形下面的部分 与上面部分同理 { for (int j = i - 1; j < (n - 1) / 2; j++) { Console.Write(" "); } for (int k = 1; k <= i * 2 - 1; k++) { Console.Write("*"); } Console.WriteLine(); }
若有不妥,請多多指教 ,歡迎大家提問。
相關推薦:
以上是怎樣用C#印出一個n行的菱形?實戰詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!