杨辉三角的编程,求最佳解答
杨辉三角的编程,要求用二维数组(但空间尽量少),只用一个一维数组,和不用数组的解答。给50分,主要是希望大家共同参与,相互学习。
#include <stdio.h> int main() { int (*p)[10],*pt,a[10][10]; p=a; for(;p<a+10;p++) { pt = *p; for(;pt<*p+10;pt++) *pt = 0; } //矩阵初始化,全为0 printf("The initial matrix is:\n"); p=a; for(;p<a+10;p++) { pt = *p; for(;pt<*p+10;pt++) printf("%d ",*pt); putchar('\n'); } //矩阵次初始化,第一列全为1 p=a; for(;p<a+10;p++) **p=1; printf("The after matrix is:\n"); p=a; for(;p<a+10;p++) { pt = *p; for(;pt<*p+10;pt++) printf("%d ",*pt); putchar('\n'); } //矩阵杨辉三角化 int i,j; for(i=1;i<10;i++) { for(j=1;j<=i;j++) a[i][j]=a[i-1][j-1]+a[i-1][j]; } printf("The YangHui matrix is:\n"); p=a; for(i=1;p<a+10;p++,i++) { pt = *p; for(;pt<*p+i;pt++) printf("%d ",*pt); putchar('\n'); } }