#include<stdio.h>
int ZT(int n)
{
static int x,y=1;
x=2*y+2;
y=x;
while(n!=0)
{
ZT(n-1);
}
return x;
}
int main()
{
int s;
s=ZT(10);
printf("%d",s);
return 0;
}
while(n!=0)
{
ZT(n-1);
}
改为
if(n!=0)
{
ZT(n-1);
}
否则你也没有n--的代码,会陷入无限循环里面
将ZT(n-1);改为ZT(--n); 原因是,你在while循环时,n的值根本没有改变过,所以会死循环!