如何在 Dev-C++ 5.11 上更正这个基本标准差代码?
Posted
技术标签:
【中文标题】如何在 Dev-C++ 5.11 上更正这个基本标准差代码?【英文标题】:How can I correct this basic standard deviation code on Dev-C++ 5.11? 【发布时间】:2020-12-27 04:48:49 【问题描述】:这是一些示例代码(不要介意数字):
#include<stdio.h>
#include<math.h>
int main()
int student_counter;
float s_deviation;
student_counter = 7;
s_deviation = (1/student_counter)*sqrt(((student_counter*276)-1764)/student_counter-1);
printf("%f ",s_deviation);
return 0;
我得到0.000000
作为输出。如何修复此代码?
【问题讨论】:
【参考方案1】:我不知道您在这里期望什么,但将student_counter
更改为浮动。
float student_counter
的值应该是 student_counter = 7.0
。
实际上你保留了它int
,所以所有的计算都是在 int 中的,它已经去掉了小数部分。这就是为什么你有 0 作为输出。
如果你想保持 int
的逻辑,那么计算应该是浮点数:
s_deviation = (1.0/student_counter)*sqrt(((student_counter*276.0)-1764.0)/student_counter-1.0);
在计算中应该至少有 1 个浮点值才能在 C/C++ 中得到浮点结果。
【讨论】:
以上是关于如何在 Dev-C++ 5.11 上更正这个基本标准差代码?的主要内容,如果未能解决你的问题,请参考以下文章
在 DEV-C++ 5.11(Win32 GUI 模式)中更改我的程序图标
在DEV-C ++ 5.11中更改程序的图标(Win32 GUI模式)