程序及运行结果如图
这里 a 变量由于定义为 float 故截断了一部分,b, c 变量分别表示a的整数与小数部分,由于 float 型有6位有效数字,故 c 向后延伸了一部分,应该加入怎样的代码使其不向后延伸?就是我希望 将 c 的值就固定为0.3457,因为后面还要用到这个 c 来计算其他变量
程序及运行结果如图
这里 a 变量由于定义为 float 故截断了一部分,b, c 变量分别表示a的整数与小数部分,由于 float 型有6位有效数字,故 c 向后延伸了一部分,应该加入怎样的代码使其不向后延伸?就是我希望 将 c 的值就固定为0.3457,因为后面还要用到这个 c 来计算其他变量
用round函数
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
float c = 0.123456789;
c = c * 100 - 12;
cout << round(c * 10000) / 10000.0 << endl;
return 0;
}
0.3457