大家帮我解决一个关于数组输出格式的问题,怎样把输出的结果在开头对齐。
原程序代码是:
public class LotteryArray
{
public static void main(String[] args)
{
int[][] odds=new int[10][];
for(int i=0;i <odds.length;i++)
odds[i]=new int[i+1];
for(int n=0;n <odds.length;n++)
for(int k=0;k <odds[n].length;k++)
{
int lotteryOdds=1;
for(int i=1;i <=k;i++)
lotteryOdds=lotteryOdds*(n-i+1)/i;
odds[n][k]=lotteryOdds;
}
for(int row[]:odds)
{
for(int odd:row)
System.out.printf( "%4d ",odd);
System.out.println();
}
}
}
输出结果是:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
我想要把个位的数和十位的数对齐,个位的数和百位的数对齐,应该怎么改变代码呀,比如说结果像下面这样子。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
------解决方案-------------------- "%-4d "