1. 程式人生 > >L1-028 判斷素數(C語言版)

L1-028 判斷素數(C語言版)

L1-028 判斷素數 (10 分) 本題的目標很簡單,就是判斷一個給定的正整數是否素數。 輸入格式: 輸入在第一行給出一個正整數N(≤ 10),隨後N行,每行給出一個小於2 ^​31 的需要判斷的正整數。 輸出格式: 對每個需要判斷的正整數,如果它是素數,則在一行中輸出Yes,否則輸出No。

輸入樣例:

2
11
111

輸出樣例:

Yes
No

參考程式碼:

#include<stdio.h>
#include<math.h>
int sushu(int n);
int main()
{
	int m=1,i;
	scanf("%d",&m);
	int s[m];
	for(i=0;i<m;i++)
	{
		scanf("%d",&s[i]);
	}
		for(i=0;i<m;i++)
	{
			if(sushu(s[i])==1) 
			{
				printf("Yes\n");
			}
			else 
			{
				printf("No\n");				
			}
	}
}
int sushu(int n)
{
	int i,sign=1;
	if(n==1) sign=0;
	for(i=2;i<=sqrt(n);i++)
	{
		if(n%i==0)
		{
			sign=0;
			break;
		}
	}
	return sign;
}