运行时出现错误:左值作为分配左操作数:
for(x=2;x<=n/2;x++)
{
if ((n%x)=0)
{
y=1;
}
}
答案 0 :(得分:0)
赋值运算符(=)和比较运算符(==)之间存在差异。在您的代码中进行比较,因此您应该使用“==”
for(x=2;x<=n/2;x++)
{
if ((n%x)==0)
{
y=1;
}
}
答案 1 :(得分:0)
与其他人一样,问题出在if
声明的条件下。让我们说n = 13
。
它输入for
语句。
所以第一步就是:
if(1 = 0)//13 % 2 = 1
y = 1;
这就像说5 = 9或100 = 12或5 = 0.这是不可能的。
要检查n % x
是否为0,请使用n % x == 0
。