学好编程! 2021-07-28 13:10 采纳率: 96.8%
浏览 37
已结题

答案是8,17 求解析全过程

#include <stdio.h>
func (int a,int b)

static int m=0,i=2;
i+=m+1;
m=i+a+b;
return (m);

int main ( )

int k=4,m=1,p1,p2;

pl=func(k,m) ; p2=func(k,m);
printf(%d,%dn",p1,p2)
;
return 0;

  • 写回答

2条回答 默认 最新

  • 快乐鹦鹉 2021-07-28 13:16
    关注

    总共调用两次func函数
    第一次func(4,1)
    静态变量m=0,i=2
    i+=m+1后,i=3
    m=i+a+b后,m=8
    返回p1 = 8
    第二次func(4,1)
    静态变量m=8,i=3
    i+=m+1后,i=12
    m=i+a+b 后,m=17
    返回p2=17
    最终打印p1,p2分别为8和17

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月25日
  • 已采纳回答 8月17日
  • 创建了问题 7月28日