'%' 运算符是什么意思?

9
我有以下代码:
int a,b,c;
b=1;
c=36;
a=b%c;

“%” 运算符是什么意思?

5
取模运算,即除法后的余数。 - Mark H
3
请注意,这个运算符存在于几乎所有语言中。 - mathk
1
是的,我知道。但我可以使用“%”运算符进行搜索,而谷歌没有给出任何有用的页面。我不知道它被称为“模数”。 - Polaris
4
@隐身用户:运算符通常不太容易搜索到... - Dirk Vollmar
1
@0xA3:在Google中搜索“C#运算符”,%符号出现在弹出的第一页的第一行。 - Justin Ardini
显示剩余2条评论
11个回答

29

这是 模数运算符

模数运算符(%)计算第一个操作数除以第二个操作数所得的余数。

例如:

class Program
{
    static void Main()
    {
        Console.WriteLine(5 % 2);       // int
        Console.WriteLine(-5 % 2);      // int
        Console.WriteLine(5.0 % 2.2);   // double
        Console.WriteLine(5.0m % 2.2m); // decimal
        Console.WriteLine(-5.2 % 2.0);  // double
    }
}

输出结果如下:

1
-1
0.6
0.6
-1.2

请注意,% 运算符的结果等于 x – (x / y) * y,如果 y 为零,则会抛出 DivideByZeroException 异常。

如果 xy 不是整数,x % y 的计算方法为 x – n * y,其中 n 是小于或等于 x / y 的最大可能整数(更多细节请参见 C# 4.0 规范 中的第 7.8.3 Remainder operator 小节)。

有关详细信息和示例,请查看相应的维基百科文章:

模运算(在维基百科上)


7

% 是许多受 C 启发的语言中的余数运算符。

3 % 2 == 1
789 % 10 = 9

对于负数,情况会有些棘手。例如在Java和C#中,结果与被除数具有相同的符号:

-1 % 2 == -1

在C++中,这是实现定义。

另请参阅

参考资料


6

这就是取模运算符。它将给你一个除法操作的余数。


3

这是取模运算符。也就是说,2 % 2 == 0,4 % 4 % 2 == 0(2和4都可以被2整除,余数为0),5 % 2 == 1(2除5余1)。


2
这是取模运算符,即除法后的余数,例如1 % 36 == 1(0余1)。

1

这是取模运算符,可以找出一个数除以另一个数的余数。

所以在这个例子中,a将会是b除以c的余数。


1

这是取模运算,但你的例子并不是一个好的使用方式。它可以在两个整数相除时给出余数。

例如:a = 7 % 3 将返回1,因为7除以3等于2,余1。


0

这是取模运算符

using System;
class Test
{
    static void Main()
    {

        int a = 2;
        int b = 6;

        int c = 12;
        int d = 5;

        Console.WriteLine(b % a);
        Console.WriteLine(c % d);
        Console.Read();
    }
}

输出:

0
2

0

好的,我刚试了一下计算器并玩了一下才知道这个,基本上是这样的:
5 % 2.2 = 0.6 就像在计算器上说 5/2.2 = 2.27 然后你乘以那个 .272.27,然后四舍五入就得到了 0.6。希望这可以帮助你,它帮助了我 =]



0

模运算是几乎所有编程语言中都可用的基本运算符,通常被称为取模运算符。它的结果是余数。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接