天天看點

寫一個遞歸函數DigitSum(n),輸入一個非負整數,傳回他組成它的數字之和

寫一個遞歸函數DigitSum(n),輸入一個非負整數,傳回他組成它的數字之和

思路分析:遞歸函數的遞推關系:sum%10+DigitSum(sum\10);

​ 出口:sum為個位數;

寫一個遞歸函數DigitSum(n),輸入一個非負整數,傳回他組成它的數字之和

完整程式:

#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;
}
           
寫一個遞歸函數DigitSum(n),輸入一個非負整數,傳回他組成它的數字之和