class test2
{
public static void main(String[] args)
{
for(int x=0;x<=5;x++)
{
for(int y=5;y>x;y--)
{
System.out.print(" ");
}
for(int z=0;z<x;z++)
{
System.out.print(" "+(x+z));
}
System.out.println();
}
}
}上面的代码打印出来的是一个数字三角形,结果如下:
     1
    2 3
   3 4 5
  4 5 6 7
 5 6 7 8 9我想要的结果和这个不同,哪位高手朋友能帮我处理成以下的结果:
     1
    2 3
   4 5 6
  7 8 9 10
我想要的结果是这样的,三角形按数字的顺序排列!

解决方案 »

  1.   


    public static void main(String[] args) {
    int j = 1;
    int k = 0;
    for (int i = 1; i <= 10; i++) {
    System.out.print(i+" ");
    k++;
    if(j == k){
    j++;
    k=0;
    System.out.println();
    }
    }
    }
      

  2.   


    class test2 {
    public static void main(String[] args) {
    for (int x = 0; x <= 5; x++) {
    for (int z = 0; z < x; z++) {
    System.out.print((x + z) + " ");
    }
    System.out.println();
    }
    }
    }
      

  3.   

    其实很简单,只要把你源代码中的
    for(int y=5;y>x;y--)
    {
    System.out.print(" ");
    }
    这4行删除掉就OK了
      

  4.   


    class Test {
        public static void main(String[] args) {
            print(10);
        }
         
        static void print(int n){
            for(int i = 1,j = 1,m = 2;i <= n; i++){
    System.out.print(i + " ");
    if(i == j){
    System.out.println();
    j += m;
                            m++;
    }
    }
        }
    }
      

  5.   

    楼上写的很简洁精彩。不过感觉我的想法要更直观些。大家多指教。
    public void triangeCreate(int[] num) {
    int len = num.length;
    int start = 0; // 起始的数组下标
    int line = 1; // 输出的数字的行数
    if (len == 0) {
    return;
    } else {
    while (len > 0) {
    for (int i = start; i < start + line; i++) {
    // 对数组中是否有可用元素进行判断,因为最后一排的元素可能不满足等于行数。
    if(i == num.length){
    System.out.print("已到数组尾,无可用元素  ");
    break;
    }
    System.out.print(num[i] + " ");
    }
    System.out.println();
    len -= line;
    if(len <= 0){
       System.out.print("----排序全部结束");
       break;
    }
    start += line; // 行的起始元素加上行数即是第二行的起始
    line++;
    }
    }
    }
      

  6.   

    这样也可以:
    public static void main(String[] args) 
    {
    for (int x = 1; x <= 4; x++)
    {
    for (int y = 5; y > x; y--) 
    {
    System.out.print(" ");
    }
    for (int z = 1; z <= x; z++) 
    {
    System.out.print(x * (x-1) /2 + z + " ");
    }
    System.out.println();
    }
    }
      

  7.   

    好像是这样:public static void main(String[] args) 
    {
    for (int x = 1; x <= 4; x++)
    {
    for (int y = 5; y > x; y--) 
    {
    System.out.print(" ");
    }
    for (int z = 1; z <= x; z++) 
    {
    System.out.print(x * (x-1) /2 + z + " ");
    }
    System.out.println();
    }
    }