有以下程序 #include<stdio.h> func(int n) void main() { static int num=1; {func(3);func(4);print

admin2019-08-10  16

问题 有以下程序
    #include<stdio.h>
    func(int n)                  void main()
    { static int num=1;          {func(3);func(4);printf("\n");}
      num=num+n;printf("%d",num);
    }
程序运行后的输出是

选项 A、4  5
B、3  5
C、4  8
D、3  4

答案C

解析 在函数func(int n)中定义了局部静态变量num,其初始值等于1,所以在主函数中执行func(3),输出4,此时静态变量num的值等于4,当退出函数func(3)时,其值不会丢失,所以当在执行func(4)时,输出8。
转载请注明原文地址:https://kaotiyun.com/show/5cRp777K
0

最新回复(0)