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

上图是杨辉三角的排列

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

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

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

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

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

基于以下的三个规律:

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

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

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

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

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

分析某两行:

第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 ]

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

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

输出结果:

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

比如说,我们总共打印7行,

那么第1行有6个空格,第2行有5个空格......第7行有0个空格

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

最终结果:

Over.  谢谢观看哟~

杨辉三角(C语言实现)相关推荐

  1. 杨辉三角的c语言代码,杨辉三角C语言代码

    杨辉三角C语言代码 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 的三角形,其实质是二项式(a+b)的n次方展开后各项的系数排成的三角形,它的特点是左右两边全是1,从第二行起,中间的每一 ...

  2. 数据结构c语言程序杨辉三角,杨辉三角 --- C语言程序

    杨辉三角 ---  C语言程序 1.前言 最近在逛博客的时候发现一个特别有意思的三角形  然后便编写了下来.   它呢就是杨辉三角,也作为我的首篇博客吧 2.旅程开始 此处为网上所找到的公式以及各种概 ...

  3. 杨辉三角 C语言实现【一维数组】

    杨辉三角 C语言[一维数组] 说明 写<C语言程序设计>作业的时候想到的一个算法,只用一维数组就可以实现杨辉三角的输出(不过肯定没用存储的功能了),自己感觉挺妙的,在答案和其他地方也没看到 ...

  4. 等腰杨辉三角C语言实现

    等腰杨辉三角C语言实现 #include<stdio.h> int main() {int num[10][10];int i,j;for(i=0;i<10;i++){num[i][ ...

  5. 蓝桥杯 基础练习(六)杨辉三角 C语言

    杨辉三角 C语言 问题描述 杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数. 它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加. 下面给出了杨辉三角形的前4行 ...

  6. C语言课程设计报告输出杨辉三角,C语言学习:在屏幕上输出杨辉三角

    杨辉三角的规律是:它的两条斜边都是由数字1组成的,而其余的数则是等于它肩上的两个数之和. 代码如下: #include #include int main() { int i,j,k,arr[10][ ...

  7. 杨辉三角 c语言 二维数组

    杨辉三角的规律 c语言实现 思路:从第三行起,就要开始计算第n行的第二列到第n-1列的元素--其中每一个元素的值都是:前一行前一列元素+前一行该列元素 int main() {int arr[10][ ...

  8. 杨辉三角c语言程序for循环,如何用C语言循环输出杨辉三角?

    #include #define N 14 void main() { int i, j, k, n=0, a[N][N];  /*定义二维数组a[14][14]*/ while(n<=0||n ...

  9. c语言二维函数杨辉三角,C语言编写杨辉三角(二维数组方法)

    C语言实现杨辉三角(二维数组) 杨辉三角是什么 杨辉三角,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的<详解九章算法>一书中出现.在欧洲,帕斯卡(1623--- ...

  10. 杨辉三角c语言编程报告,C语言打印杨辉三角示例汇总

    杨辉三角是我们从初中就知道的,现在,让我们用C语言将它在计算机上显示出来. 在初中,我们就知道,杨辉三角的两个腰边的数都是1,其它位置的数都是上顶上两个数之和.这就是我们用C语言写杨辉三角的关键之一. ...

最新文章

  1. js字符串转化为方法调用
  2. hibernate的HQL查询语言总结
  3. php data类型转换,【原】超简单类型转换(DataTable
  4. 为什么 SAP Spartacus 不手动导入 UserAccountModule,就看不到 LoginForm?
  5. 成为顶尖架构师必须要面对的面试题
  6. 【嵌入式实验】《嵌入式数据库 sqlite 移植及使用》
  7. 在Vue项目中添加vue router
  8. php不使用第三个参数交换两个变量的值,交换两个变量的值,不使用第三个变量。即a=3,b=5,交换之后a=5,b=3; 有两种解法, 一种用算术算法,...
  9. 浙江大学计算机程序设计能力考试(PAT)简介
  10. SpringBoot上传文件类型检测
  11. DoNotRetryIOException: Compression algorithm 'lzo' previously failed test
  12. 2020安徽省程序设计省赛知识点
  13. 电磁场与电磁波-2-泊松方程、拉普拉斯方程的推导
  14. WorkBench简介
  15. 基于C语言的8深度灰度BMP文件读写
  16. 城市之眼视觉计算技术
  17. PS快速将白底图片变为透明图片的解决办法
  18. android11.0 Launcher3 高端定制之抽屉列表固定APP显示位置
  19. MCU-CPU-GPU-APU系列
  20. 软件测试基础面试常问问题(三)

热门文章

  1. 那些年被欺骗的感情---分布式实现限流操作(上)
  2. 音频和视频的基础知识
  3. yota3墨水屏设置_YOTA3墨水屏“直通”技术取代旧“投射”功能,体验全面升级...
  4. 程序猿如何保护眼睛方法.
  5. 机器学习性能评估——PR曲线与ROC曲线
  6. 在快乐男声歌唱比赛中,有6位评委给选手打分,分数在0-10分,选手王杰表现的不过,请输入6位评委的打分,输出6位评委的分数
  7. 英语计算机单词mp3,[听单词] 计算机专业英语词汇音频51,计算机英语单词MP3
  8. 提升STEAM教师能力素养提升路径
  9. 相亲软件的心灵测试原理,相亲成功率心理测试
  10. 支付宝是用计算机编程做的吗,从支付宝晒账单活动我们能学习哪些营销方法