日期:2014-05-20  浏览次数:20779 次

求一个输出菱形的代码
*
  ***
  *****
 *******
*********
 *******
  *****
  ***
  *
 

------解决方案--------------------
分成两个三角形来打印,楼主好好想想,待会给代码
------解决方案--------------------
Java code

public class OutputRhombus {
    public static void main(String[] args) {
    int i, j, n = 9;
    if (0 == n % 2)// 只能为奇数
        n = n - 1;
    for (i = 1; i <= n / 2 + 1; i++) {// 前半部分的每一行
        for (j = 0; j <= n / 2 - i; j++)
        // 离边框距离
        System.out.print(" ");
        for (j = 1; j <= i * 2 - 1; j++)
        // 每行打印几个*
        System.out.print("*");
        System.out.println();// 每行打印完成,就回车换行
    }
    for (i = 0; i < n / 2; i++) {
        for (j = 0; j <= i; j++)
        System.out.print(" ");
        for (j = 0; j < n - 2 * (i + 1); j++)
        System.out.print("*");
        System.out.println();
    }

    }
}
/*output:
    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *

 */