>>143
for(b=2;b<a;b++){
は
for(b=2;b<(a/2);b++){
のほうが良くないか?