如何在 C# 中使用递归查找数字的位数之和?

csharpprogrammingserver side programming更新于 2025/5/26 9:52:17

要使用递归获取位数之和,请在 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

相关文章