c语言判断是不是素数的程序

#include<studio.h>
main()
{int m,i,k;
scanf("%d",&m);
k=m;
for(i=2;i<=k;i++)
if(m%i==0)break;
if(i>k)printf("%d是素数",m)
else printf("%d是合数",m);
}
麻烦高手看一下,我在编译的时候总是有一个错误,可是我怎么也找不到。~谁来帮我一下啊~~~
不是不是。#include"math"
里面的是k=sqrt(m);
怎么还是错的啊

1、首先打开CodeBlocks,创建一个新项目。

2、项目语言,选择“c”, 我们将项目名称命名为“primeNumber”。

3、然后下一步点击“finish”。

4、创建好项目后,我们打开 “main.c”文件。

5、素数即质数,也就是除了1和它本身以外不再有其他因数,首先是实现输入口。

6、输入口完成后,接下来就是判断素数。 要判断素数,我们要从它的特点开始找。素数的因子 只有1和它本身。那么,就是说,我们可以通过找到这个数的所有因数,进行比对即可。

7、先定义好相关的变量,这里result是用来存储因子之和的,用循环,遍历所有可能因子。

其中 if判断,i是不是prime的因数。 %是求余数的运算符。当能被整除时,结果为0。

8、执行完for循环后,result中存入的就是 prime的因数之和,其中也包括它本身。接下来只要判断 prime+1 是否与result相等。如果相等,就表示result中是1+数本身,即为素数。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-02-19
第2个回答  推荐于2017-09-03

1,首先了解素数的定义,一个大于1的自然数,除了1和它本身外,不能被其他自然数整除。2,以下是C语言程序。

#include "stdio.h"
int main()
{
int n,flag=1,i;
scanf("%d",&n);//输入一个数n,判断它是否是素数。 
for(i=2;i<n;i++) 
{
if(n%i==0)// 根据素数的定义n依次除以小于它本身大于1的数 
flag=0;//一旦有能被整除的数,表明 n不是素数,使得flag=0 。 
}
if(flag==0)//根据flag的值判断n是否是素数 
printf("%d不是素数",n); 
else
printf("%d是素数",n); 
return 0;
}

第3个回答  2020-05-30
1,首先了解素数的定义,一个大于1的自然数,除了1和它本身外,不能被其他自然数整除。2,以下是C语言程序。
#include "stdio.h"
int main()
{
int n,flag=1,i;
scanf("%d",&n);//输入一个数n,判断它是否是素数。
for(i=2;i<n;i++)
{
if(n%i==0)// 根据素数的定义n依次除以小于它本身大于1的数
flag=0;//一旦有能被整除的数,表明 n不是素数,使得flag=0 。
}
if(flag==0)//根据flag的值判断n是否是素数
printf("%d不是素数",n);
else
printf("%d是素数",n);
return 0;
}
第4个回答  2020-03-12
1,首先了解素数的定义,一个大于1的自然数,除了1和它本身外,不能被其他自然数整除。2,以下是C语言程序。
#include "stdio.h"
int main()
{
int n,flag=1,i;
scanf("%d",&n);//输入一个数n,判断它是否是素数。
for(i=2;i<n;i++)
{
if(n%i==0)// 根据素数的定义n依次除以小于它本身大于1的数
flag=0;//一旦有能被整除的数,表明 n不是素数,使得flag=0 。
}
if(flag==0)//根据flag的值判断n是否是素数
printf("%d不是素数",n);
else
printf("%d是素数",n);
return 0;
}