>>499
is_primeがフラグになってる。('0'なら非素数、'1'なら素数)

2<=i<=num/2の範囲でiをインクリメントして、逐次numをiで割り切れるか調べる。
ちなみに、
 ・iの初期値が2なのは、1で割るのを避けるため。
 ・ループ継続条件がi<=num/2なのは、余計なループをさせないため
まあ一回でも割り切れたらis_primeに'1'が入るから、
約数を調べたいだけなら
 if((num%i)==0) {
   is_prime = 0;
   break;
 }
の方がいいと思う