写一个程序来计算帕斯卡三角形中给定位置的值(见图)。计算任何给定位置值的方法是将前一行中位置的左右两个数字相加。例如,要计算第三行中间的数字,需要将1和1相加;三角形的边总是1,因为你只在左上或右上加上这个数字(另一边没有第二个数字)。程序应该提示用户输入一行和一行中的位置。在计算位置值之前,程序应该确保输入是有效的。
#include "stdio.h"
int pasca(int i, int j)
{
if (j == 1 || j == i)
return 1;
else
return pasca(i - 1, j - 1) + pasca(i - 1, j);
}
int main()
{
int i, j, k, n = 5;
for (i = 1; i <= n; i++)
{
for (k = 0; k < n - i; k++)
printf(" ");
for (j = 1; j <= i; j++)
{
printf("%1d ", pasca(i, j));
}
printf("\n");
}
return 0;
}