int main()
{
int input = 0;
scanf_s("%d",&input);
if (input < 2)
{
printf("wrong input");
return 0;
}
for (int i = 2; i < input; i++)
{
if (input % i == 0)//能整除說明不是素數
{
printf("not prime");//不是素數就不要循環下去了
return 0;
}
}
//如果流程到了這里,說明input已經對i到input-1這中間所有的整數都嘗試過了
//而且都不能整除,說明是素數。
printf("is prime");
return 1;
今天又想出了一種方法,感覺這種比較好理解。
int main()
{
int Isprime ;//素數標志,如果一個數是素數,它的結果就是1,不是它的結果即使0
int input = 0;
scanf_s("%d", &input);
if (input < 2)
{
printf("wrong input ");
return 0;
}
for (int i = 2; i < input; i++)
{
if (input%i == 0)
{
Isprime = 0;//不是素數
break;// 不是素數就不用往下循環了,直接跳出來。
}
else
{
Isprime = 1;
}
}
if (Isprime == 1)
{
printf("is prime\n");
}
else
{
printf("not prime\n");
}
}
