第一种方法:
#include<stdio.h>
#include<math.h>
int main()
{
int x;
int i, j, f = 0;
printf("请输入数据:");
while ((scanf("%d", &x)) != 0)//运用循环
{
printf("符合条件的素数有:");
for (i = 2; i <= x; i++)
{
for (j = 2; j <= sqrt(i); j++)
{
if (i % j == 0 )
f = 1;
break;
}
if (f == 0)
{
printf("%d ", i);
}
f = 0;
}
}
}
第二种方法:
#include<stdio.h>
#include<math.h>
int main()
{
int x;
int i, j;
printf("请输入数字:");
do
{
scanf("%d",&x);
if (x < 2)
{
printf("没有符合条件的素数");
continue;
}
printf("符合条件的素数为:");
for (i=x;i>=2;i--)
{
int flag = 1;
for (j = 2; j <= sqrt(i); j++)
{
if (i % j == 0 )
{
flag = 0;
break;
}
}
if (flag == 1)
{
printf("%d ", i);
}
}
} while (x != 0);
}