这是最基本的代码。循环将开始,即使条件为假,也不会结束。
int oldpick = 6;
int pick = rand() % 5;
while (pick = oldpick){
pick = rand() % 5;
}
答案 0 :(得分:2)
pick = oldpick
这会将oldpick
的值分配给pick
,然后进入循环。我想你想要==
while (pick == oldpick){
此外,这一行:
pick = rand() % 5;
不会给出高于4的数字,因此即使使用==
如果在编译时激活警告,则可以看到所有这些。
答案 1 :(得分:2)
你的while循环条件中有一个简单的印刷错误......
while (pick = oldpick)
等于while (pick == oldpick)
或等于while (pick != oldpick)
。
另外,pick
永远不会等于6 6 % 5 == 5