1. 程式人生 > >寫一個遞迴函式DigitSum(n),輸入一個非負整數,返回組成它的數字之和, 例如,呼叫DigitSum(1729),則應該返回1+7+2+9,它的和是19

寫一個遞迴函式DigitSum(n),輸入一個非負整數,返回組成它的數字之和, 例如,呼叫DigitSum(1729),則應該返回1+7+2+9,它的和是19

#include <stdio.h>
#define _CRT_SECURE_NO_WARNINGS 1
int DigitSum(int i)
{
	int sum = 0;
	int j = 0;
	if (i != 0)
	{
		j = i % 10;
		i = i / 10;
		sum = j + DigitSum(i);
	}
	return sum;
}
int main()
{
	int x;
	printf("請輸入: ");
	scanf_s("%d", &x);
	printf("各位數之和為:%d\n", DigitSum(x));
	system
("pause"); return 0; }