c语言,读程序写结果,请问输出结果是什么?为什么是这样?求解第二个的输出

2025-04-04 12:41:54
推荐回答(3个)
回答1:

程序输出是9和19,两次调用func()结果不同的原因是因为func()里面的变量M和n是局部静态变量,静态变量,也就是说你第一次调用func()时改变了M和n的值,静态变量会把这个值保留到下一次调用这个函数时保留m和n原来的值,具体情况请百度c/c++static静态变量,根本原因还是你没有认真看书

回答2:

9 19吧,因为func函数里面的m,n是静态变量

回答3:

9 9。因为k,m是局部变量,不会在main外改变值