A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© nc11111 中级黑马   /  2016-4-7 21:03  /  505 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


/*
* 1
* 1 1
* 1 2 1
* 1 3 3 1
* 1 4 6 4 1
* 1 5 10 10 5 1
*
* 分析:看规律
*  1,任意一行的第一个数跟最后一个数都为1
*  2, 从第三行开始,每一行数据是它上一行的前一列和它上一行的本列只和
*  
*  步骤:1.首先定义一个二位数组,行数为n,列数也为n。(n为键盘录入)
*      2、给这个二维数组任意一行第一列跟最后一列为1;
*      3,按照规律给其它值赋值
*       从第三行开始,一行数据是它上一行的前一列和它上一行的本列只和
*      4.遍历这个二位数组
* */
package test;

import java.util.Scanner;

public class ArrayTest {

        public static void main(String[] args) {
                Scanner s = new Scanner(System.in);
                System.out.println("请输入一个数字");
                int n = s.nextInt();
                int[][] is = new int[n][n];// 定义二数组
                for (int x = 0; x < is.length; x++) {
                        is[x][0] = 1;// 任意一行第一列
                        is[x][x] = 1;// 任意一行最后一列
                }
                for (int x = 2; x < is.length; x++) {
                        for (int y = 1; y <= x; y++) {
                                is[x][y] = is[x - 1][y - 1] + is[x - 1][y];
                        }
                }
                System.out.println("------------");
               
                // 遍历这个二位数组
                for (int x = 0; x < is.length; x++) {
                        for (int y = 0; y <= x; y++) {
                                System.out.print(is[x][y] + "\t");
                        }
                        System.out.println();
                }
               

        }

}

1 个回复

倒序浏览
我是想进来看下的,没大神回答呢...
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马