Olá, gostaria de saber como deixar o algoritmo abaixo mais rápido. Pesquisando vi que uma boa solução seria só calcular os divisores que vão até a raiz quadrada do número, no entanto não consigo implementar isso, alguém pode me ajudar?
include < stdio.h >
int primo(int x){
int i,c = 1;
for(i = 2; i <= x - 1; i++){
    if((i % 2 == 1) || i == 2){
        if(x % i == 0){
            c++;
        }
        if(c > 2)break;
    }
}
if(c + 1 == 2){
    return 1;
}else{
    return 0;
}
}
int main(void){
int t,v;
scanf("%d",&t);
while(t--){
    scanf("%d",&v);
    if(primo(v)){
        printf("Prime\n");
    }else{
        printf("Not Prime\n");
    }
}
}