问题 单项选择题

以下程序的输出结果是________。 main() { int k=4,m=1,p;p=func(k,m);printf("%d,",p);p=func(k,m);printf("%d\n",p); } func(int a,int B) { static int m=0,i=2;i+=m+1;m=i+a+b;return(m); }

A.8,17

B.8,16

C.8,20

D.8,8

答案

参考答案:A

解析:[评析] 将k和m的值带入函数func中,第—次调用完func()后,其中m和i的值要保留,并在第二次调用时使用,这是因为两者都是局部静态变量。所以最后的结果是8和17。

单项选择题 A1/A2型题
判断题