以下是使用 C++ 实现的算法:

#include <iostream>
#include <vector>

std::vector<int> countDigits(int n) {
    std::vector<int> count(10, 0); // 初始化一个大小为10的向量,用于计数0-9的出现次数
    for (int i = 1; i <= n; i++) {
        int num = i;
        while (num > 0) {
            int digit = num % 10;
            count[digit]++;
            num /= 10;
        }
    }
    return count;
}

int main() {
    int n;
    std::cout << '请输入书的总页码n: ';
    std::cin >> n;
    
    std::vector<int> digitCount = countDigits(n);

    std::cout << '书的全部页码分别用到的数字0-9的次数为:' << std::endl;
    for (int i = 0; i < 10; i++) {
        std::cout << i << ': ' << digitCount[i] << std::endl;
    }
    
    return 0;
}

输入书的总页码n后,程序将计算书的全部页码分别用到数字0-9的次数,并输出结果。

希望对你有所帮助!

C++ 算法实现书籍页码数字统计 - 计算 0-9 的出现次数

原文地址: https://www.cveoy.top/t/topic/hwKI 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录