给定一个简单类型可以存储的正整数,求这个正整数的长度.

普通方法

每次去掉一位,sum加1.

int length(int n)
{
    int sum=0;
    while(n)
    {
        n/=10;
        sum++;
    }
    return sum;
}

递归法

每次去掉一位,递归求剩下的数字的长度.

int length(int n)
{
    if(n==0)
        return 0;
    else
        return length(n/10)+1;
}

公式法

根据数学公式直接计算结果.

int length(double n)
{
    return (int)log10(n)+1;
}

转换法

把数字按照字符串形式输入,用strlen()求出字符串长度(需要包含头文件).