c语言 使用指针的方法求100的素数

使用指针的方法求100以内的素数
要求:(1)先在数组中保存1~100的所
有整数;
2)使用指针的方式对数组中非素数
剔除。

把数组当指针传递就行了

/*
使用指针的方法求100以内的素数
要求:(1)先在数组中保存1~100的所
有整数;
2)使用指针的方式对数组中非素数
剔除。
*/
#include <stdio.h>
int isprime(int n)
{
    int i;
    if(n<2)
        return 0;
    for(i=0;i*i<=n;i++)
        if(n%i==0)
          return 0;
    return 1;
}
int fun(int *a,int n)
{
    int k=0,i;
    for(i=0;i<n;i++)
    {
        if(!isprime(a[i]))
            a[k++] = a[i];
    }
    return k;
}
int main()
{
    int a[100],k,i;
    for(i=1;i<=100;i++)
        a[i-1] = i;
    k = fun(a,100);
    for(i=0;i<k;i++)
        printf("%d ",a[i]);
    return 0;
}