问题:1) 函数prime(n)的功能是判断正整数n是否为素数;
2) 主函数调用该函数,每行输出10个素数;
3) 判断n是否为素数采用的方法为:若n是素数,则n不能被2~的任何整数整除
代码哪里出错了?:
#include <stdio.h>
#include<math.h>
int main()
{
int n,sum=0;
int prime(int );
printf("请输入:");
scanf_s("%d",&n);
printf("小与等与n的素数如下:\n");
if (n >= 2)
{
printf("%4d", 2);sum++;
}
for (int i = 3;i<=n;i += 2)
{
if (prime(i)== 1)
{
printf("%4d", i);
if (sum!=0 && ++sum%10==0)
printf("\n");
}
}
}
int prime(int N)
{
for (int j = 2;j <= (int)sqrt(N);j++)
{
if (N%j == 0)
return 0;
else
return 1;
}
}
#include <stdio.h>
#include <math.h>
int prime(int N);
int main()
{
int n, sum = 0;
printf("请输入:");
scanf_s("%d", &n);
printf("小于等于n的素数如下:\n");
if (n >= 2)
{
printf("%4d", 2);
sum++;
}
for (int i = 3; i <= n; i += 2)
{
if (prime(i) == 1)
{
printf("%4d", i);
if (sum != 0 && ++sum % 10 == 0)
printf("\n");
}
}
return 0;
}
int prime(int N)
{
for (int j = 2; j <= (int)sqrt(N); j++)
{
if (N % j == 0)
return 0;
}
return 1;
}