,1.判断输入的数是否为素数;
#include<stdio.h>
#include<math.h>
void IsPrimeNumber(int x)
{
int i = 2,r;//r中保存余数
while (i <= sqrt(x))
{
r = x % i;
if (r == 0)
{
printf("%d is not a primenumber!\n",x);
break;
}
else
{
i += 1;
}
}
if (i> sqrt(x))
{
printf("%d is a primenumber!\n", x);
}
}
int main()
{
int n;
while (1)
{
scanf_s("%d", &n);
IsPrimeNumber(n);
}
return 0;
}
2.输出某一个区间内所有素数
void PrintPrimeNumber(int x)
{
int i = 2, r;//r中保存余数
do
{
i = 2;//注意:当x自增1以后一定要让变量i的值恢复为2,否则就会出错!
while (i <= sqrt(x))
{
r = x % i;
if (r == 0)
{
printf("%d is not a primenumber!\n", x);
break;
}
else
{
i += 1;
}
}
if (i > sqrt(x))
{
printf("%d is a primenumber!\n", x);
}
x++;
} while (x <= 300);
}
int main()
{
int n;
PrintPrimeNumber(200);
return 0;
}
第一部分代码完成的是在键盘上输入一个数,判断该数是否是一个素数。第二部分代码完成的是输出指定区间内所有素数和非素数,当然,只要使用者修改被调函数中的参数及循环终止条件中的参数,该程序就可输出使用者指定区间内的素数和非素数。