#include
#include
int main()
{
int m;
scanf("%d",&m);
if(m>2)
{
for(int i=2;i<sqrt(m)+1;i++)
{
if(m%i!=0)
printf("是素数");
else
printf("%d不是素数",m);
}
}
else
printf("%d不是素数!",m);
return 0;
}
结果:
6
6不是素数6不是素数
Process returned 0 (0x0) execution time : 3.518 s
Press any key to continue.
#include<stdio.h>
#include <math.h>
int main()
{
int m;
scanf("%d", &m);
int flag = 1;
if (m >= 2)
{
for (int i = 2; i <= sqrt(m); i++)
{
if (m % i == 0)
{
flag = 0;
break;
}
}
}
else
flag = 0;
if (flag)
printf("%d是素数!", m);
else
printf("%d不是素数!", m);
return 0;
}
我想知道我这个错因在哪