簡體   English   中英

C#中的模運算符

[英]modulus operator in C#

我們可以使用哪個函數來找到浮點值的模數?

某處可能有一個函數,但以下是等效且足夠簡單的:

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;                

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM