要找出1000以内的素数

这是我初步写的代码
#include<stdio.h>
#include<math.h>
int main()
{
    int n,k,i,m=0;
    for(n=1;n<=1000;n=n+2)
    {
        k=sqrt(n);
        for(i=2;i<=k;i++)
        if(n%i==0)break;
        if(i>=k+1)
        {
            printf("%-4d",n);
            m=m+1;
        }
        if(m%10==0)printf("\n");
    }
    printf("\n");
    return 0;
}

img


为什么终端显示出来中间会空出那么多行?

int main()
{
    int n,k,i,m=0;
    for(n=1;n<=1000;n=n+2)
    {
        k=sqrt(n*1.0);
        for(i=2;i<=k;i++)
            if(n%i==0)
                break;
        if(i>=k+1)
        {
            printf("%-4d",n);
            m=m+1;
            if(m%10==0)
                printf("\n");
        }
    
    }
    printf("\n");
    return 0;
}

if(m%10==0)printf("\n");的位置不对
如下:

if(i>=k+1)
{
    printf("%-4d",n);
    m=m+1;
    if(m%10==0)printf("\n");
}