写一个递归函数DigitSum(n),输入一个非负整数,返回他组成它的数字之和

写一个递归函数DigitSum(n),输入一个非负整数,返回他组成它的数字之和

思路分析:递归函数的递推关系:sum%10+DigitSum(sum\10);

​ 出口:sum为个位数;
在这里插入图片描述

完整程序:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<windows.h>
int DigitSum(num){
	if (num < 10){
		return num;
	}return (num % 10 + DigitSum(num / 10));
}
int main(){
	int num;
	printf("请输入一个数\n");
	scanf("%d", &num);
	printf("%d", DigitSum(num));
	system("pause");
	return 0;
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/zyj497863419/article/details/86314268