java使用一维数组输出杨辉三角形

本文介绍了一种使用Java编程语言来生成杨辉三角形的方法。通过简单的循环和数组操作,该程序能够输出前10行的杨辉三角形。文章包含完整的代码示例,并解释了每一部分的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:打印出杨辉三角形的前十行,杨辉三角形前几行如下排列:

1 1 
1 2 1 
1 3 3 1 
1 4 6 4 1 
1 5 10 10 5 1 
java代码实现:

public class YangHui {
	public static void main(String[] args) {
		int[] uprowData = new int[10];// uprowData用于保留上一行的数据
		//i表示当前打印的行数
		for (int i = 1; i <= 10; i++)
			// j表示当前打印行的列数
			for (int j = 0; j < i; j++) {
				//当列数为第一列时
				if (j == 0) {
					//当前行数为第一行
					if (i == 1) {
						System.out.println("1 ");
					} else {
						System.out.format("%-5s", "1");
					}
					//保留当前行第一个数据1
					uprowData[0] = 1;
					continue;
				}
				//当列数为最后一列时
				if (j == i - 1) {
					//最后一列打印字符1
					System.out.println("1 ");
					
					//数组右移一位
					for (int k = j - 1; k > 0; k--) {
						
						uprowData[k] = uprowData[k - 1];
					}
					//第一列和最后一列的值均为1
					uprowData[0] = uprowData[j] = 1;
					break;
				}
				
				System.out.format("%-5s", uprowData[j - 1] + uprowData[j]);
				uprowData[j - 1] = uprowData[j - 1] + uprowData[j];
		}
	}
}

输入:

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 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值