训练1-S

给出N个正整数,检测每个数是否为质数。如果是,输出"Yes",否则输出"No"。

Input
第1行:一个数N,表示正整数的数量。(1 <= N <= 1000)
第2 - N + 1行:每行1个数(2 <= Si <= 10^9)
Output
输出共N行,每行为 Yes 或 No。

Sample Input
5
2
3
4
5
6
Sample Output
Yes
Yes
No
Yes
No
#include<stdio.h>
#include<math.h>
int main()
{
	int sushu(long n);
	int t;
	scanf("%d",&t);
	while(t--)
	{
		long n,i;                    //数字较大,定义为长整型,
		scanf("%ld",&n);
		if(sushu(n))
		printf("YES\n");
		else
		printf("NO\n");
	}
}

int sushu(long n)                            //判断是否是素数
{
	long i;
	for(i=2;i<=sqrt(n);i++)
	if(n%i==0)                          //如果能被整除,返回0,函数调用结束
	return 0;
	return 1;                           //只会返回一个值,如果上句没有执行,证明是素数,返回1
}

...

posted @ 2018-06-05 18:55  浮生惘语  阅读(110)  评论(0编辑  收藏  举报