黑马程序员技术交流社区

标题: 新手学习,求助。 [打印本页]

作者: 爱学习爱java..    时间: 2016-8-5 08:36
标题: 新手学习,求助。
[Java] 纯文本查看 复制代码
public class YangHui {
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                int n = 6;
                int[][]arr=new int[n][n];
                for(int x=0;x<arr.length;x++){
                        arr[x][0]=1;
                        arr[x][x]=1;
                }
                for(int x=2;x<arr.length;x++){
                        for(int y=1;y<=x-1;y++){
                        arr[x][y]=arr[x-1][y-1]+arr[x-1][y];
                        System.out.print(arr[x][y]+"\t");
                                        }
                        System.out.println();
                }
               
        }
               
}

提问:为什么输出结果是这样的,没有定义的第一行和最后一行数据为1。
2
3   3
4   6   4
5   10  10   5
作者: jiajun    时间: 2016-8-5 08:58
你这个算法有问题,而且你的第一行数据并没有打印
作者: 爱学习爱java..    时间: 2016-8-5 16:50
jiajun 发表于 2016-8-5 08:58
你这个算法有问题,而且你的第一行数据并没有打印

怎么修改下呢..
作者: 爱学习爱java..    时间: 2016-8-5 17:20
jiajun 发表于 2016-8-5 08:58
你这个算法有问题,而且你的第一行数据并没有打印

[Java] 纯文本查看 复制代码
public class YangHui {
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                int n = 6;
                int[][]arr=new int[n][n];
                for(int x=0;x<arr.length;x++){
                        arr[x][0]=1;
                        arr[x][x]=1;
                }
                for(int x=2;x<arr.length;x++){
                        for(int y=1;y<x;y++)
                        arr[x][y]=arr[x-1][y-1]+arr[x-1][y];
                       
                }
                for(int x=0; x<arr.length; x++) {
                        for(int y=0; y<=x; y++) {
                                System.out.print(arr[x][y]+"\t");
                        }
                        System.out.println();
                        }
        }
               
}
改好了,嘿嘿,谢谢提醒,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2