判断是否为素数大家帮我看看哪错了

#include<stdio.h>
int main()
{
int k,m;
printf("请输入一个数m");
scanf("%d",&m);
for(k=2;k<m;k++)
if(m%k=0)
printf("这不是素数");
else if
printf("这是素数");
return 0;

你的程序错了吧,for循环里面只有if语句,如果循环过程中遇到余数为0,就输出不是素数,遍历完之后再输出是素数,为了代码的高效性,可以不用全部遍历,遍历到根号m或者二分之m就可以

#include<stdio.h>
int main()
{
    int k,m;
    printf("请输入一个数m");
    scanf("%d",&m);
    for(k=2;k<=m/2;k++)
    {    if(m%k=0)
             printf("这不是素数");
    }
    printf("这是素数");
    return 0;
}

0 1 2这几个数需要额外判断