判断一个数为几位数
将数字除以
10
便可以去掉一位,因此可以使用除法来计算数位。更准确地说,可以用下面的循环完成这种工作:
unsigned digits = 1;
while (n /= 10)
digits++;
现在假设知道数字共有
5
位,并要返回前
3
位,则将这个数除以
10
后再除以10
,便可以得到所需的值。每除以
10
次就删除数字的最后一位。 要知道需要删除多少位,只需将总位数减去要获得的位数即可。例如,
要获得
9
位数的前
4
位,需要删除后面的
5
位。可以这样编写代码:
ct = digits - ct;
while (ct--)
{
num = num/10;
}
return num;