您好,这是我用于计算帕斯卡三角形的代码,但它运行错误:已停止工作...为什么?
我认为它的错误在于 paskal 函数
#include <stdio.h>
long paskal(int,int);
int main (void)
{
int n = 0 ;
int m = 0 ;
int k = 0 ;
scanf("%d" , &n);
for(k = 1 ; n >= k ; )
{
for( m = 1 ; k >= m ; m++ )
{
long f = paskal(k , m ) ;
printf("%ld" , f);
}
printf("\n");
k++;
}
return 0;
}
long paskal( int n , int i )
{
if(n == 1 && i == 1 )
return 1 ;
else
return paskal(n-1,i) + paskal(n-1,i-1);
}
限制条件不正确。
设置限制条件的正确方法是
if(n == 1 || i == 1 )
return 1 ;
else
....
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)