用c语言编程序,用函数求素数,调用函数

如题所述

#include <stdio.h>
#include <math.h>
//判断是否为素数的函数
int isPrime(int n)
{
    int i=2;
    while(i<=(int)sqrt(n))
    {
        if(n%i == 0)
            return 0;  //不是素数,直接返回0
        else
            i++;
    }
    return 1;
}
int main()
{
    int n,i;
    printf("输入一个正整数: ");
    scanf("%d",&n);
    for(i=2;i<=n;i++)
{
if(isPrime(i))  //调用函数,如果该数为素数,则输出
printf("%d ",i);
}
printf("\n");
    return 0;
}

示例运行结果:

输入一个正整数: 50

2 3 5 7 11 13 17 19 23 29 31 37 41 43 47

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-10-23
#include<stdio.h>
#include<math.h>

int fun(int n)
{ int i;
for(i=2;i<=sqrt(n);i++)
{
if(n%i==0)
return 0;
}
return 1;
}void main()
{
int n;
printf("请输入一个数:\n");
scanf("%d",&n);
if(fun(n))
printf("该素数是:%d",n);
else
printf("该数不是是素数:\n");
}本回答被网友采纳
第2个回答  2017-12-27
#include<stdio.h>
#include<math.h>

int fun(int n)
{ int i;
for(i=2;i<=sqrt(n);i++)
{
if(n%i==0)
return 0;
}
return 1;
}void main()
{
int n;
printf("请输入一个数:\n");
scanf("%d",&n);
if(fun(n))
printf("该素数是:%d",n);
else
printf("该数不是是素数:\n");
}
第3个回答  2018-05-25
#include<stdio.h>
void main()
{int f(int x);
int a;
printf("输入所需要判断的数");
scanf("%d",&a);
if(f(a))
printf("1\n");
else
printf("0\n");
}
int f(int x)
{
int i;
for(i=2;i<x;i++)
{
if(x%i!=0)
{
if(i==(x-1))
return 1;
}
else
return 0;
}
}