问题描述
- 关于java金字塔内部掏空的
-
public class taokong{
public static void main(String [] args){
int lay=7;//表示有多少层
for(int i=1;i<=lay;i++){
for(int k=1;k<=lay-i;k++){//空格规律:1行-3个,2行-2个,3行-1个,4行-0个
System.out.print(" ");
}
for(int j=1;j<=(i-1)*2+1;j++){//*打印,1-1,2-3,3-5,4-7
if(i==1||i==lay){
System.out.print("*");
}
else {if(j==1||j==(i-1)*2-1){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
}
System.out.println();//打出一个换行
}
}
}
运行结果怎么是这样?:
*
*
* *- *
- *
- *
*************
- *
解决方案
java---金字塔
JAVA---金字塔
Java金字塔及变形
解决方案三:
int lay = 7;
for(int i=1;i<=lay;i++){//输出7层
if(i==lay){//最后一行输出全部数据
for(int m=0;m<2*lay-1;m++){
System.out.print(" ");
}
}else{
for(int j=0;j<lay-i;j++){//内循环 输出 lay-i 个不换行空格
System.out.print(" ");
}
//接着输出星星
for(int k=1;k<=2*i-1;k++){
//掏空,除两头外其他用空格替换
if(k==1||k==2*i-1){
System.out.print("*");
}else{
System.out.print(" ");
}
}
//一行结束换行
printf("
");
}
}
![图片说明](http://img.ask.csdn.net/upload/201604/17/1460900895_232654.png)
时间: 2024-09-28 11:02:09