课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565
【项目2-杨辉三角】编写程序,打印出以下形式的扬辉三角形。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
可以将杨辉三角形的值放在一个方形矩阵的下半三角中,如果需打印7行杨辉三角形,应该定义等于或大于7X7的方形矩阵,只是矩阵的上半部和其余部分并不使用。杨辉三角形具有如下特点:(1)第0列和对角线上的元素都为1。(2)除第0列和对角线上的元素以外,其它元素的值均为前一行上的同列元素和前一列元素之和。
函数setdata按以上规律给数组元素置数,函数outdata输出杨辉三角形。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
可以将杨辉三角形的值放在一个方形矩阵的下半三角中,如果需打印7行杨辉三角形,应该定义等于或大于7X7的方形矩阵,只是矩阵的上半部和其余部分并不使用。杨辉三角形具有如下特点:(1)第0列和对角线上的元素都为1。(2)除第0列和对角线上的元素以外,其它元素的值均为前一行上的同列元素和前一列元素之和。
函数setdata按以上规律给数组元素置数,函数outdata输出杨辉三角形。
#include <iostream> using namespace std; void setdata(int a[7][7]); void outdata(int a[7][7]); int main() { int a[7][7]={0}; setdata(a); //给数组赋值 outdata(a); //输出数组 return 0; } void setdata(int a[7][7]) { int i,j; for(i=0;i<7;i++) { a[i][0]=1; a[i][i]=1; } for(i=0;i<7;i++) { for(j=1;j<i;j++) a[i][j]=a[i-1][j]+a[i-1][j-1]; } } void outdata(int a[7][7]) { int i,j; for(i=0;i<7;i++) { for(j=0;j<=i;j++) cout<<a[i][j]<<'\t'; cout<<endl; } }