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

admin2020-05-19  38

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

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

答案A

解析 func()有一个静态变量num,静态变量的初始化只进行一次,其值在程序运行过程中一直存在。调用func(3)时num被初始化为1,语句"num += n;"计算得num值为4,输出结果为4;调用func(4)时num为上一次计算的结果4,再次计算num=8,输出结果为8,。答案选A。
转载请注明原文地址:https://kaotiyun.com/show/xcCp777K
0

相关试题推荐
随机试题
最新回复(0)