用Java编写一个如下的菱形:
本质问题就是循环嵌套,外层决定有多少行,内层决定每行有多少*,而且内层需要分成上下两个大部分,上下每个部分要分成四个部分:前面空白,前面*,后面*,后面空白四个部分
代码如下
public class lingxing
{
public static void main(String[] args)//本质是循环嵌套,将一个菱形分成多个部分
{
for(int i=1;i<=9;i++) //先写菱形的上半部分,外层决定有多少行
{
for(int j=1;j<=9-i;j++) //内层决定行里有多少个*,这里是前面的空白部分的循环
{
System.out.print(" ");
}
for(int j=1;j<=i;j++) //这里是菱形的前半部分的循环
{
System.out.print("*");
}
for(int j=1;j<=i-1;j++) //这里是菱形后半部分的循环
{
System.out.print("*");
}
for(int j=1;j<=8-i;j++) //这里是后半部分的空白
{
System.out.print("");
}
System.out.println();
}
for(int i=1;i<=8;i++) //下半部分
{
for(int j=1;j<=i;j++) //这里是前面的空白部分的循环
{
System.out.print(" ");
}
for(int j=1;j<=9-i;j++) //这里是菱形的前半部分的循环
{
System.out.print("*");
}
for(int j=1;j<=8-i;j++) //这里是菱形后半部分的循环
{
System.out.print("*");
}
for(int j=1;j<=i-1;j++) //这里是后半部分的空白
{
System.out.print(" ");
}
System.out.println();
}
}
}
结果就如题目那样
版权声明:本文为qq_54190116原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。