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

//写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和,例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19

#include <stdio.h>

int DigitSum( int n )
{
	int i;
	int sum = 0;
	i = n % 10;
	if( n != 0 )
	{
		n = n / 10;
		sum = DigitSum( n ) + i;
	}
	return sum;

}

int main()
{
	printf("%d\n",DigitSum( 111 ));
	printf("%d\n",DigitSum( 123 ));
	printf("%d\n",DigitSum( 44 ));
	return 0;
}

时间: 2024-10-22 13:09:57

【c语言】写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和的相关文章

用c语言实现 写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和

写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和,例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19 #include<stdio.h> int main() { int DigitSum(n); int a; printf("请输入一个数字\n"); scanf("%d",&a); printf("组成它的数字之和为%d\n",DigitSum(a)); return

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

题目要求:写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和,例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19 #include<stdio.h> int DigitSum(int num)//定义DigitSum()函数,返回值为int { if(num<10) return num; else return num%10+DigitSum(num/10); } int main() { int ret = DigitSum(17

写一个递归函数,输入一个非负整数,返回组成它的数字之和。

★写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和. 例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19. #include<stdio.h> #include<stdlib.h> int Digitsum(unsigned int num) { int sum = 0, n = num, m = 0; if (n) { m = n % 10;   //用以求得每一位的数字 n = n / 10;  //用以不断缩小位数直至获

DigitSum(n) 输入一个非负整数,返回组成它的数字之和, 调用DigitSum(1729),返回1+7+2+9,和19

/*写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和, 例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19*/ #include<stdio.h> #include<math.h> int DigitSum(int n) { int static sum = 0; if (n != 0) { sum += n % 10; DigitSum(n / 10); } return sum; } int main(void) { //

剑指Offer(Java版)第四十题:在数组中的两个数字,如果前面一个数字大于后面的数字, 则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。 并将P对1000000007取模的结果输出。 即输出P%1000000007

/*在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出. 即输出P%1000000007 */ import java.util.*; public class Class40 { public int InversePairs(int[] array){ int length = array.length; int P = 0; for(int i = 0; i < lengt

c语言代码编程题汇总:输入一个整数n,输出斐波纳猰数列,采用的是递归算法——源代码

输出斐波纳猰数列,采用的是递归算法 程序代码如下: 1 /* 2 2017年3月5日11:16:02 3 功能:输入一个整数n,输出斐波纳猰数列,采用的是递归算法,源代码 4 */ 5 6 #include "stdio.h" 7 int fun(int n); //fun()函数的函数声明 8 int main (void) 9 { 10 int i, n = 0; 11 12 printf ("请输入一个整数n的数值:\n "); //此时输入的n是表示第几个数

输入一个非负整数,返回组成它的数字之和

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

【C语言】【面试题】【笔试题】写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和

#include<stdio.h> #include<stdlib.h> int sumfun(int num) {     int m = 0;     int sum = 0;     if (num!=0)     {         m = num % 10;         num = num / 10;         sum=sumfun(num)+m;     }     return sum; } int main() {      int num = 1729;

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

#include <stdio.h> #include <stdlib.h> #include <assert.h> typedef unsigned int uint; uint DigitSum(uint n) { assert(n); if (n < 10) { return n; } else { return n % 10 + DigitSum(n / 10); } } int main() { uint number = 0; scanf("