以下程序的输出
#include
int fun(int n)
{
static int s = 0;
s = s + n;
return (s);
}
int main()
{
int i = 10, x;
while (i > 0)
{
x = fun(i);
i--;
}
printf ("%d ", x);
return 0;
}
(A) 0
(B) 100
(C) 110
(D) 55答案: (D)
说明:由于s是静态的,因此将i的不同值一一添加。
所以s的最终值为
s = i +(i-1)+(i-2)+…3 + 2 + 1。
s的值为i *(i + 1)/ 2。对于i = 10,s为55。
这个问题的测验
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。