#include <stdio.h>
int b=2;
int fun(int *k)
{
b=*k+b; return (b);
}
main()
{ int a[10]={1,2,3,4,5,6,7,8},i;
for(i=2;i<4;i++)
{
b=fun(&a[i])+b;
printf("%d ",b);}
printf("\n");
}
程序中子函数fun(int *k)的作用是给静态全局变量加上形参*k的值。
第一次for循环执行时,fun(&a[2])的返回值为5,所以5+5=10,因而输出结果为10,
第二次for循环执行时,fun(&a[3])的返回值为14,所以14+14=28