用C语言编写判断一个数是否是素数的程序
工具/材料
ubuntu,vim,gcc
- 01
打开ubuntu并开启一个终端,输入命令vim is_prime.c,打开编辑页面,输入预处理指令#include<stdio.h>用于在主函数中调用判断函数。然后定义一个函数int is_prime(int n),即判断整数n是否为素数。
- 02
首先,判断这个数是否小于2.若是,则直接返回0,即表示它不是一个素数。
- 03
然后定义中间的因数i,初始值为2。依次使n对i取余数,看n能否整除i,然后令i自增直到i的平方大于n。在这过程中,如果遇到n能整除i,则说明n不是一个素数。如果循环能够直到i的平方大于n才结束,说明n是一个素数。
- 04
接下来,我们使用主函数进行测试,使用printf("%d : %d
", n, is_prime(n))的格式进行输出。如果输出结果为0,说明不为素数;结果为1,说明是一个素数。
测试的数据依次是2,4,9,15, 17, 23, 25。 - 05
退出编辑器vim,然后使用gcc编译并运行它,得到结果。通过结果我们可以看出,预期的结果与我们对于素数的认知是相同的,说明我们的程序编写没有错误。以下是所有的源代码:
#include <stdio.h>
//判断一个数是否为素数的函数定义
int is_prime(int n)
{
//判断n是否小于2.若小于则直接返回0
//表示n不是一个素数
if(n < 2)
return 0;
//定义一个中间变量i,初始化i=2
int i = 2;
//依次判断每一个不大于根号n的i是否能被n整除
for(i = 2; i * i <= n;i++)
{
//如果能够整除
if(n % i == 0)
//直接返回0,表示n不是一个素数
return 0;
}
//如果程序运行到这里,说明i*i大于n
//说明n是一个素数
return 1;
}
int main()
{
printf("%d : %d
", 2, is_prime(2));
printf("%d : %d
", 4, is_prime(4));
printf("%d : %d
", 9, is_prime(9));
printf("%d : %d
", 15, is_prime(15));
printf("%d : %d
", 17, is_prime(17));
printf("%d : %d
", 23, is_prime(23));
printf("%d : %d
", 25, is_prime(25));
return 0;
}
用C语言编写判断一个数是否是素数的程序
1、打开ubuntu并开启一个终端,输入命令vim is_prime.c,打开编辑页面,输入预处理指令#includestdio.h用于在主函数中调用判断函数。然后定义一个函数int is_prime(int n),即判断整数n是否为素数。2、首先,判断这个数是否小于2.若是,则直接返回0,即表示它不是一个素数。3、然后定义中间的因数i,...
用C语言判断一个整数中有没有重复的数
用C语言判断一个整数中有没有重复的数的具体操作步骤如下:1、编写头函数:#include <stdio.h>。2、编写中间的条件:int main(void){ int n,i;int num[10] = {0};scanf("%d", &n);do{ num[n%10]++;}while((n = n\/10) != 0 );3、最后编写条件与结果即可:for(i = 0; i ...
c语言判断给定的一个数是否是基数,偶数,合数,完数,水仙花的代码?_百度...
```c include <stdio.h> \/* 判断是否为奇数 *\/ int is_odd(int num) { return num % 2 != 0;} \/* 判断是否为偶数 *\/ int is_even(int num) { return num % 2 == 0;} \/* 判断是否为质数 *\/ int is_prime(int num) { if (num <= 1) { return 0;} for (int i =...
用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到4范围内
要在C语言中判断一个数字是否在1到4的范围内,你可以使用条件语句(if语句)来实现这个任务。以下是一个示例代码:这段代码首先提示用户输入一个整数,然后使用scanf函数读取用户的输入,并将其存储在变量number中。接下来,使用if语句来检查number是否在1到4的范围内。如果满足条件,就会输出相应的消息,...
用C语言输入一个数,判断是否为偶数可以参考下面的代码吗?
以下是一个简单的C语言程序,用于判断一个数是否为偶数:在这个程序中,我们首先从用户处读取一个整数,然后使用条件语句判断这个数是否为偶数。如果这个数除以2的余数为0,那么它就是偶数,否则它就是奇数。♡♡ 有帮助到的话,麻烦采纳哦!♡♡...
c语言判断一个数是奇数还是偶数
在C语言中,我们可以使用模运算符(%)来判断一个数是奇数还是偶数。模运算符会返回两个数相除的余数。 模运算符(%)在C语言中利用取模运算,也就是求两个整数相除的余数。例如,10%3的结果是1,因为10除以3的余数是1。和模运算符指定输出格式。例如,%d表示输出整数,%f表示输出浮点数,%s表示输出字符串等等。 在...
C语言:编写一个程序,判断一个整数的奇偶性。如果是奇数,输入1,是偶数...
include<stdio.h>void main(){ int n = 0; scanf("%d", &n); \/\/让用户输入数字 printf("%d", n%2 == 0 ? 2 : 1); \/\/判断数字是否能被2整除}请参考上面的代码。
在C语言中,如何判断一个数是奇数还是偶数?
include<stdio.h> int main(){ int s=0,i;for(i=1;i<20;i=i+2){ s+=i;} printf("1-20内的奇数和为%d",s);return 0;}
编写一个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(...
辛侍益爽:[答案] #include "stdio.h" #include "math.h" main() {int i,n,flag=1; printf("Please Input a number:"); scanf("%d",&n); for (i=2;i
长清区15164167741: 用c语言编写:判断一个数是否为素数 - ?
辛侍益爽: 判断素数的方法很多. 以数学方法为例,按照数学规则,如果在2~n-1中存在因子,则n不是素数.否则n为素数. 参考代码如下: int is_prime(int n)//判断n是否为素数.{ int i; for(i = 2; i < n; i ++)//按照数学规则,如果在2~n-1中存在因子,则...
长清区15164167741: 求C语言编程,判断一个数是不是素数 - ?
辛侍益爽: 用6n+1,6n-1,判断简单.筛选法也可以 给出筛选法的代码 #include <stdio .h>#define MAXSIZE 200 #define DELETED 1 #define KEPT 0void main(void) {int sieve[MAXSIZE+1]; /* 待筛数组 */int count = 1; /* 素数总数 */int prime;int i, k;...
长清区15164167741: 如何编写一个C语言程序判断一个数是否是素数? - ?
辛侍益爽: 1. 思路1: 判断一个整数m是否是素数,只需把m被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么m就是一个素数.代码如下: #include <stdio.h> int main(){ int a=0; // 素数的个数 int num=0; // 输入的整数 printf("输入一个整数...
长清区15164167741: 用C语言编程判断一个数是素数 - ?
辛侍益爽: #includeint main() { int i,n,flag=0; printf("请输入一个数:"); scanf("%d",&n); if(n==1||n==0) { printf("不是素数!"); goto loop; } for(i=2;i
长清区15164167741: 用c语言编一个程序,判断一个数是否为素数 - ?
辛侍益爽: #include<stdio.h> #include<math.h> int main() {int i,k,m;int n=0;scanf("%d",&m);//此处m应该用 &mk=sqrt(m)+0.01;//此处类型不匹配.不需要+0.01for(i=2;i<k;i++) //此处错误:当K<16时,根本不会进入循环.改为i<=k{if(m%i==0)...
长清区15164167741: C语言 判断一个数是否为素数??? - ?
辛侍益爽: 原发布者:邂逅枫林 } if(i==val) printf("YES!\n"); else printf("No!\n");}注:for循环的功能:①若能整除,通过break跳出函数②若一直到val-1都不能整除,此时i再自增1到val,不满足i<val跳出for循环,这时i=val.2.通过函数来判断/* 目的:...
长清区15164167741: C语言编程,编写一个“输入一个整数,判断该数是否为素数”的程序 - ?
辛侍益爽: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19//December 17,2014 By 12052010 #include<stdio.h> #include<math.h> boolisPrime(intnum){for(inti=2;i<=sqrt(num);i++)if(num%i==0) returnfalse;returntrue; }intmain(){intnum;printf("\nInput ...
长清区15164167741: C语言:判断某个整数是不是素数. - ?
辛侍益爽: #include"stdio.h" int main(void) { int x,y,t=0; printf("请输入一个整数(1<x<32767):\n"); scanf("%d",&x); if(x<1||x>32767) printf("您的输入有误!\n"); else { for(y=2;y<x-1;y++) if(x%y==0) printf("%d NO!\n",x),y=x+2,t=0;//y=x+2是为了提前退出循环 else t=1; }if (t==1) {printf("%d YES!\n",x); } getch(); return 0;}
长清区15164167741: 如何判断素数的c语言程序 - C素数程序??
辛侍益爽: c语言求素数的思路算法方面,用c语言判断一个数是否为素数的方法其实不止一种.今天我所用编程环境Microsoft Visual C++.那么,什么是素数呢?素数是指,一个大于1的自然数,除了1和它本身外,不能被其他自然数整除(除0以外)的数称之为素数,素数也叫质数.求素数的C语言程序,下面我就给大家带来c语言判断素数的代码算法.