【c语言】编写程序打印出以下形式的杨辉三角形

杨辉三角形

可以将杨辉三角形的值放在一个方形矩阵的下半三角中,如需打印7行杨辉三角形,应该定义等于或大于7x7的方形矩阵,只是矩阵的上半部分和其余部分并不使用。

杨辉三角形具有以下特点:

(1)第一列和对角线上的元素都为1;

(2)除第一列和对角线上的元素之外,其他的元素的值均为前一行上的同列元素和前一列元素之和。

代码如下

#include <stdio.h>
#define N 10
void setdata(int (*s)[N],int n){
 int i,j;
 for(i=0;i<n;i++)  //第一列和对角线上的元素都置1
	 {
	  s[i][i] = 1; s[i][0]=1;
	 }
    for(i=2;i<n;i++){  //给杨辉三角形其他元素置数
		 for(j=1;j<i;j++){
			 s[i][j]=s[i-1][j-1]+s[i-1][j];
		 }
	 }
}
void outdata(int s[][N],int n){
	int i,j;
	printf("杨辉三角形:\n");//只输出矩阵下半三角
    for(i=0;i<n;i++){
		for(j=0;j<=i;j++){
		printf("%6d",s[i][j]);
		}
		printf("\n");
	}
}
main(){
	int y[N][N],n=7;
	setdata(y,n);//按规律给数组元素置数
	outdata(y,n);//输出杨辉三角形
}

猜你喜欢

转载自blog.csdn.net/lbqlzch/article/details/84766742