①用for循环求3~100的素数
②第一层循环表示3-100的数逐个判断是否是素数
③在第二层循环中则对数j用2~j-1逐个去除,若某次除尽,则跳出该循环,说明不是素数。
④如果在所有数都未除尽的情况下结束循环,则该数是素数。
⑤此时有i>=j,故可经此判断后输出素数,然后转入下一次大循环。
⑥如果不需要每行输出5个数换行,则可以把以下代码注释
⑦代码如下:
#include <stdio.h>
int main()//3-100的素数
{
int i, j, n = 0;
for (j = 3; j <= 100; j++) //3-100的数逐个判断是否是素数
{
for (i = 2; i <= j - 1; i++)//对数j用2~j-1逐个去除
{
if (j%i == 0)//除尽就跳出
break;
}
if(i >= j)//判断后输出素数
{
n++; //n累加
printf("%d ", i); //输出素数
if (n % 5 == 0) //每5个为一行
printf("\n"); //换行
}
}
}
运行结果: