如何在C中找到除法的余数?

时间:2011-08-09 09:24:27

标签: c division

找出两个数字的除法是否会返回余数的最佳方法是什么? 我们举个例子,我有一个值为{3,5,7,8,9,17,19}的数组。现在我需要从上面的数组中找到51的完美除数。有没有更简单的方法来解决这个问题?

3 个答案:

答案 0 :(得分:20)

您可以使用%运算符查找除法的余数,并将结果与​​0进行比较。

示例:

if (number % divisor == 0)
{
    //code for perfect divisor
}
else
{
    //the number doesn't divide perfectly by divisor
}

答案 1 :(得分:6)

使用模数运算符%,它返回余数。

int a = 5;
int b = 3;

if (a % b != 0) {
   printf("The remainder is: %i", a%b);
}

答案 2 :(得分:1)

以上所有答案都是正确的。只需提供您的数据集即可找到完美的除数:

#include <stdio.h>

int main() 
{

int arr[7] = {3,5,7,8,9,17,19};
int j = 51;
int i = 0;

for (i=0 ; i < 7; i++) {
    if (j % arr[i] == 0)
        printf("%d is the perfect divisor of %d\n", arr[i], j);
}

return 0;
}