质数的定义
质数(英文名:Primenumber)又称素数,是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
算法
算法1(时间复杂度n的平方)
int main()
{
int n;
scanf("%d", &n);
int i = 0;
for ( i = 2; i < n; i++)
{
if (n % i == 0)
break;
}
if (i == n)
printf("%d是一个质数", n);
else
printf("%d不是一个质数", n);
return 0;
}
除数从2开始一直到n-1,这期间如果存在一个数 i 使得n& i ==0就退出循环,之后检查 i 的值,如果等于n就是正常的退出,说明了在2到n-1之间没有n的因子,但是如果i小于n就说明是不正常的退出,说明了在2到n-1之间存在n的因子,说明n不是一个质数。