//时间:2018年4月24日15:10:39
//题目:判断素数、打印前n个素数问题
#include<stdio.h>
//程序一:判断输入的数值是否为素数?
/*
int main()
{
int i;
int x;
scanf("%d",&x); //x需要输入 x>=2
int isPrime = 1; //x是素数?
for (i = 2; i < x; i++)
{
if (x % i == 0)
{
isPrime = 0;
break; //直接跳出for循环
}
}
if (isPrime == 1) //推荐使用if (isPrime == 1),还有写法if(i == x)
{
printf("a prime!");
}
else
{
printf("not a prime!");
}
printf("\n");
return 0;
}
*/
/*
//程序二:打印2到n之间(包括n)的素数
int main()
{
int i;
int x;
int n;
int isPrime;
scanf("%d",&n); //这里需要输入的是大于等于2的值
for (x = 2; x <= n; x++)
{
isPrime = 1; //x是素数?
for (i = 2; i < x; i++)
{
if (x % i == 0)
{
isPrime = 0;
break; //直接跳出for循环 continue跳过这一轮循环的剩下语句,进行下一次循环。
}
}
if (isPrime == 1) //推荐使用if (isPrime == 1),还有写法if(i == x)
{
printf("%d ",x);
}
}
printf("\n");
return 0;
}
*/
/*
//程序三:打印前50个素数,思路一
int main()
{
int i;
int x = 2;
int cnt = 0;
int isPrime;
while(cnt < 50) //cnt = 0 1 2 ...49
{
isPrime = 1; //x是素数?
for (i = 2; i < x; i++)
{
if (x % i == 0)
{
isPrime = 0;
break; //直接跳出for循环 continue跳过这一轮循环的剩下语句,进行下一次循环。
}
}
if (isPrime == 1) //推荐使用if (isPrime == 1),还有写法if(i == x)
{
printf("%d ",x);
cnt++;
}
x++;
}
printf("\n");
return 0;
}
*/
/*
//程序四:打印前50个素数,思路二
int main()
{
int i;
int x = 2;
int cnt = 0;
int isPrime;
for (x = 2; cnt < 50; x++)
{
isPrime = 1; //x是素数?
for (i = 2; i < x; i++)
{
if (x % i == 0)
{
isPrime = 0;
break; //直接跳出for循环 continue跳过这一轮循环的剩下语句,进行下一次循环。
}
}
if (isPrime == 1) //推荐使用if (isPrime == 1),还有写法if(i == x)
{
printf("%d ",x);
cnt++;
}
}
printf("\n");
return 0;
}
*/
1、素数问题
最新推荐文章于 2022-06-22 19:35:28 发布