浮点数 - 错误的输出
Floating point number - wrong output
我必须使用某些变量来进行一些计算,我面临的问题是最终结果不正确,我偶然发现了以下问题。
我发现,当我将以下行分配给浮点数或双精度变量时,它们应该包含浮点数:
float a=4/3;
double b=4/3;
cout<< a << b;
我得到的输出是:1 和 1,这是为什么?我认为由于浮点数和双精度意味着保存浮点变量,他们会计算 4 除以 3 并给我某种输出,例如:1,33 - 但事实并非如此。
我如何使用它们来构建保存 2 个数字除法结果的变量,因为我没有足够的时间自己进行任何计算;)
非常感谢所有安维尔!
干杯最大
这是因为您正在划分整数。必须将数字强制转换为浮点精度。
float a=4.0f/3;
double b=4.0f/3;
cout<< a << b;
相关文章:
- 输出错误,问题是找到总和5000位数字cpp
- 使用复制构造函数的程序输出错误
- 异或字符串加密/解密输出错误
- 在linux上使用g++输出错误,在windows上更正
- 使用递归函数 (c++) 将长字符串转换为整数时输出错误
- ECDSA 密钥对生成输出错误
- fscanf() 输出错误的值
- 输入 1024 后十进制到二进制转换的输出错误?
- 输出错误命令的条件语句
- cuSparse (cusparseDcsrgemm) 中的矩阵乘法输出错误的结果
- 为什么 du -sh 输出错误大小的内存映射文件
- VS2017 的输出错误,但 mingw 有效
- 如何使FFMPEG C 代码不输出错误消息
- 乘以时输出错误.这是我编译器中的错误吗?C
- 输出错误:两个不同编译器上的不同输出:Prime Cryptarithm USACO
- 为什么输出错误崩溃
- C++输入/输出错误
- 尝试用 c++ 制作一个简单的加法器.编译成功,但输出错误
- 当我使用此合并排序代码运行时,输出错误
- 递归功能输出错误的值