本文介绍了如预期浮点数不工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在下面当我给输入作为110 2 1 2 2,总和打印为52和sum3为31.200001了code,而它SHLD已经31.200000
INT的main(){ INT T,N,I,A [2000]中,M,J,F;
scanf函数(%d个,& T公司);
而(T - ){
scanf函数(%d个,&安培; N);
scanf函数(%d个,&安培; F);
对于(i = 0; I< F;我++){
scanf函数(%d个,&安培; A []);
}
scanf函数(%d个,&安培; M);
如果(N!= 0){
INT总和= N *(N + 1)/ 2;
INT SUM2 = 0;
为(J = 0; J< I; J ++){
SUM2 + = A [J]。
}
sum- = SUM2;
的printf(%d个\\ N,总和);
浮sum3;
如果(N%2 == 0)sum3 =(1.0-2.0 * M / N)*总和;
别的sum3 =(1.0-2.0 *米/(N + 1))*总和;
的printf(%F \\ N,sum3);
}
其他的printf(0.0000 \\ n);
}
返回0;
}
解决方案
浮点指南:
这篇关于如预期浮点数不工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!