当前位置: 代码迷 >> J2SE >> 一个输出有关问题,好像有人发过,但是找不到了
  详细解决方案

一个输出有关问题,好像有人发过,但是找不到了

热度:207   发布时间:2016-04-24 18:05:59.0
一个输出问题,好像有人发过,但是找不到了
希望图片能显示

求输出,给个思路也好




------解决方案--------------------
这应该很简单的,小三角形是个循环,大三角形是个循环,大三角形的每一层是个循环
所以三个循环就可以了
Java code
public class csdn {    public static void main(String[] args) throws Throwable {        int n = 5, m = 5;        int center = n * m;        StringBuilder buf = new StringBuilder(); //用来保存字符*        for (int i=0; i<n; i++) { //大三角形循环            for (int j=0; j<m; j++) { //小三角形循环                buf.delete(0, buf.length()); //清空字符*                for (int k=0; k<2*j+1; k++) { //计算并保存小三角形每层的字符*                    buf.append("*");                }                for (int k=0, p=center-i*m+j; k<=i; k++, p=2*m) { //大三角形的每层循环                    String format = "%" + p + "s"; //计算开始位置并设置格式化输出                    System.out.printf(format, buf.toString()); //打印                }                System.out.println(); //小三角形每层换行            }        }    }}
  相关解决方案