写一个递归函数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;
}

猜你喜欢

转载自blog.csdn.net/qq_43857558/article/details/84959909