#include <stdio.h>
int prime(int p) //素数判断
{
for (int i = 2; i < p; i++)
if (p % i == 0) //用2~p-1去除p;也可以用2~根号n,减少运行次数。要包含<math.h>
return 0; //不是素数
return 1; //是素数
}
int main()
{
int a, b = 0;
printf("以下为100~200的素数:\n");
for (int i = 100; i <= 200; i++) //100-200的素数
{
a = prime(i);
if (a == 1)
{
printf("%-5d", i); //左对齐
b++; //统计个数
}
}
printf("\n共计%d个", b);
return 0;
}
另一种方式
int c;
printf("以下为100~200的素数:\n");
for (int a = 100; a <= 200; a++)
{
int i, w = 0;
for (i = 2; i <= sqrt(a); i++)
{
if (a % i == 0)
w = 1; //不是素数
}
if (w == 0) //是素数
{
c++; //统计个数
printf("%-5d", a);
}
}
printf("\n共%d个", c);
输出结果