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

admin2015-12-25  41

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

选项 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://jikaoti.com/ti/Kii0FFFM
0

最新回复(0)