Skip to content

Latest commit

 

History

History
62 lines (47 loc) · 1.74 KB

91.md

File metadata and controls

62 lines (47 loc) · 1.74 KB

C 程序:使用函数显示区间内的质数

原文: https://www.programiz.com/c-programming/examples/prime-interval-function

在此示例中,您将学习如何打印两个数字之间的所有质数(由用户输入)。

要理解此示例,您应该了解以下 C 编程主题:


为了找到两个整数之间的所有质数,创建了checkPrimeNumber()。 此函数检查数字是否为质数


两个整数之间的质数

#include <stdio.h>
int checkPrimeNumber(int n);
int main() {
    int n1, n2, i, flag;
    printf("Enter two positive integers: ");
    scanf("%d %d", &n1, &n2);
    printf("Prime numbers between %d and %d are: ", n1, n2);
    for (i = n1 + 1; i < n2; ++i) {

        // flag will be equal to 1 if i is prime
        flag = checkPrimeNumber(i);

        if (flag == 1)
            printf("%d ", i);
    }
    return 0;
}

// user-defined function to check prime number
int checkPrimeNumber(int n) {
    int j, flag = 1;
    for (j = 2; j <= n / 2; ++j) {
        if (n % j == 0) {
            flag = 0;
            break;
        }
    }
    return flag;
} 

输出

Enter two positive integers: 12
30
Prime numbers between 12 and 30 are: 13 17 19 23 29 

如果用户首先输入较大的数字,则该程序将无法正常工作。 要解决此问题,您需要先交换数字。