有以下程序 #include func(int n) void main() {static int num=1; {func(3);func(4);printf("\n");} num=num

admin2020-05-19  23

问题 有以下程序
    #include
    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,其初始值等于l,所以在主函数中执行func(3),输出4,此时静态变量num的值等于4,当退出函数func(3)时,其值不会丢失,所以当在执行func(4)时,输出8。
转载请注明原文地址:https://jikaoti.com/ti/ZEG0FFFM
0

最新回复(0)