Nu-i complet :) (merge pe cateva cazuri (sau poate nu), te las pe tine sa completezi)
int i_prim(int val)
{
int p1, p2, ok;
p1 = p2 = val;
for(;;)
{
ok = 0;
for(int d=2; d*d<=p2; d++)
if(!(p2 % d)) { ok = 1; break; }
if(!ok) break;
p2++;
}
for(;;)
{
ok = 0;
for(int d=2; d*d<=p1; d++)
if(!(p1 % d)) { ok = 1; break; }
if(!ok) break;
p1--;
}
return p2 - p1;
}