m0_70667089
2022-05-27 22:47
采纳率: 40%
浏览 25

C语言 杨辉三角打印 结果错

结果不对啊
编程打印具有如下形式的杨辉三角形,其中输出数据的行数n从键盘输入,并且n<=10。
程序运行结果示例1:
Input n (n<=10):
5↙
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1

程序运行结果示例2:
Input n (n<=10):
7↙
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

#include <stdio.h>
int Fun(int x);
main()
{
int x,a,r,j,m,n;
printf("Input n (n<=10):\n");
scanf("%d", &x);
for(r=1;r<=x;r++)
{
for(j=1;j<=r;j++)
{
n = r - 1, m = j - 1;
a = (float)Fun(n) / (float)Fun(m) * (float)Fun(n - m);
if(j == r)
printf("%4d\n", a);
else
printf("%4d", a);
}
}
}
int Fun(int x)
{
int sum=1,i=0;
if(x==0)
return 1;
for(i;i<=x;i++)
{
sum = sum * i;
}
return sum;
}

1条回答 默认 最新

相关推荐 更多相似问题