C语言利用一维数组编写杨辉三角

C语言利用一维数组编写杨辉三角,第1张

#include <stdio.h>

#define N 10/* 要打印的层数 */

int main(void)

{

int arr[N] /* 用于保存生成的杨辉三角的每一行的值 */

int i, j

arr[0] = 1 /* 杨辉三角的第一层 */

/* 先把第一层打印出来 */

printf("%5d\n", arr[0])

arr[1] = arr [0] = 1//这样写是为了表明算法。

printf("%5d%5d\n", arr[0], arr[1])

/* 不断地求杨辉三角的每一层 */

for (i = 2i <Ni++) /* i代表当前层用到的arr的最大下标 */

{

arr[i] = arr[i-1] /* 把最外边的1外移一位 */

for(j = i-1j>0j--)//每一行的a[0],始终为1,不用计算。

/* 用杨辉三角的性质求出层里里面的每一个数 */

{

/* 杨辉三角的性质就是这句 */

arr[j] = arr[j - 1] + arr[j]

}

/* 求出一行后,马上打印出此行 */

for (j = 0j <= ij++)

{

printf("%5d",arr[j])

}

printf("\n")

}

return 0

}

#include<stdio.h>

void main()

{

int i,j,a[10][10]

clrscr()

for(i=0i<10i++)

{

a[i][0]=a[i][i]=1

for(j=1j<ij++)

a[i][j]=a[i-1][j-1]+a[i-1][j]

}

for(i=0i<10i++)

{

for(j=0j<20-2*ij++)

printf(" ")

for(j=0j<=ij++)

{

printf("%4d",a[i][j])

}

printf("\n")

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11033678.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存