c#中的模数运算符
本文关键字:运算符 | 更新日期: 2023-09-27 17:49:55
我们可以使用哪个函数来求浮点数的模数
可能在某个地方有一个函数,但下面的函数是等效的,并且足够简单:
a - b*(Math.Floor(a/b))
对于a % b
旧C中的math.h
具有fmod
功能。c#会允许你使用它吗?我也不知道。
PS -你确定%
操作符不工作吗?
Float/double的永远不会是精确值,因此%
运算符不能一致地工作。使用decimal
来代替模数运算符在实数上工作
decimal a, b c;
a = 32.3M;
b = 3.23M;
c = a % b; //c should be zero.
编辑
检查MSDN上float和double section类型的避免模数运算符(页面底部)
使用标准模运算符%有问题吗?
double c = a%b;
float x = 5.1F;
float y = 2.3F;
float t = x % y;