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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 西安-学工部   /  2016-5-3 11:05  /  5788 人查看  /  24 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

都是大神啊
回复 使用道具 举报
通过率多少
回复 使用道具 举报
import java.util.Scanner;

/*
* 需求:打印杨辉三角形(行数可以键盘录入)
       
        1
        1 1       
        1 2 1
        1 3 3 1
        1 4 6 4 1
        1 5 10 10 5 1
       
        分析:每一行的第一个和最后一个元素为1
        从第三行开始,每一行第二个元素等于上一行的本列和前一列元素之和

*/

public class ArrayTest3 {
        public static void main(String[] args) {

                // 1.创建键盘录入对象
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入杨辉三角的行数");
                int n = sc.nextInt();
                // 2.定义一个二维数组
                int[][] arr = new int[n][n];
                // 3.为数组的每一行第一个和最后一个元素辅助
                for (int x = 0; x < arr.length; x++) {
                        arr[x][0] = 1;
                        arr[x][x] = 1;
                }
                // 4.为数组的其他元素辅助
                for (int i = 2; i < arr.length; i++) {
                        for (int j = 1; j <= i; j++) {
                                arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j];
                        }
                }
                // 5.遍历数组
                for (int i = 0; i < arr.length; i++) {
                        for (int j = 0; j <= i; j++) {
                                System.out.print(arr[i][j]);
                        }
                        System.out.println();
                }
        }
}
回复 使用道具 举报

选择了黑马就是选择了精英
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 加入黑马