/*
7. 用户输入一个数,按要求输出以下图形
   请输入一个数:5
         *
        * *
       * * *
      * * * *
     * * * * *
*/
public class Demo
{
public static void main(String args[])
{
int num=Integer.parseInt(args[0]);
for(int i=0;i<=num;i++)
{
System.out.println();
for(int j=0;j<=i+1;j++)
System.out.print(" ");
for(int k=0;k<1+i;k++)
System.out.print(" *");
}
}
}
用什么办法控制每一行的空格数我这上面应该怎么改才能达到题目要的效果阿!

解决方案 »

  1.   

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

    for(j=0;j<num-i;++j)
    System.out.print(" ");

    for(int k=0;k<i;)
    {
    System.out.print("*");
    ++k;
    if(k==i)
    System.out.print("\n");
    else
    System.out.print(" ");
    }
    }
      

  2.   

    谢谢大哥提的意见了,已经解决了,
    for(int j=0;j<=num-i;j++) 
      

  3.   

    或者:
    for(int i=1;i<=num;i++)
    {
    for(int j=0; j<2*num-i-1; ++j)
    System.out.print(" ");

    for(int k=0;k<i;++k)
    System.out.print(" *");

    System.out.print("\n");
    }
      

  4.   

    /*
     * 功能: 这是一个累木堆积的问题。
     * 特性: 行号在累木问题上起着重要的作用。 
     * 作者: JohnWoo 
     * 日期: 2005-7-8
     */
    package demo
    public class Test {    public Test() {
            super();
        }    public static void main(String[] args) {
            //int num = Integer.parseInt(args[0]);
            final char blank = ' ';
            final char point = '*';
            int num = 7;// 基数,是个奇数,底层累木数。
            int row = 0;// 行号
            for( int i=num; i>=1; i-- ) {
                row = num - i + 1;// 计算行号
                
                // 打印第一个字符前面的空距 (基数-行号)个:
                for( int x=i-1; x>0; x--) System.out.print(blank);
                
                // 打印每一行的累木:(累木个数=行号;加上空距=行号*2-1)
                for( int j = 1; j <=row*2-1; j++ ) {
                    // 特性:累木永远放在奇数位置。
                    if( j%2==0 ) 
                        System.out.print(blank);
                    else
                        System.out.print(point);
                }
                // 一行完毕,换行。
                System.out.print("\n");
            }
        }}哈哈。看了大家的我写的有些罗嗦了。汗颜.........