由于某种原因,以下代码进入无限循环。 我试过没有“休息”;在if和else之后,没有运气。
非常感谢您的回复!在此先感谢:)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() // Very simple version of Bulls & Cows
{
int j=0,k=0,bulls=0,cows=0;
char random[5]="1234";
char msg[100]="5678"; // I want it to be [100], I know it's not needed.
printf("Bulls: %d Cows: %d \n",bulls ,cows);
for(k=0;k<4;k++)
{
for(j=0;j<4;j++)
{
if(msg[k]=msg[j])
{
if(k=j)
{
bulls++;
break;
}
else
{
cows++;
break;
}
}
}
printf("Bulls: %d Cows: %d \n",bulls ,cows); //Just to see where is the problem
}
printf("Final Bulls: %d Final Cows: %d \n",bulls ,cows);
}
答案 0 :(得分:3)
=
是一个赋值运算符。
==
是一个比较运算符。
您想使用==
。
if (k == j) // note double =
if (msg[k] == msg[j]) // note double =