62,621
社区成员
发帖
与我相关
我的任务
分享javac gold.java,明白了吗????
/*
*功能:输出镂空的金字塔和镂空的菱形
*/
public class Test2{
public static void main(String args[]){
/*
int i,j,k,lay = 4;//i,j,k控制循环 lay表示层数
for(i=1;i<=lay;i++){//循环的层数
for(j=1;j<=(lay-i);j++){//打印的空格数
System.out.print(" ");
}
for(k=1;k<=(i-1)*2+1;k++){//控制打印*
if(i==1||i==lay){
System.out.print("*");//控制顶层和底层的*数
}else{
if(k==1||k==(i-1)*2+1){//此处不要从镂空的空格处入手,要从打印的*数入手
System.out.print("*");
}
else{
System.out.print(" ");
}
}
}
System.out.println();
}
*/
int i,j,k,lay = 5;//i,j,k控制循环 lay表示层数
for(i=1;i<=(lay-1)*2+1;i++){//循环控制层数
if(i<=lay){//上半层
for(j=1;j<=(lay-i);j++){//控制循环输出空格数
System.out.print(" ");
}
for(k=1;k<=(i-1)*2+1;k++){//控制循环输出*数
if(k==1||k==(i-1)*2+1){//此处不要想镂空数,想*数
System.out.print("*");
}else{
System.out.print(" ");
}
}
}else{//菱形的下半层
for(j=1;j<=i-lay;j++){//控制循环输出空格数
System.out.print(" ");
}
for(k=1;k<=(lay*2-i)*2-1;k++){//控制循环输出*数
if(k==1||k==(lay*2-i)*2-1){//同理,此处不要考虑镂空数
System.out.print("*");
}else{
System.out.print(" ");
}
}
}
System.out.println();
}
}
}
以前写的,你看看、、、