//递归
private static double wages1(int n)
{
if (n <= 0)
{
return 0
}
else if (n == 1)
{
return 1500*12
}
else
{
return wages1(n-1) * 1.1
}
}
//递推
private static double wages2(int n)
{
if (n <= 0)
{
return 0
}
double wages = 1500 * 12
for (int i = 1i <n i++)
{
wages *= 1.1
}
return wages
}
递归是吧,这样就可以了 #include "stdio.h" static int k=0 void F(int a) { if (a==1) return k++ if(a%2==1) a=a*3+1 else a=a/2 printf("%d\n",a) F(a) } void main() { int a=0 printf("input your number\n") scanf("%d",&a) F(a) printf("the function totally calculated %d times",k) }