浮点变量不存储浮点值
the float variable doesn't store a floating value
struct score
{
int math;
int science;
int english;
int history;
int mapeh;
int tle;
int filipino;
};
struct info
{
string firstName;
string lastName;
score grades;
float average;
int studentnum;
int rank;
bool remark;
};
这是我的代码
存储在主题中的值为:
85 87 89 90 94 92 95
分别vector<info> stud;
for( int i=0; i<stud.size(); i++)
{
stud[i].average= (stud[i].grades.math
+stud[i].grades.science
+stud[i].grades.english
+stud[i].grades.history
+stud[i].grades.mapeh
+stud[i].grades.tle
+stud[i].grades.filipino)/7;
}
存储在stud[i]中的值。平均值应该是90.28,但实际上只有90。
我错过了什么?我试过使用调试器,它显示了我90(没有小数)
使用setprecision只会显示90.00而不是90.28
我也试过改变数据类型的主题浮动,它没有工作。
谢谢。
试着改成:
stud[i].average= (stud[i].grades.math
+stud[i].grades.science
+stud[i].grades.english
+stud[i].grades.history
+stud[i].grades.mapeh
+stud[i].grades.tle
+stud[i].grades.filipino)/7.0;
(int)/(float)
会给你一个(float)
的结果
相关文章:
- 算术运算的结果类似于:C浮点变量中的1/3
- 为什么双精度引用值在分配给C++中的浮点变量时不会更改
- 是否可以保证浮点变量的副本将按位等效于原始副本?
- 直接为浮点变量分配十六进制整数与通过指针转换分配之间的区别
- 为什么将浮点变量与另一个浮点变量的缩减为int给出了完全不同的答案
- 如何线性化两个浮点变量的乘积
- 在不同翻译单元中具有静态存储持续时间的依赖非局部常量浮点变量的常量初始化
- 比较 C++ 中的两个浮点变量
- 我创建了一个将雷亚尔转换为美元的程序,但浮点变量不正确
- 浮点变量不存储十进制
- 在 c++ 中,浮点变量除以整数变量时的结果类型
- 在C 中声明一个八倍精度浮点变量
- 如何在C++的共享内存中存储浮点向量的向量
- 有符号浮点变量转换为无符号DWORD
- 比较浮点变量
- 浮点变量变为无穷大
- 在C++中对浮点变量执行算术时,是否始终需要使用浮点数文字
- 当两个整数相乘并将结果存储在浮点变量中时,结果是否可以流动
- 静态浮点变量仅存储分配的最高值;需要它来存储最新的
- 浮点变量不存储浮点值