[c语言基础]如何判断素数
素数又称质数。所谓素数是指除了 1 和它本身以外,不能被任何整数整除的数,例如17就是素数,因为它不能被 2~16 的任一整数整除。
思路1:因此判断一个整数m是否是素数,只需把 m 被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么 m 就是一个素数。
思路2:另外判断方法还可以简化。m 不必被 2 ~ m-1 之间的每一个整数去除,只需被 2 ~ 之间的每一个整数去除就可以了。如果 m 不能被 2 ~
间任一整数整除,m 必定是素数。例如判别 17 是是否为素数,只需使 17 被 2~4 之间的每一个整数去除,由于都不能整除,可以判定 17 是素数。
只用思路1写了代码,仅供参使用。
1 #include<stdio.h> 2 //判断素数:输入一个数进行判断 3 int tamp = -1;//用于记号 4 int a;//输入的数字 5 Judge(int a) { 6 for (int i = 2; i < a; i++) 7 { 8 if (a % i == 0) { 9 tamp++; 10 } 11 } 12 if (tamp==-1) 13 { 14 printf("%d是素数\n", a); 15 } 16 else 17 { 18 printf("%d不是素数\n", a); 19 } 20 } 21 int main(){ 22 ; scanf_s("%d:", &a); 23 Judge(a); 24 system("pause"); 25 return 0; 26 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通