#include<iostream.h>
int f(int);
int main()
return 0;
{
for(i=0;i<5;i++)
int i;
cout<<f(i)<<" ";
return 0;
}
int f(int i)
{
static int k=1;
for( ;i>0;i--) k+=i;
return k;
}
答案1 2 5 11 21
#include<iostream>
using namespace std;
int f(int);
int main()
{
int i;
for (i = 0; i < 5; i++)
cout << f(i) << " ";
return 0;
}
int f(int i)
{
static int k = 1;
for (; i > 0; i--) k += i;
return k;
}
注意这里的K是静态的,所以每次输出后K的值不会复原
i:0 k=1+0=1
i:1 k=1+(1+0)=2
i:2 k=2+(2+1+0)=5
i:3 k=5+(3+2+1+0)=11
...