// 6-10读入三个浮点数,将整数部分贺小数部分分别输出.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
using namespace std;
//将实数X分成整数部分和小数部分,形参inPart、fracPart是指针
void spiltFloat(float x, int *intPart, float *fracPart) {
*intPart = static_cast<int>(x);//取x的整数部分
*fracPart = x - *intPart;
}
int main()
{
cout<<"Enter 3 float point numbers:" << endl;
for (int i = 0; i < 3; i++)
{
float x, f;
int n;
cin >> x;
spiltFloat(x, &n, &f);//变量地址作为实参
cout<<"Integer Part=" <<n<<" Fraction Part=" <<f<< endl;
}
return 0;
}
一种简单的做法将输入的值转为string,然后以小数点分割成两部分
整数部分是 n=int(x);
小数部分是 f=x-n;
void spiltFloat(float x, int *intPart, float *fracPart) {
*intPart = int(x);
*fracPart = abs(x - *intPart);
}