#include <stdio.h>
int main()
{
int x, i;
printf("请输入一个数:\n");
scanf("%d", &x);
i = 2;
while( 2 <= i && i <= x - 1)
{
if(x%i == 0)
{
printf("不是素数\n");
break;
}
i++;
}
if(i == x)
{
printf("是素数\n");
}
return 0;
}
2 < i < x - 1这种写法是不对的
改成
for(int i = 2;i < x;i++){
}
这里都语法错误了 改成 i>2&&i<x-1
2<i<=x-1 先计算 2<=i,结果是一个boolean值,条件成立结果是1,条件不成立是0,所以不管i值是多少,最终产生的就是1或者0,再计算(1或者0)<=x-1,只要 x-1>1那就是一定成立的