1.txt

来自「本书的页码从自然数1 开始顺序编码直到自然数n。书的页码按照通常的习惯编排」· 文本 代码 · 共 38 行

TXT
38
字号
#include<iostream>
using namespace std;


void  statNum(int sn[10], int n)
{
    int i, c, k, s, pown;

    for(i = 0; i < 10; i++)
        sn[i] = 0;

    for(k=s=0, pown=1; n > 0; k++, n /=10, pown *=10)
    {
        c = n%10;
        for(i=0; i < 10; i++)                 
            sn[i] += c*k*pown/10; 
        for(i=0; i < c; i++)                 
            sn[i] += pown; 
        sn[0] -= pown;
        sn[c] += 1 + s;   

        s += c*pown;
    }
}


void  main(int argc , char *argv[])
{
    int sn[10], i,n;

	cin>>n;
    if(argc > 1)
        n = char(argv[1]);

    statNum(sn, n);
    for(i=0; i < 10; i++)
        cout<<i<<"   "<<sn[i]<<endl; 
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?