这里不得不给个忠告,哪里不懂,赶快找本书看看,再不看,只会不停的重复过去的错误,永远停留在原地。
比如:
5 % 10 == 5
我可以说右边不一定是 5,右边可以是任何整数。
因为这个本身是一条关系表达式,在 c 语言里 == 是关系运算符,并不等同于 =,两者意思相差十万八千里,如果平时不注意这些细节,那么你编程时会吃很多的苦头,有时候你可能跟本查不出错误在哪里。
求余数运算看似简单,有些地方还是比较有趣的,不动手实验一下,会判断错误。如负数取余数:
代码:
#include <stdio.h>
int main()
{
printf (" -1 % 10 = %d\n", -1 % 10);
printf ("(-1) % 10 = %d\n", (-1) % 10);
printf (" 1 % (-10) = %d\n", 1 % (-10));
printf ("(-1) % (-10) = %d\n", (-1) % (-10));
return 0;
} |
不测试一下,你答得上来吗?
5除以10商0余5,
cout<<(5%10):
将输出余数,5,而不是商,0.
==可以作等号(=)用,但在你贴出的表达式中,==作关系运算符,用于比较左边和右边的值是否相等,相等,则整个表达式的值为1,反之,为0。
cout<<(5%10==5)<<(5%10==4)<<endl;
这是我的理解,不一定都正确。