C++问题高手请进!

来源:百度知道 编辑:UC知道 时间:2024/06/27 11:33:46
#include<iostream.h>
int f2(int,int);
int f1(int a,int b){
int c ;
a+=a;b+=b;
c=f2(a+b,++b);
return c;}
int f2(int a,int b)
{int c;
c=b%2;
return a+c;}
void main()
{int a=3,b=4;
cout<<f1(a,b)<<endl;}的答案怎么等于16???我点算都算得15.

int f1(int a,int b){
int c ;
a+=a;b+=b; // a = 6, b = 8
c=f2(a+b,++b); //a+b = 15, ++b = 9(注意,这里参数是从右到左算的,所以在计算a+b的时候,++b已经执行过了,a+b应该是15)
return c;}

f2(15,9) = 16