[C语言]这道题答案为什么是m=4,k=4,i=5,k=5?能解释其中m.k的变化么?谢谢!!

如题所述

第1个回答  2013-12-16

首先调用fun(i++),因为i=4,所以调用fun(4),此时,i的值也变成了5.

形式参数m=4;k=0.

    m+=k,即m=m+k,此时m=4+0=4;

    k+=m,即k=k+m,此时k=0+4=4;

    打印m=4,k=4,之后k=5;

然后回到主函数,打印i=5,k=5.

注意:i++表示先使用i的值,然后i再自增1.