求代码详细解释!解决办法
求代码详细解释!!#include stdio.hint is_even(int x){return !(x % 2)}int main(void){int i 20if(
求代码详细解释!!
#include <stdio.h>
int is_even(int x)
{
return !(x % 2);
}
int main(void)
{
int i = 20;
if(is_even(i))
printf("Even number\n");
else
printf("Odd number\n");
}
求以上小段代码的函数返回值的解释。 C,函数调用,函数返回值
[解决办法]判断 x是 奇数或者偶数
奇数返回 0 (false),
偶数返回 非0(true).
[解决办法]#include <stdio.h>
int is_even(int x)
{
return !(x % 2);// x对2取余(偶数为0,奇数为1),取反之后偶数返回1(true),奇数返回0(false)
}
int main(void)
{
int i = 20;
if(is_even(i))//(偶数:真)
printf("Even number\n");
else // (奇数:假)
printf("Odd number\n");
}
闲的蛋疼
[解决办法]
int is_even(int x)
{
/*
x % 2 是x对2取余的意思,如果x是偶数的话,那么余数是0,奇数的余数是1
前缀!是取非的意思,就是说0为假,!0为真,1为真,!1为假
因此如果x是偶数的话,那么!(x % 2)=!(0)为真
其实更有效率的写法是return !(x & 1),这样偶数也是返回为真
*/
return !(x % 2);
}
[解决办法](x%2)表示 x对2取余(偶数为0,奇数为1),然后加上取反运算!(x%2),取反之后偶数返回1(true),奇数返回0(false)