原题链接:倒杨辉三角形
解题思路:
先吧杨辉三角形装入集合
开始和结尾都是1,yh[i][j] = yh[i-1][j-1] + yh[i-1][j]
难的是遍历格式。
注意事项:
参考代码:
import java.util.Scanner; /** * @BelongsProject Demo * @BelongsPackage 二维数组 * @Author lgb * @CreateTime 2022-06-13 09:48 * @Description TODO * @Version 1.0 * 思路: * 先吧杨辉三角形装入集合 * 开始和结尾都是1,yh[i][j] = yh[i-1][j-1] + yh[i-1][j] */ public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //三角形集合 int[][] yh; while (scanner.hasNext()) { int n = scanner.nextInt(); //初始化 yh = new int[n][n]; for (int i = 0; i < n; i++) { for (int j = 0; j <= i; j++) { //第一个和结尾等于1 if (j == 0 || j == i) { yh[i][j] = 1; } else { yh[i][j] = yh[i - 1][j - 1] + yh[i - 1][j]; } } } //每行开始的空格 String str = ""; //遍历 for (int i = n - 1; i >= 0; i--) { System.out.print(str); for (int j = 0; j <= i; j++) { if (j == 0) { System.out.printf("%3d", yh[i][j]); } else { //后面每个数字占6个空格 System.out.printf("%6d", yh[i][j]); } } str += " "; System.out.println(); } System.out.println(); } scanner.close(); } }
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复