有客在学习C语言的过程中,遇到素数判断这一问题,一开始始终没搞明白素数是什么,如何去判断素数?
将案例写下来留给后来者,方便学习。
素数条件,除1和它本身,不能被任何整数整除的数。
比如 n(被除数)除 2~(n-1) ,如果都不能整数,说明该数为素数。(https://www.soutuyun.com)
#define _CRT_SECURE_NO_WARNINGS //c文件使用了strcpy,scanf等不安全的函数,而报警告和错误,而导致无法编译通过。 #include <stdio.h> int main() { int s = 0, b = 0, c = 0, i = 2; //printf("请输入一个大于或等于3的正整数:"); scanf("%d,", &s); //printf("输入数字打印为:%d\n", s); if (s < 3) { printf("\n您输入的数字小于3,请重新输入.\n"); } else { while (i < s) { b = s % i; printf("i=%d b=%d\n",i,b); if (b == 0){ c = c + 0; break; } else { c = c + 1; } printf("c=%d\n", c); i = i + 1; } if (c == 0) { printf("您输入的数字不是素数。\n"); } else { printf("您输入的数字是素数。\n"); } } printf("搜图云 https://www.soutuyun.com\n"); return 0; }
可以看素数图对比下,运行结果是否有错误: