用C语言写一个判素数的函数,在主函数输入一个整数,输出是否素数的信息。

作者&投稿:暨柳 (若有异议请与网页底部的电邮联系)
写一个判素数的函数,在主函数输入一个整数,输出是否素数的信息~

#include
int sushu(int);
main()
{
int a;
printf("输入一个整数:");
scanf("%d",&a);
if(sushu(a)==1)
printf("是素数");
else
printf("不是素数");

}
int sushu(int x)
{
int i;
for(i=2;i<x;i++)
{
if(x%i==0)
return 0;
}
return 1;
}

先建立一个初始的素数表,例如:100以内的素数数组,用来快速判断是否是素数对于超过100的素数,算法,用不大于根号n的素数,对n进行试除,如果都不能除尽,则为素数。
#include
#include
//判断是否为素数的函数
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;
printf("输入一个正整数: ");
scanf("%d",&n);
if(isPrime(n))
printf("%d is a prime number
",n);
else
printf("%d is not a prime number
",n);
return 0;
}

扩展资料;
首先,本文英文字母都表示整数,上半部B 》3N 》W,下半部B 》W 》3N。大于3的素数只有6N-1和6N+1两种形式,我们只需判定这两种数是素数还是合数即可。
命题 1 对于B=36N+1 形数而言。
若不定方程(3N)^2+N-(B-1)/36=W^2 有整数解,
则 6(3N-W)+1 是小因子数;6(3N+W)+1 是大因子数。
若不定方程 (3N)^2-N-(B-1)/36=W^2 有整数解,
则 6(3N-W)-1 是小因子数;6(3N+W)-1 是大因子数。
参考资料来源:百度百科-质数

输出是否素数的信息的源代码如下:

#include <stdio.h>

#include <stdbool.h>

bool prime(int x){

if (2 > x ) {

return false;

}

for (int i = 2; i < x ; i++) {

if (0 == x % i ) {

return false;

}

}

return true;

}

int main(){

for (int i = 2; i < 100; i++) {

if (prime(i)) {

printf("%d ",i);

}

}

printf("
");

return 0;

}

扩展资料

1、函数的使用可以身故重复代码的编写。

2、函数使得程序更加模块化,有利于程序的阅读修改和完善。

3、素数就是没有因子的数,只能被1和本身整除,所以我们就可以用循环解决,循环用于从2到他的根式判定是否有其他数可以整除它,有就跳出循环。



1 根据数学定义,得到判断素数的函数。

2 主函数中输入整数。

3 调用函数判断

4 根据返回值,输出结果。

代码:

#include <stdio.h>
#include <math.h>

int is_prime(int n)
{
int i;
for(i = 2; i <= sqrt(n); i ++)
if(n%i == 0) return 0;
return 1;
}

int main()
{
int i;
scanf("%d",&i);
        if(is_prime(i))printf("%d是素数
", i);
        else printf("%d不是素数
", i);
return 0;
}


main()
{
int i,x=0;
clrscr();
printf("Please input a number(x>1):\n");
scanf("%d",&x);
while(x<2)
{
clrscr();
printf("ERROR!!!Please input again!\n");
printf("Please input a number(x>1):\n");
scanf("%d",&x);
}
for(i=2;i<x-1;i++)
{
if(x%i==0)
{
printf("The number is not a SUSU.");
i=1;
break;
}
}
if(i!=1)
{
printf("The number is a SUSU.");
}
getch();
}

判断素数的方法
M 他不能被0-M/2之间的数整除就是素数
程序就是循环相套

#include<stdio.h>
int
sushu(int);
main()
{
int
a;
printf("输入一个整数:");
scanf("%d",&a);
if(sushu(a)==1)
printf("是素数");
else
printf("不是素数");
}
int
sushu(int
x)
{
int
i;
for(i=2;i<x;i++)
{
if(x%i==0)
return
0;
}
return
1;
}


用C语言编写判断一个数是否是素数的程序
1、打开ubuntu并开启一个终端,输入命令vim is_prime.c,打开编辑页面,输入预处理指令#includestdio.h用于在主函数中调用判断函数。然后定义一个函数int is_prime(int n),即判断整数n是否为素数。2、首先,判断这个数是否小于2.若是,则直接返回0,即表示它不是一个素数。3、然后定义中间的因数i,...

判断一个数是否为素数c语言
判断一个数是否为素数c语言,如下:分析:只能被1和它本身整除的整数称为素数。在数学中,要判断n是否为素数,通常让n除以2V的每一个整数,如果,能被2V几的某个整数整除,则说明,不是素数,否则n一定是素数。方法一:用for语Q判断n是否为整数 在这个代码中,我们首先定义了一个名为sprime的函数,...

如何用c语言判断一个数是不是素数
首先要知道素数是不等于1,它的因子只有1和它本身。判断一个数是否为素数,可以用大于1小于给定数的所有数去除给定数,如果有任何一个能够除尽,就表示是合数,反之是素数。下面是具体如何用C语言判断素数的过程:1、打开visual C++ 6.0,点击【文件】-【新建】-【文件】,然后选择【C++ Source File...

c语言如何判断一个整数是素数。
C语言程序如下:include<stdio.h> int main(){ int i,j,k=0;for(i=2;i<10000;i++){ for(j=2;j*j<=i;j++)if(i%j==0)break;if(j*j>i){ printf("%d ",i);k++;if(k%5==0)printf("\\n");} } }

如何用C语言编程判断素数
1、首先打开编辑器软件,在里面新的C语言文件里引入头文件并输入主函数,在主函数中输入代码:2、然后写入判断素数的逻辑,这里先引入一个scanf函数,接受用户输入的数值存入变量,对接收的变量判断其是否为素数,判断的依据是如果能被2到n-1中的某个数整除就是素数,否则就不是。最后把判断的结果打印...

c语言怎么判断一个数是不是素数?
1、素数的判断。根据素数定义,除了1和本身不存在其它约数的正整数为素数。所以在C语言中判断n是否为素数可以从2开始到到n-1逐一尝试,如果可以整除说明不是素数。更进一步,可以从2判断到n\/2或者n的算术平方根,如果不存在约数,那么即为素数。除此以外,判断素数的算法还有素数筛等。2、判断素数的...

用C语言输入一个正整数m,判断它是不是素数,每组输入三个数?
函数用于判断一个正整数是否为素数。在`main`函数中,通过`scanf`函数连续输入多组三个数(m、n和p),并逐个调用`is_prime`函数进行判断。最后,根据结果输出相应的信息。注意,`scanf`函数与`printf`函数类似,都是C语言标准库提供的函数。通过使用`%d`格式化字符串,可以读取或输出一个整数。

c语言编写函数判断素数
本文主要讲述了如何使用C语言编写一个函数,用于判断一个整数是否为素数。首先,我们需要定义一个名为isprime的函数,它接受一个整数作为输入参数。函数的实现中,我们使用一个for循环,从2开始遍历到i的前一个数(原代码中a<=i应改为a

用C语言如何编写素数检验程序?
h> int main(){ int i,j;int sum = 0;int flag;\/\/是否为素数 for (i = 2; i <= 51; i++) { flag = 1;for (j = 2; j <= i - 1; j++) { if (i % j == 0) { flag = 0;break;} } if (flag == 1) { sum += i;}} printf("和为:%d",sum);} ...

用C语言如何判断素数
按照如下步骤即可用C语言判断素数:1、首先打开visual C++ 6.0,然后点击左上角的文件,再点击新建。2、然后在弹出的新建对话框中点击C++Source File。3、在新建的文件文本框中输入预处理命令和主函数,即函数头和空类型。4、然后再定义变量并输入一个数字,即定义变量的数据类型,输出文字提示,再输入...

梨树区13718931802: 用C语言编写一个判断素数的函数,在主函数中输入一个整数,输出是否是素数的信息! -
冻适小儿: void main() {int i,j;scanf("%d",&i);for(j=2;j if(i==((int)(i/j))*j) break;if(j>=i)printf("%d为素数\n",i);else printf("%d不是素数\n",i); }

梨树区13718931802: c语言:写一个判断素数的函数,要求在主函数任意输入一个整数,输出其是否素数的判断结果 -
冻适小儿: #include <stdio.h>#include <math.h> int is_prime(int n) { int i; for(i = 2; i <= sqrt(n); i ++) if(n%i == 0) return 0; return 1; } int main() { int i; scanf("%d",&i); if(is_prime(i))printf("%d是素数\n", i); else printf("%d不是素数\n",i); return 0; }

梨树区13718931802: C语言.写一个判定素数的函数,在主函数中输入一个整数,输出是否是素数的信息 -
冻适小儿:#include #include int prime(int m) { int i,n; if(m==1)return 0; n=(int)sqrt((double)m); for(i=2;i<=n;i++) if(m%i==0)return 0;return 1; } void main() {int n;scanf("%d",&n);if(prime(n))printf("%d is a prime.\n",n);elseprintf("%d is not a prime.\n",n); }

梨树区13718931802: c语言 编写一判别素数的函数,在主函数中输入一个整数,输出该数是否为素数的信息. -
冻适小儿: #include<stdio.h> void main() { int prime(int);int n;printf("\n input an integer:");scanf("%d",&n); if(prime(n))printf("\n %d is a prime.\n"); elseprintf("\n %d is not a prime.\n"); } int prime(int n) /*调用*/ { int flag=1,i;for(i=2;i<n/2&&flag==1;i++)if(n%i==0)flag=0;return(flag);}

梨树区13718931802: 用C 语言写出一个判素数的函数,在主函数输入一个整数,输出是否素数的信息 -
冻适小儿: #include "stdio.h" #include "math.h" void main() {long i=2,j;bool IsYes;while(1){IsYes=true;if(i<=1) break;printf("Input a number:");scan("%d",&i);for(j=2;j {if(i%j==0) IsYes=false; }if(IsYes) printf(%d is Prime!\n); else printf(%d is not Prime!\n);} }

梨树区13718931802: C语言编程 写一个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息. -
冻适小儿: #include int isprime(int n) { int i; for (i=2;i if(n%i==0)return 0; return 1; } void main() { int n; printf("请输入一个数:"); scanf("%d",&n); if(isprime(n)) printf("%d是素数\n"); else printf("%di不是素数\n"); }

梨树区13718931802: C语言,编写函数判断一个整数是否为素数,在主函数中调用该函数并输出100以内的全部素数? -
冻适小儿: #include <stdio.h> int is_prime_number(int n) {int i;int result = 1;if(n==1)return 0;for(i=2;i<n;i++){if(n%i==0){result = 0;break;}}return result; } int main() {int n;printf("100以内的素数包括:\n");for(n=1;n<=100;n++){if(is_prime_...

梨树区13718931802: 写一个判别素数的函数,在主函数输入一个整数,输出是否素数的信息 用c语言
冻适小儿: 程序如下: #include <Stdio.h> #include<math.h> int main() { int n,i,flag=1; printf("输入一个数:\n"); scanf("%d",&n); for(i=2;i<=sqrt(n);i++) if(0==n%i) flag=0; if(1==flag) printf("YES\n"); else printf("NO\n"); }结果如图: 有疑问提出.

梨树区13718931802: 求 c语言大神 编写函数判断n是否为素数,在主函数中通过调用该函数计算并输出100以内所有素数之和... -
冻适小儿: #include<stdio.h> int f(int x) { if (x==1)return 0;//1不是素数.else{for(int i=2;i<=x;i++)if(x%i==0)break;//被一个数整除后跳出.if(i==x)return 1;//素数只能被1和自己整除.else return 0;} } void main() {int m,n,sum=0;scanf("%d",&m);...

梨树区13718931802: 求用C语言编写一个判断素数的函数ifp.在主函数中调用该函数,求整型数组a【10】中有多少个素数 -
冻适小儿: #include <iostream>#include <math.h> using namespace std; int f(int n) //起到判断正整数是否为素数的作用,返回一个值以标识,是则返回1,否则返回0.{ int i,j=0; for(i=2;i<=sqrt(n);i++) if(n%i==0) j++;if(n==1) return 0; else { if(j==0)return 1; ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网