素数的判断 有木有人康康

img


xdm这个是哪出了问题
输入之后啥也没输出出来
是哪里出问题了嘞

你的scanf()函数格式有问题

死循环了呀,你想一下啊,如果你输一个10,那么x=2的时候,if(y%x!=0)后面的x++;不执行了啊,那么x就是一直=2就,循环一直进行。
建议else{
t=0;
break;
}
一旦找到一个能够被y整除的数就退出,那么y一定不是素数啊

供参考:

#include <stdio.h>
int main()
{
    int y;
    scanf("%d", &y);
    int t = 1;
    int x = 2;
    while(x < y && t){  //修改
        if(y % x == 0) t = 0; // 修改
        x++;
        //else  t = 0; //修改
    }
    if(t == 1 && y != 1)printf("是素数"); //修改
    else      printf("不是素数");

    return 0;
}

是不是输入之后没有按回车键