素数就是有1和本身两个因数的数,所以判断一个数n是否是素数,就可从2到n-1依次除n如果能整除则不是素数,否则就是素数。
按需设计网站可以根据自己的需求进行定制,成都网站建设、网站建设构思过程中功能建设理应排到主要部位公司成都网站建设、网站建设的运用实际效果公司网站制作网站建立与制做的实际意义
参考代码:
#include stdio.h
int fun(int n){//判断n是否是素数
int i;
for(i=2;in;i++)
if(n%i==0) return 0;
return 1;
}
int main()
{
int n;
scanf("%d",n);
if(fun(n))
printf("%d是素数\n",n);
else
printf("%d不是素数\n",n);
return 0;
}
/*
运行结果:
9
9不是素数
*/
int fun( int n )
{
for( i=2;in;i++ )
{
if ( n%i ==0 ) //有因数,返回0,不是
return 0;
}
return 1; //未找到因数,返回1,是
}
void main()
{
if ( fun(10) == 1 ) //调用函数,根据返回值,判定是否是素数
printf("yes!\n");
else
printf("no!\n");
}
1、首先需要打开vs软件工程,准备好一个空白的C语言文件,引入头文件,主函数中暂时没有内容:
2、这里开始编写代码,这里判断素数需要用到平方根,所以要在头文件中引入math库,然后编写判断素数的函数,函数有唯一的参数n,代表素数。判断的依据是素数n只要不能被 2 到根号下n之 间任一整数整除,则n必定是素数,最后在主函数中调用判断素数的函数即可:
3、最后,编译运行程序,在弹出的命令行中输入17这个素数,程序的打印结果是17是素数,证明了程序的正确性。以上就是用C语言判断素数的流程:
#include stdio.h
#include math.h
//判断是否为素数的函数
int isPrime(int n)
{
int i=2;
while(i=(int)sqrt(n))
{
if(n%i == 0)
return 0; //不是素数,直接返回0
else
i++;
}
return 1;
}
int main()
{
int n,i;
printf("输入一个正整数: ");
scanf("%d",n);
for(i=2;i=n;i++)
{
if(isPrime(i)) //调用函数,如果该数为素数,则输出
printf("%d ",i);
}
printf("\n");
return 0;
}
示例运行结果:
输入一个正整数: 50
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47
int fun_a(int n)
{
for(int i=2;in;i++) { if(n%i==0) return 0; }
return 1;
}
#include stdio.h
int fun(int x)//
{
if(x2)
return 0;//返回0,非素数
for(int i=2;i*i=x;i++)
if(x%i==0)
return 0;
return 1;//返回1,素数
}
int main()
{
int n;
scanf("%d",n);
if(fun(n)==1)
printf("%d是素数\n",n);
else
printf("%d不是素数\n",n);
return 0;
}