Closed. This question needs details or clarity。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
                        
                        5年前关闭。
                                                                                            
                
        
如何用C语言进行模运算?

请在下面阅读我的代码。

#include <stdio.h>

int main(void)
{
    int i = 100;

    printf("%d\n", i%100);
    printf("%d\n", i%240);
    printf("%d\n", i%40);
    printf("%d\n", i%10);


    return 0;
}


结果是

$ ./modulus
0
100
20
0


请告诉我如何正确使用它。

编辑

抱歉,我在代码中犯了一个错误。划分应该像下面的代码一样走到另一边。

printf("%d\n", 100%i);
printf("%d\n", 240%i);
printf("%d\n", 40%i);
printf("%d\n", 10%i);


我期望的是当值乘以100时得到0

我为这个错误感到抱歉。但是,伙计们,请撤消我的反对票。

最佳答案

好吧,它正常工作。您期望看到什么?

模运算符(模运算的实现),使您除法余数。例如:

a % b = c


可以重写为a = b * d + c,其中a,b,c,d是整数。

因此,100%40 = 20,因为100 = 40 * 2 + 20

关于c - 在C中使用模运算符会产生一些奇怪的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22500889/

10-09 04:29