好房网

网站首页问答百科 >正文

c语言判断一个数是素数的程序怎么写(用C语言编写判断一个数是否是素数的程序)

2022-06-05 06:51:37 问答百科来源:
导读相信目前很多小伙伴对于用C语言编写判断一个数是否是素数的程序都比较感兴趣,那么小搜今天在网上也是收集了一些与用C语言编写判断一个数是...

相信目前很多小伙伴对于用C语言编写判断一个数是否是素数的程序都比较感兴趣,那么小搜今天在网上也是收集了一些与用C语言编写判断一个数是否是素数的程序相关的信息来分享给大家,希望能够帮助到大家哦。

1、首先,判断这个数是否小于2.若是,则直接返回0,即表示它不是一个素数。

2、然后定义中间的因数i,初始值为2。依次使n对i取余数,看n能否整除i,然后令i自增直到i的平方大于n。在这过程中,如果遇到n能整除i,则说明n不是一个素数。如果循环能够直到i的平方大于n才结束,说明n是一个素数。

3、接下来,我们使用主函数进行测试,使用printf("%d : %d\n", n, is_prime(n))的格式进行输出。如果输出结果为0,说明不为素数;结果为1,说明是一个素数。测试的数据依次是2,4,9,15, 17, 23, 25。

4、退出编辑器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\n", 2, is_prime(2)); printf("%d : %d\n", 4, is_prime(4)); printf("%d : %d\n", 9, is_prime(9)); printf("%d : %d\n", 15, is_prime(15)); printf("%d : %d\n", 17, is_prime(17)); printf("%d : %d\n", 23, is_prime(23)); printf("%d : %d\n", 25, is_prime(25)); return 0;}

本文到此结束,希望对大家有所帮助。


版权说明:本文由用户上传,如有侵权请联系删除!


标签:

热点推荐
热评文章
随机文章