程序填空题:使用静态变量求阶乘表
输入正整数n,输出1!~n!的值。要求定义并调用含静态变量的函数fact_s(n)计算n!,其中n的类型是int,函数类型是double。
```c++
#include
double fact_s(int n);
int main(void)
{
int i, n;
scanf("%d", &n);
for(i = 1; i <= n; i++){
printf("%3d! = %.0f\n", i, fact_s(i));
}
return 0;
}
double fact_s(int n)
{
@@[static double f = 1;](1)
f = @@[f * n](1);
return @@[f ](1);
}
```
答案:
第1空:static double f = 1;
第2空:f * n
第3空:f
```c++
#include
double fact_s(int n);
int main(void)
{
int i, n;
scanf("%d", &n);
for(i = 1; i <= n; i++){
printf("%3d! = %.0f\n", i, fact_s(i));
}
return 0;
}
double fact_s(int n)
{
@@[static double f = 1;](1)
f = @@[f * n](1);
return @@[f ](1);
}
```
答案:
第1空:static double f = 1;
第2空:f * n
第3空:f