读书人

,这段程序那里写的不对

发布时间: 2012-03-02 14:40:29 作者: rapoo

求助,这段程序那里写的不对
要求用函数递归做求2的1次方+2的2次方+...+2的10次方
#include <iostream.h>
int chengfang(int a,int m)
{
int i;
if(m> 10)
return 0;
else
{
for(i=1;i <=m;i++)
a=a*i;
}
return (a+chengfang(a,m+1));
}
void main()
{
int s;
s=chengfang(2,1);
cout < <s;
}

[解决办法]
帮你改了下,自己看看:
#include <iostream.h>
int chengfang(int a,int m)
{
int i,s=1;
if(m> 10)
return 0;
else if(m==0)
return 1;

else
{
for(i=1;i <=m;i++)
s=s*a;
}
return (s+chengfang(a,m-1));
}
void main()
{
int sum;
sum=chengfang(2,5);
cout < <sum < <endl;
}

读书人网 >C++

热点推荐