x是个静态变量,它不会随f函数运行的结束而销毁,f中的a是个局部变量,它会随f函数运行的结束而销毁,当第一次运行f(a)时,x=3,x=x+1,x变为4;a=7,a=a+1,a变为8,主函数里的a还是7;当第二次运行f(a)时,x=4,x=x+1,x变为5;a=7,a=a+1,a变为8,主函数里的a还是7;
static标识x为静态变量,编译时赋值为3不是运行时每次赋值为3.若写为static int x=0;x=3;则每次赋值为三。本题应该为8,4,8,5,