c语言判断一个数是否为素数

为什么输入大于0的数后,没有输出结果

img

如图:循环j是从0开始的,0不可以作为除数,0作为除数计算,无实际意义,即使在高等数学中,通常也是趋于0。
改成2即可,为什么从2?一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做质数也就是素数;所以从2开始即可。

img


希望对题主有所帮助,望采纳!!

第14行
for(j = 2;j < a;j++)
j = 0不能进行%运算的
记得加上一个对1和2的特判

0不能做除数

img


这里改为

for(j=2;j<=a;j++)