我想检查if
/
运算符是否没有余数:
int x = 0;
if (x = 16 / 4), if there is no remainder:
then x = x - 1;
if (x = 16 / 5), if remainder is not zero:
then x = x + 1;
如何检查C
中是否有余数?和
如何实现呢?
答案 0 :(得分:7)
首先,你需要%
余数运算符:
if (x = 16 % 4){
printf("remainder in X");
}
注意:它不适用于float / double,在这种情况下,您需要使用fmod (double numer, double denom);
。
其次,按照您的意愿实施它:
if (x = 16 / 4)
,如果没有余数,x = x - 1
; If (x = 16 / 5)
,然后x = x + 1
; 使用,
逗号运算符,您可以按照以下步骤执行此操作(读取注释):
int main(){
int x = 0, // Quotient.
n = 16, // Numerator
d = 4; // Denominator
// Remainder is not saved
if(x = n / d, n % d) // == x = n / d; if(n % d)
printf("Remainder not zero, x + 1 = %d", (x + 1));
else
printf("Remainder is zero, x - 1 = %d", (x - 1));
return 1;
}
检查工作代码@codepade:first,second,third。
请注意if-condition我使用逗号运算符:,
,以理解,
运算符读取:comma operator with an example。
答案 1 :(得分:3)
使用%运算符查找除法的余数
if (number % divisor == 0)
{
//code for perfect divisor
}
else
{
//the number doesn't divide perfectly by divisor
}
答案 2 :(得分:2)
如果要查找整数除法的余数,则可以使用模数(%
):
if( 16 % 4 == 0 )
{
x = x - 1 ;
}
else
{
x = x +1 ;
}
答案 3 :(得分:0)
为此目的使用 modulous operator 。
if(x%y == 0)
然后没有余数。
在除法运算中,如果结果是浮点数,则只返回整数部分,并且将丢弃小数部分。
答案 4 :(得分:0)
您可以使用Modulous operator来处理余数。
答案 5 :(得分:0)
模数运算符(由C中的%符号表示)计算余数。所以:
x = 16 % 4;
x将为0.
X = 16 % 5;
x将为1