Hmm...actually

Try this

// first check if number is even; if so not prime
if(!prime%2)
r = 1;

// then check every odd number
for(i=3; i<sqrt(prime) + 1 && !r; i+=2)
if(prime%i)
r = 1;

You only check if the number is odd, so I guess it more efficient.

Of course you have to check the speical case when:

prime == 2