您的位置:首页 > 编程语言 > Java开发

JAVA学习之打印空心菱形

2017-03-06 08:36 495 查看
/**
打印菱形,可以分为3步
第一步,先打印一个实心三角形
第二步,把实心三角形里面的*去掉
第三步,在打印一个倒的空心三角形

 */

public class LingXing{
public static void main(String[] args){
//控制打印行数 
int line=5;
for(int i=1;i<=line;i++){
//控制打印空格
for(int j=1;j<=line-i;j++){
System.out.print("  ");
}
//打印*号
for(int j=1;j<=i*2-1;j++){
//如果是第一行,或者是最后一行,就把*打印出来
if(j==1 || j==i*2-1){
   System.out.print("*");
}else{
if(j==1 || j==2*i-1){//否则,如果是这一行的第一个* 或者是最后一个*
System.out.print("*");
}else{
System.out.print("  ");
}
}

}
System.out.println();
}

//以上的代码打印出上半部分的菱形

 //空心菱形下半部分的行数为line-1行;比如上半部分4行,则下半部分为3行才能构成菱形

for (int i=1;i<=line-1;i++) 

        {

            for (int j=1;j<=i;j++) //每行空格数

            {

                System.out.print("  ");

            }

            for (int k=1;k<=2*(line-i)-1;k++) //下半部分每行总的"*"数

            {

                if (k==1||k==2*(line-i)-1) //如果"*"处在第一和最后一位则打印出来

                {

                    System.out.print("*");

                }else

                    System.out.print("  "); //如果"*"不是处在第一和最后一位则打印出空格

            }

            System.out.println();

        }       
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 数组 打印菱形