想实现输入一个浮点数,分离整数部分和小数部分,然后再将小数部分转化为整数,但是发现输入部分浮点数能成功实现,部分不能实现。但是不进行分离都没问题。不知道问题出在哪?请各位指点一下。
问题代码
#include<iostream>
using namespace std;
int main()
{
double a,ax;
int az;
cin>>ax;
az=ax;
ax=ax-az;
cout<<"整数部分:"<<az<<endl<<"小数部分:"<<ax<<endl;
do
{
ax=ax*10;
}while(ax!=int(ax));
cout<<"小数化整:"<<ax;
return 0;
}
运行结果及报错内容
分两次输入两个数据,一次正确,另一次错误(不输出)