如何在 C# 中使用递归获得数字总和?


要使用递归获得数字总和,请在 C# 中设置一个计算总和的方法。

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

以上方法返回总和,并不断检查,直至输入的数字不为 0。

递归调用返回的是每进行一次递归调用后的数字总和,即 −

return (n % 10 + sum(n / 10));

让我们看看完整的代码 −

示例

 在线演示

using System;
class Demo {
   public static void Main(string[] args) {
      int n, result;
      n = 22;
      Console.WriteLine("Number = {0}", n);
      result = sum(n);
      Console.WriteLine("Sum of digits = {0}", result);
   }
   static int sum(int n) {
      if (n != 0) {
         return (n % 10 + sum(n / 10));
      } else {
         return 0;
      }
   }
}

输出

Number = 22
Sum of digits = 4

更新时间:2020 年 6 月 22 日

479 次浏览

开启你的 职业生涯

完成本课程,获得认证

开始吧
广告