7-7 判断一个整数是否为素数 (15 分)

本题要求编写程序,判断一个给定的整数是否为素数。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。

输入格式:
输入在一行中给出一个需要判断的整数 M(−2e​31≤M≤2e​31 −1)。

输出格式:
如果M是素数,则在一行中输出Yes,否则输出No。如果输入了非正整数,也要输出No。

输入样例1:
11
输出样例1:
Yes
输入样例2:
9
输出样例2:
No
输入样例3:
-2
输出样例3:
No
程序清单:

#include<stdio.h>
#include<math.h>
int main()
{
	int a,n=2,k=1;float limit;
	scanf("%d",&a);
	limit=sqrt(a);
	if(a<=0||a==1){k=0;printf("No");}
	else
	{while(n<=limit)
	{
		
		if(a%n==0)
		{
			k=0;printf("No");
			break;
		}
		n++;
	}
	}
	if(k==1){printf("Yes");}
}