java中用for嵌套循环怎么变成第三种的金字塔,求答

2024-11-26 22:46:00
推荐回答(2个)
回答1:

 这种算是入门级的 我只提供给你思路。


但凡打印图形的。


  1. 最外层for循环 肯定是层数。比如图中这个 1,2,3,4,5  5层

    for(int i = 0 ; i < 5 ;i++){

    ... do sth

       }

    2.里面的 肯定先打印空格 再打印*。

        空格 4 3 2 1 0个 for(int j=0;j<5-i;j++){

            syso("  ");

        }

    3.至于数字之间的空格 你可以直接打印i+" " 反正是循环


    2和3并列 在1的for循环里面


纯手打 忘采纳

回答2:

	public static void main(String[] args) {
// TODO Auto-generated method stub
/* 输出如下图形
     *    
    * *   
   * * *  
  * * * * 
 * * * * *
*/
//两种思路:
//思路一:找规律,每一行由空格和*组成,判断哪个位置是什么符号
int level = 5;
for(int i=1; i<=level; i++){ //按行输出
String s = "";
int k = 1;
for(int j=1; j<=(2*level-1); j++){
//起始*的位置、level为偶数时,奇数行偶数位为*;level为奇数时,奇数行奇数位为*、控制*的数量
if((j+i)>level & (j+i+level)%2==1 & k<=i){
s += "*";
k++;
}else{
s += " ";
}
}
System.out.println(s);
}

//思路二:简单粗暴的方法
for(int i=1; i<=level; i++){
for(int j=0; j System.out.print(" ");
}
for(int k=1; k<=i; k++){
System.out.print("* ");
}
System.out.println();
}


}