c语言用数组和函数求100以内的素数

c语言用数组和函数求100以内的素数

#include<stdio.h>
int a[101];
int isPrime(int n){
    int i;
    for(i=2;i<n;i++){
        if(n%i==0) return 0;
    }
    return 1;
}
int main() {
    int n,i;
    for(i=2;i<=100;i++){
        if(isPrime(i)){
            a[i]=1;
        }
    }
    for(i=2;i<=100;i++){
        if(a[i]==1){
            printf("%d ",i);
        }
    }
    return 0;
}

供参考:

#include <stdio.h>
int num[101] = { 1,1,0 };
void Init()
{
    int i, j;
    for (i = 2; i <= 50; i++) {
        if (num[i] == 0) {
            for (j = i + i; j <= 100; j += i) {
                num[j] = 1;
            }
        }
    }
}
int main()
{
    int i;
    Init();
    for (i = 1; i <= 100; i++)
        if (num[i] == 0)
            printf("%d ", i);
    return 0;
}