以下程序的输出结果是 int f() { static int i=0; int s=1; s+=i; i++; return s; } main() { int i,a=0; for(i=0;i

admin2010-12-10  55

问题 以下程序的输出结果是
int f()
{ static int i=0;
  int s=1;
  s+=i; i++;
  return s; }
main()
{ int i,a=0;
  for(i=0;i<5;i++)a+=f();
  printf("%d\n",a);}

选项 A、20       
B、24       
C、25       
D、15

答案D

解析 函数的静态局部变量在编译时就赋初值,即只赋初值一次,在程序运行时它已有初值,以后每次调用函数时不再重新赋值,而只是保留上次函数调用结束时的值。
转载请注明原文地址:https://kaotiyun.com/show/5TPp777K
0

最新回复(0)