![]() |
#2
pascale2008-11-13 17:26
|

#include <iostream>
using namespace std;
void sfloat(float x,int *intp,float *frac)
{*intp=int(x);
*frac=x-*intp;
}
void main()
{int i,n;
float x,f;
cout<<"enter 3 float point numbers:"<<endl;
for(i=0;i<3;i++)
{cin>>x;
sfloat(x,&n,&f);
cout<<"integer part="<<n<<" fraction part="<<f<<endl;
}}
using namespace std;
void sfloat(float x,int *intp,float *frac)
{*intp=int(x);
*frac=x-*intp;
}
void main()
{int i,n;
float x,f;
cout<<"enter 3 float point numbers:"<<endl;
for(i=0;i<3;i++)
{cin>>x;
sfloat(x,&n,&f);
cout<<"integer part="<<n<<" fraction part="<<f<<endl;
}}
但使用的时候,有些数是正常的,但我输入56.3、56.2、56.1这个3个数时却出现了误差。不知道是什么原因造成的。