それぞれ役割が違います。
break は繰り返し処理をすべてやめてしまいますが、
continue はそれ以下の繰り返しの処理を1回飛ばします。
なんだかわかりにくいですね~^^;
for(int i=0;i<3;i++)
{
処理1
if(条件1) break;
if(条件2) continue;
処理2
}
処理3
このようなプログラムがあった時、
条件1 と 条件2 を満たさなければ i が 5 になるまで、
処理1 と 処理2 が繰り返されます。
i=0
処理1
処理2
i=1
処理1
処理2
i=2
処理1
処理2
処理3
最初は i=0 で } まで行くと
i++ で i に 1 が足されます。
i<3 の条件を満たしている間は、これが繰り返されます。
i=2 の状態で } まで行くと
i++ で i に 1 が足され3になり、
i<3 の条件を満たさなくなるので繰り返しの処理を終了し、
処理3が実行されます。
途中で、条件1を満たして break が実行されると、
for文の処理そのものが終了します。
例えば、i=1 で条件1を満たしたとすると、
i=0
処理1
処理2
i=1
処理1
処理3
という流れになります。
continue の場合は、それ以下の処理を飛ばします。
例えば、i=1 で条件2を満たしたとすると、
i=0
処理1
処理2
i=1
処理1
i=2
処理1
処理2
処理3
という流れになります。
i=1 の時の、continue 以下の処理2が無視されます。
このように、使い方が異なりますので注意して使用してください。