请问一下求质数的代码

请教一下求质数的代码
请问一下求质数的代码



以上是我看的一段计算质数的视频教程中截图的,有2个地方不明白。请教大家,谢谢。



另外,求质数时,往往用这个数除到平方根数就可以了,不过我想不明白,谁能说得通俗一点,简单一点,谢谢。


------解决方案--------------------
1. 这个prime为循环终止条件  当为0时 for循环跳出
2. int当bool用时  0==false  非0==true
------解决方案--------------------
另外,求质数时,往往用这个数除到平方根数就可以了

假设n 有一个因子 m   那么n/m也是n的一个因子    如果m>sqrt(n)  那么(n/m)必然<sqrt(n)
------解决方案--------------------
引用:
 举个例子,如果m为10,把prime加在for条件里,除到2,它就停止循环;不加的话,它会一直除到9,是不是这样理解?


把prime加在循环条件语句里的目的是当测试到prime为 0即m不是质数时,循环立刻终止执行,节省了运行时间吧。
------解决方案--------------------
额。。。其实非常简单,for的第二个语句是为了防止多余的运算,比如当你的for下的if语句执行后,prime=0,如果for的第二个语句写,它会一直执行到i = m - 1,
说白了,就是高效请问一下求质数的代码