//首先得定义一个函数能够返回特定位上的数字
int bitValue(int num,int bit)
{
int tmp=1;
int i;
for(i=1;i<bit;i++)
tmp=tmp*10;
//如果返回第一位上的数
if(bit==1)
return num%10;
//否则使用简单的递归方法返回任意位上数字
else {
int res=num/tmp;
return bitValue(res,1);
}
}
//寻找一个数的位数
int findBit(int x)
{
int bit=10;
int i=1;
while(x/bit!=0) {
bit=bit*10;
i++;
}
return i;
}原文:http://my.oschina.net/zzw922cn/blog/419342