结果是输出15。分析:1、函数f中有两个变量,一个是静态整型变量i,一个是普通整型变量s。需要注意静态变量i的值在退出函数f后并不消失,下一次再进入f函数后,上一次的喔值仍然存在!也就是说static int i=0;这一句只在第一次调用f函数时被执行,以后再调用f函数时,这一句会被越过去。后面就是两句计算和赋值,最后返回s的值。2、再看主函数main,它定义两个变量i和a,也要注意此i与函数f中的i是两个不同的变量,只是使用了相同的代号i,但因为它们分别出现在两个函数中,这是允许的,不会冲突。3、接下来是一个循环,循环变量i从0到4共执行5次。循环体只有一句a+=f();。也就是共调用5次f函数,每一次把返回值加到变量a中。4、第一次调用f,声明i=0、s=1,s=i+s=0+1=1,i++后i=1,返回s值1。主函数a=a+返回的1=0+1=1。5、第二次调用f,保留上一次的i=1,重新声明s=1,s=i+s=1+1=2,i++后i=2,返回s值2。主函数a=a+返回的2=1+2=3。6、第三次调用f,保留上一次的i=2,重新声明s=1,s=i+s=2+1=3,i++后i=3,返回s值3。主函数a=a+返回的3=3+3=6。7、第四次调用f,保留上一次的i=3,重新声明s=1,s=i+s=3+1=4,i++后i=4,返回s值4。主函数a=a+返回的4=6+4=10。8、第五次调用f,保留上一次的i=4,重新声明s=1,s=i+s=4+1=5,i++后i=4,返回s值5。主函数a=a+返回的3=10+5=15。9、循环结束,输出a的值15。分析完毕。