1. 程式人生 > >用遞迴的方法把一個無符號整數的每一位數字單獨寫出來,並且計算出每一位加起來的和。

用遞迴的方法把一個無符號整數的每一位數字單獨寫出來,並且計算出每一位加起來的和。

這個題的具體含義是什麼呢?

例如:

給出一個無符號整數: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;
}

程式碼的執行 結果為: