大神看看吧,小弟不胜感激
#include <stdio.h>int mul(int n,int m,int multi);
int main(int argc, char *argv[])
{
int m,n,multi;
multi=0;
scanf("%d %d",&n,&m);
multi=mul(n,m,multi);
printf("%d\n",multi);
return 0;
}
int mul(int n,int m,int multi)
{
if(n%2==0)
{
mul(n/2,2*m,multi);
}
if(n%2==1)
{
if(n==1)
{
multi+=m;
return multi;
}
else
multi+=m;
mul((n-1)/2,2*m,multi);
}
}
这个程序的结果的结果始终是2293524,求大神帮帮小弟吧。。。