//输入的数除以1,10,100……直到小于1时,就算出了整数的位数
#include
using namespace std;
void main()
{
double temp;
cout << "请输入一个数:" << endl;
cin >> temp;
int i=1;
int j=0;
while (temp / i > 1)
{
j++;
i = i * 10;
}
cout << "这个数整数部分有" << j << "位。" << endl;
}
分析下! 几个内部类型中int 才不带小数,所以你可以把浮点数转换为 int 型的,转换后它自然就只存储整数部分了,个人认为应该用强制转换,然后再求长度。。。。。。。。。