求救~~高手来下~~

来源:百度知道 编辑:UC知道 时间:2024/05/18 20:11:08
C++里面如何求一个数是多少位?例如10000是5位100000是6位这个

可以对这个数求以10为底的对数,得到的对数的整数部分+1就是这个数字的位数。

也可以输出到字符串,求字符串的长度。

也可以不断地除以10,真到商0为止,计算一下除了几次。

可以这样做:
int main()
{
int n=某个数,i=1;
if(n!=0)
{
for(i=1;i<1000;i++)//设最大为1000位
{
if(n>=(10^(i-1))&&n<(10^i)) break;
}
}
printf("该数为%d位数。\n",i);
return 0;
}

楼上说的很对阿,
一直就模,求一次模变量加1,知道模等于小于1未知。

用%10做
自己想想

转成字符串,计算字符串长度~~