打印菱形,要用分部打印的思想吗?我看书了,用的是2重循环,你们会吗

解决方案 »

  1.   

    刚学java的娃
    而且是培训班的。
      

  2.   


     for(int i=1;i<10;i++){
                for(int j=0;j<Math.abs(5-i);j++){
                    System.out.print(" ");
                }
                for(int k=0;k<(5-Math.abs(5-i));k++){
                    System.out.print(" *");
                }
                System.out.println();
            }这样可以不...
      

  3.   

    Math.abs()这是一个函数要来求绝对值:
    abs
    public static int abs(int a)返回 int 值的绝对值。如果参数为非负数,则返回该参数。如果参数为负数,则返回该参数的相反数。 
    注意,如果参数等于 Integer.MIN_VALUE 的值(即能够表示的最小负 int 值),那么结果与该值相同且为负。 
    参数:
    a - 要确定绝对值的参数。 
    这个代码可以实现输出菱形:
    public class TestFigure
    {
    public static void main(String [] args)
    {
    int i,j,k;
    for(i=0;i<4;i++)
    {
    for(j=0;j<=4-i;j++)
    System.out.printf(" ");
    for(k=0;k<2*i+1;k++)
    System.out.printf("*");
    System.out.println("\n");
    }
    for(j=0;j<3;j++)
    {
    for(k=0;k<j+3;k++)
    System.out.printf(" ");
    for(k=0;k<5-2*j;k++)
    System.out.printf("*");
    System.out.println("\n");
    }
    }
    }
      

  4.   

    public static void main(String[] args) {

    for(int i=1;i<=14;i=i+2){
    for(int k=1;k<=(i<=7?4-i/2:i/2-2);k++){
    System.out.print(" ");
    }
    for(int j=1;j<=(i<6?i:14-i);j++){
    System.out.print("*");
    }
    System.out.println();
    }
    }第一层for代表一共几层,第二个for是打印空格的,第三个for是打印*的,你把每个i值带入在纸上一层一层的循环你就明白了
      

  5.   


    for(int i = 0;i < 1;++i) System.out.print("菱");
        for(int j = 0;j < 1;++j) System.out.print("形");