您的位置:首页 > 其它

用math.abs打印菱形boolean和嵌套for分别打印空心三角形

2017-07-20 17:40 288 查看
package com.sxt;

public class KeBen {

public static void main(String[] args) {

// 打印菱形用Math.abs的方法
int n=5;
//外打行
for(int i=0;i<n*2-1;i++){//其实是打印了9行
//打空格
for(int j=0;j<Math.abs(n-i-1);j++){
System.out.print(" ");
}
//打*+空格
for(int k=0;k<n-Math.abs(n-i-1);k++){
System.out.print("* ");
}
System.out.println();
}

//用boolean类型来打印空心三角形
int m=5;
for(int i=1;i<=m;i++){
for(int j=1;j<=m-i;j++){
System.out.print(" ");
}
for(int j=1;j<=i;j++){
boolean f1=i==1||i==m;
boolean f2=j==1||j==i;
if(f1||f2){
System.out.print("* ");//*+空格
}else{
System.out.print("  ");//两个空格
}
}
System.out.println();

}

//用for的嵌套循环打印空心三角形
int q = 5;
for (int i = 1; i <= q; i++) {
for (int j = 1; j <= q - i; j++) {
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
if (i == 1 || i == q) {
System.out.print("*");
} else {
if (j == 1 || j == 2 * i - 1) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
}
System.out.println();
}

}

}

打印的结果图形

    * 

   * * 

  * * * 

 * * * * 

* * * * * 

 * * * * 

  * * * 

   * * 

    * 

    * 

   * * 

  *   * 

 *     * 

* * * * * 

    *

   * *

  *   *

 *     *

*********
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: