编程之美1的个数统计

#include <iostream.h>
#include <MATH.H>
int fun(int N)
{
    int num=0;
    int length=(int)log10(N)+1;
        for (int i=1;i<=length;i++)
        {
            num+=N/(int)pow(10,i)*(int)pow(10,i-1);
            int index=N/(int)pow(10,i-1)%10;
            switch(index)
            {
            case 0:
                num+=0;
                break;
            case 1:
                num=num+N%(int)pow(10,i-1)+1;
                break;
            default:
                num+=(int)pow(10,i-1);
                break;
            }
        }
    return num;
}
void main()
{
    cout<<fun(1111111110)<<endl;

}
原文地址:https://www.cnblogs.com/GoAhead/p/2708791.html