杨辉三角(C语言实现)

简介: 大家好,我是十七,今天分享杨辉三角的简单实现。
+关注继续查看

大家好,我是十七,今天分享杨辉三角的简单实现。


0da89c1f2f6e4ac5b406f69ee87c5cdf.png

上图是杨辉三角的排列


如果我们只关注如何编程,我认为主要有三个规律:


1. 每一行的第一个元素为1

2. 每一行的最后一个元素为1

3. 前一行某两个数相加等于后一行的某一个数值


87abc09742b84e6ba2cccc40a04ac0dd.jpg


我们可以将三角形先如上排序,然后创建一个二维数组arr[ i ][ j ]来实现


基于以下的三个规律:


1. 任一行的第一列元素为1

用C语言实现:把1 赋值给每一行的第一列 arr[ i ][ 0 ] = 1


2. 任一行的最后一个元素为1

用C语言实现:把1 赋值给每一行的最后一列 arr[ i ][ j ] = 1


3. 上面两个数相加等于下面一行的数的值


d6d3b489a1954d7796adee1e6a5eb267.jpg


分析某两行:


第4行第2列 = 第3行第1列 + 第3行第2列


用C语言实现:


arr[ 3 ][ 1 ] = arr[ 2 ][ 0 ] + arr[ 2 ][ 1 ]
arr[ i ][ j ] = arr[ i - 1 ][ j - 1 ] + arr[ i - 1 ][ j ]


所有的两两相加之和都遵循上述公式。


然后将其放进嵌套循环,让行和列跑起来。


3d6f0c0ee6a14c48bef937a78e704f73.png


输出结果:


659484f728f8450e9d226a1689750649.png


最后,由于我们要打印的是三角形形状,所以要先打印空格在每行元素前面。


65cfa9ff91ea470eb56628e8cf5098b9.jpg


比如说,我们总共打印7行,那么第1行有6个空格,第2行有5个空格......第7行有0个空格


(我们可以通过 n 和 i 来控制变量区间)


e92dbac2ebf3496e96d20f45d6c1e0e9.png


最终结果:


e627681151af4142b63925dd96fb88c8.png


a3b10b23a46e40dd9840ddfe6c8420dd.jpg


Over.  谢谢观看哟~


目录
相关文章
|
8月前
|
C语言
C语言实现学生成绩管理系统
本文提供一例C语言实现的命令行学生信息管理系统,供初学者参考。
147 0
|
8月前
|
存储 Linux C语言
生产者消费者模式保姆级教程 (阻塞队列解除耦合性) 一文帮你从C语言版本到C++ 版本, 从理论到实现 (一文足以)
生产者消费者模式保姆级教程 (阻塞队列解除耦合性) 一文帮你从C语言版本到C++ 版本, 从理论到实现 (一文足以)
生产者消费者模式保姆级教程 (阻塞队列解除耦合性) 一文帮你从C语言版本到C++ 版本, 从理论到实现 (一文足以)
|
8月前
|
C语言
造轮子之-C语言实现ArrayList
造轮子之-C语言实现ArrayList
|
8月前
|
存储 C语言
c语言实现扫雷(含循环递归展开)
本笔记通过c语言实现扫雷小游戏(包含递归展开) 游戏实现逻辑位于test.c文件,整个游戏头文件位于game.h,游戏进程的具体操作于game.c中实现。
105 0
c语言实现扫雷(含循环递归展开)
|
8月前
|
C语言
c语言实现三子棋(内含阅读思路,简单易实现)
本文如果按顺序来阅读可能不太好接受,建议阅读顺序为,由test.c的逻辑顺序读下去,遇见具体函数的实现跳转到game.c中来理解
81 0
c语言实现三子棋(内含阅读思路,简单易实现)
|
8月前
|
SQL 关系型数据库 MySQL
C语言连接并实现对MySQL的增删改查
C语言访问数据库并不如Java、Python那般容易。本文介绍C语言连接并实现对MySQL的增删改查的方法。
301 0
|
8月前
|
C语言
c语言实现二进制八进制十进制和十六进制的相互转化
c语言实现二进制八进制十进制和十六进制的相互转化
144 0
|
8月前
|
C语言
c语言实现简单学生管理系统
该学生管理系统的实现是通过分文件的方式来写的,infor.h文件为头文件,源文件infor.c实现源文件test.c中封装函数,建议读者在做较大的系统是分文件来实现,可以提高代码的运行效率。
97 0
|
8月前
|
搜索推荐 C语言
【指针进阶三】实现C语言快排函数qsort&回调函数
【指针进阶三】实现C语言快排函数qsort&回调函数
58 0
【指针进阶三】实现C语言快排函数qsort&回调函数
|
8月前
|
C语言
【让你从0到1学会c语言】字符串函数详解及模拟实现(二)
【让你从0到1学会c语言】字符串函数详解及模拟实现(二)
69 0
【让你从0到1学会c语言】字符串函数详解及模拟实现(二)
相关产品
云迁移中心
推荐文章
更多