3.6
输入一个整数,判断n是否为素数。
输入:7
输出:YES
输入:9
输出:NO
法一
#include<stdio.h>
int main()
{
int a,n,i=2;
scanf_s("%d", &a);
for (n = 2; n < a; n++) //n=2出发可以免去因子1的判断,n<a可以免去因子n本身的判断
{
if (a%n != 0) //输入a=5,i和n:起初2,2 3,3 4,4 5,5
i++;
}
if (i == a)
printf("YES");
else
printf("NO");
system("pause");
return 0;
}
法二
#include<stdio.h>
int main()
{
int n, i, a = 0;
char b[5] = "YES";
b[3] = '\0';
char c[3] = "NO";
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
if (n%i == 0)
{
a = a + 1;
}
else a = a;
}
if (a <= 2)
{
printf("%s", b);
}
else printf("%s", c);
return 0;
}