用C语言编写杨辉三角
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用C语言编写杨辉三角相关的知识,希望对你有一定的参考价值。
今天给大家带来用C语言在屏幕上输出杨辉三角
杨辉三角:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
思路:主要用到循环和数组的知识,今天就以for循环为例,给大家输出10行的杨辉三角。我们需要定义一个二维数组(a[][]),我们知道数组是从零开始的,所以第一行第一个是a[0][0],通过观察我们发现:第一列所有的数字都是1,即就是a[i][0]=1,i表示任何数字。我们还可以看出,当行数和列数相等时,该位的数字也为1,即就是a[i][i]=1,杨辉三角中间的数字规律是:从第三行开始,一个数的大小等于它正上方的那个数和那个数前一个数之和。即就是a[m][n]=a[m-1][n]+a[m-1][n-1]。通过这些我们可以将程序写出来:
#include <stdio.h> int main() { int a[10][10]; //定义了10*10的数组 int i=0,j=0; for(i=0;i<10;i++) //将第一列所有的数字和行数列数相等的位置的数字都赋为1 { a[i][0]=a[i][i]=1; } for(i=2;i<10;i++) //将剩余位置的数字赋值 { for(j=1;j<i;j++) { a[i][j]=a[i-1][j-1]+a[i-1][j]; } } for(i=0;i<10;i++) //将所有位置的数字输出来 { for(j=0;j<=i;j++)printf("%3d ",a[i][j]); printf("\n"); } return 0; }
最终屏幕上输出杨辉三角。
本文出自 “10944002” 博客,请务必保留此出处http://chrisapril.blog.51cto.com/10944002/1740046
以上是关于用C语言编写杨辉三角的主要内容,如果未能解决你的问题,请参考以下文章