求一个数是几位数的几种方法

第一种:数字分割法

代码如下:

#include 
void main()
{
    int x,b=0;
    scanf("%d",&x);
    while(x>0)
    {
        x=x/10;
        b++;
    }
    printf("%d ",b);
}

第二种:log10法

C语言中只有log和log10两种函数。 

如果想表达log a,b 那么可以使用log(b)/log(a)来解决。

代码如下:

#include
#include
using namespace std;
int main() 
{
    int n;
    cin>>n;
    cout<<(int)(log10(n))+1;
    return 0;
}

 

你可能感兴趣的:(c++)