c语言中素数
1. 在c语言中如何表示素数
1、先打开visualc++6.0,然后单击左上角的文件,然后单击新建。
2. c语言中如何求素数
#include<stdio.h>
#include<math.h>
void main() // 这里不要搞错了,main
{
int i,n;
printf("输入一个整数n");
scanf("%d",&n);
n=abs(n);
if(n>2)
{
for(i=2;i<n;i++)// 在for下面跟个if判断,如果你输入4的话,这个程序打印两次4不是
if(n%i==0&&n==i)
scanf("%d是素数",n); break ;// 这里应该是printf了吧,
else
scanf("%d不是素数",n); break;// 这样会比较好点
}
else
scanf("%d不是素数",n);// 2就不是素数么,
}
这样也有问题,当你输入5的时候,for语句先判断能否整除2,不能整除2的话,就打印不是素数,写个函数是比较好的方法
3. 如何求C语言素数
如果一个数是素数,只要判断他是否能被2到这个数的开方之间的数整除就行了。
int flag=0;
if(m==2){ //先判断是不是2
flag=1;
}
else{
for(int i=2;i<=sqrt(m);i++){
flag=1;
if(m%i==0){ //不是素数
flag=0;
break;
}
}
}
return (flag==1)?m:-1; //判断是否为1,为1输出m,否则输出-1 ,-1表示不是素数
如果是求某个范围的素数,可以连续调用这个方法,上面是常规的方法,还有更好的方法自己去查一下。
4. C语言素数怎么表示
#include<stdio.h>
#include<math.h>
intmain()
{
intx,i,j=0,k;
for(x=101;x<=200;x++)
{
for(i=2,k=0;i<=sqrt(x);i++)
if(x%i==0)
{
k++;
break;
}
if(k==0)
{
printf("%d",x);
j++;
}
}
printf(" 100到200之间有%d个素数 ",j);
}
(4)c语言中素数扩展阅读
100->200之间的素数的个数,以及所有的素数
#include<stdio.h>
#include<math.h>
intmain()
{
inta,m,k,i;
a=0;
for(i=101;i<=200;i++)
{
for(k=2;k<i;k++)
if(i%k==0)break;
if(k>=i)
a++;
}
printf("%d ",a);
for(i=101;i<=200;i++)
{
for(k=2;k<i;k++)
if(i%k==0)break;
if(k>=i)
a++;
if(k>=i)
printf("%d",i);
}
printf(" ");
return0;
}
5. C语言中,何为素数何为非素数用C语言如何表示
C语言中的素数和数学中的素数是一样的,即:除了1和它本身之外,不能被任何数整除的数(1不是素数)。也就是说素数是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。
非素数的定义就很明了了,素数以外的数都是非素数,在C语言中,求素数的方法,就是从2开始,依次判断该数是否可以被2以上到该数以下的数整除,如果可以,就不是素数,如果不可以被所有大于或等于2小于该数的整数整除,那么就是素数了
6. 用C语言如何判断素数
按照如下步骤即可用C语言判断素数:
1、首先打开visual C++ 6.0,然后点击左上角的文件,再点击新建。
7. C语言中的素数是什么意思
素数是只能被1和它本身整除的
数。
实现代码:
#include
int
main(void)
{
int
i,
n
=
2;
printf("请输入一个数:\n");
scanf("%d",
&i);
while
(1)
{
if
(i%n
==
0)
{
break;
}
n++;
}
if
(n
==
i)
{
printf("这个数是素数!");
}
else
{
printf("这个数不是素数!");
}
return
0;
}
8. c语言怎么求素数
在C语言中求素数有很多种方法。刚入门的话,最基本的就是根据素数的定义来判断一个数是不是素数。要判断一个数n是不是素数,就用一个循环,从2一直到n -1,如果都不能整除n,那么n就是一个素数,否则就不是素数。
改进一点的方法就是只要判断到n/2就可以了。再高效一点的办法,就只要判断到根号n就可以了。判断的依据是相同的。
9. C语言求素数
/*求素数的三种方法
一:for(i=2;i<=(n-1);i++)
if(n%i==0)i在2到n-1之间任取一个数,如果n能被整除则不是素数,否则就是素数
二:for(i=2;i<n/2;i++)
if(n%i==0) /*i在2到n/2之间任取一个数,如果n能被整除则不是素数,否则就是素数
三:for(i=2;i<(n=sqrt(n));i++)
if(n%i==0) /*i在2到sqrt(n)之间任取一个数,如果n能被整除则不是素数,否则就是素数,在下省了下面的输出步骤*/
/*在本程序中使用第三种方法来求解*/
#include <stdio.h>
#include <math.h>
int main(void)
{
int i; /*外循环*/
int j; /*内循环*/
int flag; /*素数标志,flag为1则此数为素数*/
flag = 0;
//int n;
i = 2;
while( i <= 100)
{
j = 2;
flag = 1; /*假设此数为素数*/
while(j <= (int) sqrt(float(i)))
{
if(0 == (i %j))
flag = 0; /*根据第三种算法可知次数不为素数*/
j ++;
}
if(flag)
printf("%d\t",i);
i++;
}
printf("\n");
return 0;
}