这个题的具体含义是什么呢?
例如:
给出一个无符号整数:1234 一千两百三十四;
然后变成:1 2 3 4;
再把它们加起来:10;
所以很简单的一道题,但是我们要用递归的思想写出来;
所以代码如下:
#include<stdio.h>
#include<assert.h>
int add_recursion(int input)
{
int n = 0;
if(input<10)
{
return input;
}
n = input % 10;
return n+(add_recursion(input/10));
}
void add_recursion1(int input)
{
if(input>9)
{
add_recursion1(input/10);
}
printf("%d ",input%10);
}
int main()
{
int result = 0;
int input = 0;
printf("please input number:\n");
scanf("%d",&input);
result = add_recursion(input);
add_recursion1(input);
printf("\n");
printf("%d",result);
return 0;
}代码的运行 结果为:
本文介绍了一个简单的递归算法实例:将一个无符号整数的每一位数字相加,并通过递归方式实现。文章提供了完整的 C 语言代码示例,并展示了如何将一个整数拆分成各位数字并计算总和。
236

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



