当前位置: 代码迷 >> 综合 >> ZQOJ 1092: 素数表(函数专题)
  详细解决方案

ZQOJ 1092: 素数表(函数专题)

热度:57   发布时间:2024-01-26 13:28:48.0

题目描述

 输入两个正整数m和n,输出m和n之间的所有素数。 
要求程序定义一个prime()函数和一个main()函数,prime()函数判断一个整数n是否是素数,其余功能在main()函数中实现。 

int prime(int n) 

//判断n是否为素数, 若n为素数,本函数返回1,否则返回0 

对于C/C++代码的提交,本题要求必须通过定义prime函数和main函数实现,否则,提交编译错误,要提交完整的程序。

输入

 输入两个正整数m和n,m<=n,且都在int范围内。 

输出

 输出占一行。输出m和n之间的所有素数,每个数后有一个空格。测试数据保证m到n之间一定有素数。

样例输入

2 6

样例输出

2 3 5

 

#include<stdio.h>

#include<math.h>

int prime(int n)

{

    int k;

    int i;

    if (n == 1)

    {

        return 0;

    }

    

    k = (int)sqrt(n);

    

    for (i = 2; i <= k; i++)

    {

        if(n % i == 0)

        {

            return 0;

        }

    }

    

    return 1;

}

 

int main()

{

    int m, n;

    int a;

 

    scanf("%d%d", &m, &n);

 

    for (int i = m; i <= n; i++)

    {

        a = prime(i);

        

        if (a == 1)

        {

            printf("%d ", i);

        }

    }

 

    return 0;

}