代码不执行任务,没有结果

#include<stdio.h>
int prime(int n)
{
int i;
if(n==1||n==0)
return 0;
for(i=2;i<=n;i++)
if(n%i==0)
return 0;
return 1;
}
int main()
{
int i,n,j=0;
printf("Enter a number:\n");
scanf("%d",&n);
printf("n以内的质数:\n");
for(i=2;i<=n;++i)
if(prime(i)==1)
printf("%d",i);
return 0;
}

img


没有质数输出来

prime函数中的
for(i=2;i<=n;i++)改成 for(i=2;i<n;i++)

img

代码修改如下

#include<stdio.h>
int prime(int n)
{
    int i;
    if(n==1||n==0)
        return 0;
    for(i=2;i<n;i++)
        if(n%i==0)
            return 0;
    return 1;
}
int main()
{
    int i,n,j=0;
    printf("Enter a number:\n");
    scanf("%d",&n);
    printf("n以内的质数:\n");
    for(i=2;i<=n;++i)
    {
        if(prime(i)==1)
            printf("%d ",i);
    }
    return 0;
}

#include<stdio.h>
int prime(int n)
{
    int i;
    if(n==1||n==0)
        return 0;
    for(i=2;i<n;i++)
        if(n%i==0)
            return 0;
    return 1;
}
int main()
{
int i,n,j=0;
printf("Enter a number:\n");
scanf("%d",&n);
printf("n以内的质数:\n");
for(i=2;i<=n;++i)
    if(prime(i)==1)
        printf("%d ",i);
return 0;
}