c++ - 计算特定数字的递归函数

标签 c++ function recursion

我需要创建一个递归函数,根据用户输入的数字计算 26

例如,如果用户输入 26827,则计数为 3

它适用于某些数字,但不适用于某些数字。有人可以修改我的函数,确保它是递归的,并使用我使用过的非常基本的 C++ 语言。谢谢你! (我相信返回类型有问题。)

int count(int n) {
    static int count = 0; 
    if (n == 2 || n == 6) count++;
    if ((n % 10 == 2) || (n % 10 == 6)) {
        count++; 
        count(num / 10);
    }
    else return count;  
}

最佳答案

一个有趣的类轮。

int f(int n) {
  return n == 0 ? 0 : (n%10==2 || n%10==6) + f(n/10);
}

关于c++ - 计算特定数字的递归函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53353944/

相关文章:

c++ - 如何使用 SIMD 比较两个 char vector 并将结果存储为 float ?

python - 如何在没有所需参数的情况下调用函数?

SQL标量函数,如何不使用select语句

algorithm - 查找可能的替换列表

c++ - 不能对 const 对象使用 dynamic_cast

c++ - 程序部署失败

c++ - 声明一个对象数组 : instantiates them

c - 无法在c函数中使用int *的值

javascript - 回调函数中的递归

c++ - 递归检查数字是否为素数