素数是什么?
素数是除了1和它本身其他数都除不尽的数。
解题思路
题目:判断n是否为素数。
从2~n-1一个一个试,又因为平方根左右两边除都一样,只要除到根号它本身就行,即遍历范围为2~根号n,令根号n=k,所以看n能否被这其间任意一个数整除,只要有一个数能整除n,即i取余n等于0,不是素数,则跳出循环。判断i>k,如果i>k,即i在for循环中一直从2到k,依旧不能除尽n,执行i++,所以此时i=k+1,显然大于k,即为素数。
代码如下:
#include<stdio.h>
#include<math.h>
int main()
{
int i,n;
double k;
do
{
scanf("%d",&n);
}while(n<2);
k=sqrt(n);
for(i=2;i<=k;i++)
if(n%i==0) break;
if(i>k) printf("Yes");
else printf("No");
return 0;
}