/** * Program Name: pascal.c * Purpose: print pascal triangle on screen * Author: Shiuh-Sheng Yu, Department of Information Management * National ChiNan University * Since: 2004/12/10 */ #include <stdio.h> void pascal(int n) { int i, j; unsigned tri[51][51]; if (n<0 || n>=50) { printf("I can print pascal triangle between 0 and 50.\n"); return; } for (i = 0; i <= n; i++) { tri[i][0] = tri[0][i] = 1; for (j = 1; j <= n - i; j++) { tri[i][j] = tri[i][j-1]+tri[i-1][j]; } } /* print out each line */ for (i = 0; i <= n; i++) { for (j = 0; j < n - i; j++) { printf(" "); } for (j = 0; j <= i; j++) { printf(" %5u", tri[i-j][j]); } printf("\n"); } } int main() { int n; printf("Please input size of Pascal triangle: "); scanf("%d", &n); pascal(n); } ================================================================================================= /** * Program Name: pas2.c * Purpose: print pascal triangle on screen * Author: Shiuh-Sheng Yu, Department of Information Management * National ChiNan University * Since: 2004/12/10 */ #include <stdio.h> int main() { int n, i, j; unsigned tri[51][51]; printf("Please input size of Pascal triangle(0 to 50): "); scanf("%d", &n); if (n<0 || n>50) { printf("I can only print Pascal triangle between 0 and 50.\n"); } else { for (i = 0; i <= n; i++) { for (j = 0; j < n - i; j++) { printf(" "); } for (j = 0; j <= i; j++) { printf(" %5u",tri[i][j] = (j==0 || j==i) ? 1 : tri[i-1][j-1]+tri[i-1][j]); } printf("\n"); } } }