w=3在程序中充当的成分是什么(语言-c语言)

img

                                                     Q7:16:17
   C语言编译器
                                                     运行           菜单
   自动保存于16:16:05
  #include<stdio.h>
 2 int W=3:
 3 INT MAIN()
 4 3
         int W=5;
         INT FUN(INT):
         printf("%dn",fun(5)*w);
         int fun(int k)
 10
 11          if(k==0                returnw:
 12          else return k*fun(k-1);
 小
  TAB

最后的值为什么是1800

局部变量,局部变量优先级高于全局变量。
第7行,因为在主函数中定义了w,所以使用的是第5行的w;
第11行,在fun函数中没有定义w,所以使用的是全局变量w;