求某个数间的素数,思路是排除2和偶数之外,在利用循环把素数求出来

#include
int main()
{
int m,n,i,j=0,a=3,sum=0,prime,l;
scanf("%d%d",&m,&n);
i=m;
if(i%2==0&&i!=2){
i=i+1;
for(i;i>=m&&i<=n;i++){
while(a
l=i%a;
if(l==0)
{prime=0;
a++;}
else
{prime=1;
j++;
sum+=i;
}
if(i==2)
prime=0;
}
}
}
printf("%d %d",j,sum);
return 0;
}

如果输入的m是奇数它就直接输出结果了,就是0 0
进行了修改:

#include<stdio.h>
int main()
{
    int m,n,i,j=0,a=3,sum=0,prime,l;
    scanf("%d%d",&m,&n);
    for(i = m;i>=m&&i<=n;i++){
        if(i == 1){
            continue;
        }
        a = 2; 
        int prime = 1;
        while(a<i){
            l=i%a;
            if(l==0)
            {
                //不是素数 
                prime=0;
                a++;
                break;
            }
            a++;
        }
        if(prime == 1){
            j++;
            //printf("%d\n",i);
            sum += i;
        }
        
    }
    printf("%d %d",j,sum);
    return 0;
}