C++中,rand()&1是什么意思?

如题所述

rand()随机产生一个浮点数,没有区间,这与vb的rnd不同。
rand()%9+1,是先把rand()产生的浮点数自动取整,再对9取余,最后+1.
最终结果是随机产生一个1到9之间的整数,即有可能是1,2,3,4,5,6,7,8,9
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-07-11
取出一个随机整数X, 范围在1-RANDOM_MAX之间 (RANDOM_MAX是个常量,可能比较大)
然后X与1做位运算与&
而1 二进制码为00000001,&运算导致前面的都是零
实际上只需看X的最后一位, 如果是1, &运算结果就是1, 如果是0, 返回0

故rand()&1实际上是取一随机数并判断其奇偶本回答被提问者和网友采纳
第2个回答  2013-07-10
取随机数,判断该随机数是否是奇数。
第3个回答  2013-07-10
取出随机数和1相与