首页 >后端开发 >C++ >如何使用C语言以Pascal三角形的形式打印整数?

如何使用C语言以Pascal三角形的形式打印整数?

WBOY
WBOY转载
2023-08-28 23:53:041361浏览

Pascal的三角形是以三角形的形式表示整数的一种方法。其中一个著名的表示方法是使用二项式方程。我们可以使用组合和阶乘来实现这一点。

构建Pascal三角形

三角形外的所有值都被视为零(0)。第一行是0 1 0,而只有1在Pascal的三角形中占据一个空间,0是看不见的。第二行是通过添加(0+1)和(1+0)得到的。输出被夹在两个零之间。这个过程一直持续到达到所需的级别为止。

从编程的角度来看,Pascal三角形被定义为通过在前面的行中添加相邻元素构建的数组。

如何使用C语言以Pascal三角形的形式打印整数?

程序1

在这个程序中,我们将以数组形式打印Pascal三角形中的整数 -

 在线演示

#include <stdio.h>
int fact(int);
int main(){
   int i,rows,j;
   printf("enter no of rows :");
   scanf("%d",&rows);
   for (i = 0; i < rows; i++){
      for (j = 0; j <= (rows- i - 2); j++)
         printf(" ");
      for (j = 0 ; j <= i; j++)
         printf("%d ",fact(i)/(fact(j)*fact(i-j)));
      printf("</p><p>");
   }
   return 0;
}
int fact(int n){
   int a;
   int sum = 1;
   for (a = 1; a <= n; a++)
      sum = sum*a;
   return sum;
}

输出

Enter no of rows :5
      1
     1 1
    1 2 1
   1 3 3 1
  1 4 6 4 1

程序2

在这里,我们将看到以帕斯卡三角形的形式打印整数,而不使用数组

 实时演示

#include<stdio.h>
int main(){
   int num,row,i;
   printf("Enter the number of rows: ");
   scanf("%d",&num);
   for(row=1; row<=num; row++){
      int a=1;
      for(i=1; i<=row; i++){
         printf("%d ",a);
         a = a * (row-i)/i;
      }
      printf("</p><p>");
   }
   return 0;
}

输出

Enter the number of rows: 6
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1

以上是如何使用C语言以Pascal三角形的形式打印整数?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除