/**
打印菱形,可以分为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();
}
{
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();
}
}
}
打印菱形,可以分为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();
}
}
}