刚才看了面试题的帖子,想弄出个
 * * * * * * *
   * * * * *
     * * *
       *
这个应该怎么写?给点注释,谢谢大虾们了

解决方案 »

  1.   

    println("* * * * * * *");
    println(" * * * * * ");
    println("  * * *  ");
    println("   *   ");刚刚看到类似的帖子了。
      

  2.   


    for(int i=5;i>=0;i--)
    {
    for(int k=0;k<=5-i;k++)
    {
    print(" ");
    }
    for(int j=0;j<=i;j++)
    {
    print("*");
    }
    println();
    }我就在这里写的
     没测试过   不知道对不对
    还有。
     我实在不知道怎么写注释。
    以后这问题自己想。
      

  3.   

    把下面这个帖子里的反过来就行了。http://topic.csdn.net/u/20080310/14/42c8007a-e54c-47e9-b8a7-a995d1a84c45.html
      

  4.   

    public class Test {    public static void main(String[] args) {
            printTriangle(5, true);
            System.out.println();        printTriangle(5, false);
            System.out.println();        printReverseTriangle(5, true);
            System.out.println();        printReverseTriangle(5, false);
        }
        
        private static void printTriangle(int line, boolean isSolid) {
            for(int i = 1; i <= line; i++) {
                for(int j = - line + 1; j < i; j++) {
                    if(isSolid) {
                        System.out.print(i > Math.abs(j) ? "*" : " ");
                    }else{
                        System.out.print(i == Math.abs(j) + 1 || i == line ? "*" : " ");
                    }
                }
                System.out.println();
            }
        }
        
        private static void printReverseTriangle(int line, boolean isSolid) {
            for(int i = 1; i <= line; i++) {
                for(int j = - line + 1, k = line - i; j <= k; j++) {
                    if(isSolid) {
                        System.out.print(i + Math.abs(j) <= line ? "*" : " ");
                    }else{
                        System.out.print(i + Math.abs(j) == line || i == 1 ? "*" : " ");
                    }
                }
                System.out.println();
            }
        }
    }
      

  5.   

     i=
        +-+-+-+-+-+
      1 |#|#|#|#|#|
        +-+-+-+-+-+
      2 | |#|#|#| |
        +-+-+-+-+-+
      3 | | |#| | |
        +-+-+-+-+-+
     j= -2 1 0 1 2算法很简单:
    从图中可以看出规律,即 i + abs(j) <= line 时,有“#”,否则为空格。
      

  6.   

     i=
        +-+-+-+-+-+
      1 |#|#|#|#|#|
        +-+-+-+-+-+
      2 | |#|#|#|
        +-+-+-+-+
      3 | | |#|
        +-+-+-+
     j= -2 1 0 1 2最右边的几个空格没有必要输出,j 只要从 - (line - 1) 到 line - 1 位置就可以了。
      

  7.   

    7 楼说错了,更正一下,j 的终止条件 line - 1 改为 line - i: i=
        +-+-+-+-+-+
      1 |#|#|#|#|#|
        +-+-+-+-+-+
      2 | |#|#|#|
        +-+-+-+-+
      3 | | |#|
        +-+-+-+
     j= -2 1 0 1 2最右边的几个空格没有必要输出,j 只要从 - (line - 1) 到 line - i 位置就可以了。
      

  8.   

    public class JinZiTa { /**
     * @param args
     */
    public static void main(String[] args) {

             for(int i=4;i>=1;i--){
              for(int j=1;j<=4-i;j++){
              System.out.print(" ");
              }
              for(int k=2*i-1;k>=1;k--){
              System.out.print("*");
              }
            System.out.println(" ");
             }
             
             }
             
    }
    用for循环写就可以了 
      

  9.   


    public class test {
      public static void main(String[] args) {
            for(int i=6;i>=0;i--)
            {
              for(int k=0;k<=5-i;k++)
               {
                 System.out.print(" ");
               }
             for(int j=0;j<=i;j++)
              {
                System.out.print(" "+"*");
              }
              System.out.println();
              i--;
            }
         }
    }