Ho scritto questo, soddisfa le condizioni dell'esercizio secondo voi?

codice:
#include <stdio.h>


int next_prime(int last) {
    int i,k,c=0;
    int first;
    for(k=2;c<last;k++) {
        first=1;
        for(i=2;i<k/2+1&&amp;first;i++) {
            if(k%i==0) {
                first=0;
            }
        }
        if(first) {
            printf("%i ",k);
            c++;
        }
    }
}


int main(void) {
    int p;
    printf("Inserisci un numero: ");
    scanf("%i", &p);
    next_prime(p);
    printf("\n");
    return 0;
}