本题要求实现一个用递归计算1+2+3+…+n的和的简单函数。
函数接口定义:
int sum( int n );
该函数对于传入的正整数n返回1+2+3+…+n的和;若n不是正整数则返回0。题目保证输入输出在长整型范围内。建议尝试写成递归函数。
裁判测试程序样例:
#include <stdio.h>
int sum( int n );
int main()
{
int n;
scanf("%d", &n);
printf ("%d\n", sum(n));
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例1:
10
输出样例1:
55
输入样例2:
0
输出样例2:
0
int sum( int n )
{
if ( n <= 0) return 0;
else if ( n == 1) return 1;
return n + sum( n - 1 );
}
本文详细解析了一个使用递归算法计算从1累加到n的和的函数。通过具体的代码示例,展示了如何实现递归求和,并提供了测试样例帮助理解递归函数的工作原理。
3183

被折叠的 条评论
为什么被折叠?



