输出1-100所有偶数之和(用递归做),

#include <stdio.h>
int sum(int a,int s)
{
if(a>=2)

{
s=s+a;

sum(a-2,s);

}
return s;

}

void main(void)
{ int s=0;int c=0;

c= sum(100,s);
printf("%d",c);

}
为什么得到的答案是10呢 请问我这程序哪里错了?错了的地方麻烦各位大侠帮忙改正下,不胜感激1

sum()函数改为如下:

int sum(int a,int s)
{
if(a>=2)

{
s=s+a;

return sum(a-2,s);/*注意这里*/

}
return s;

}
温馨提示:答案为网友推荐,仅供参考
相似回答