一道C语言编程题求解

定义一个函数,求前n个素数,并将这些素数依次存入prime数组。函数输入:一维数组prime和整数n;输出空值。
刚学C语言真的不太会,请大神们帮帮忙,求解这道题希望能给些注释大概知道怎么做

#include <stdio.h>

int isprime(int n)

{

    int i;

    if(n<2)

        return 0;

    for(i=2;i*i<=n;++i)

        if(n%i==0)

            return 0;

    return 1;

}

void func(int prime[],int n)

{

    int i,t;

    for(i=2,t=0;t<n;i++)

        if(isprime(i))

            prime[t++]=i;

}

int main()

{

    int prime[1000],n,i;

    scanf("%d",&n);

    func(prime,n);

    for(i=0;i<n;++i)

        printf("%d ",prime[i]);

    return 0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-06-07
先编写一个判断n是不是素数的函数,在这个函数中,从二到根号n进行试除,如果n能够被它整除,就说明n不是素数,否则嗯,就是一个素数。然后从二开始一直向后找,对每一个整数如果是素数,就把它保存到数组中,直到找够了个数为止。
相似回答