统计一个整数是个几位数字?整数可以是负数,零或者正数.
示例 1:
输入:0
输出:1
示例 2:
输入:123456789
输出:9
示例 3:
输入:-123456789
输出:9
unsigned char GetFigures(int n)
{
int count = 0;
if(n == 0)
{
return 1;//如果n为0,则直接将结果返回为1
}
while(n != 0)
{
n /= 10;//除以10的次数就是该数的位数
//若是统计16进制的位数,则n /= 16
count++;
}
return count;
}
总结:给定一个整数,统计其m进制的位数,只需要在循环体内n /= m,循环的次数即为该进制数的位数。