转换为函数

Converting into a function

这个程序对我来说工作得很好,但我一直在努力寻找一种方法来包含一个函数,该函数可以找到我正在寻找的素数。我只是不明白如何将函数放入我的程序中。该程序在给定区间内找到孪生素数以防万一。

#include <stdio.h>
#include <math.h>

void main()
{
    int low, high, n, count, i;
    scanf ("%d %d", &low, &high);
            count=0;
            n=0;
    if (low<=3)
        count=count+1;
    while (n<low)
        n=n+6;
    while (n<high) {
        i=1;
        int check;
                    check=0;
        while (i*i<n+1) {
            i=i+1;
            if ((n-1)%i==0 || (n+1)%i==0)
                check=1;
        }
        if (check!=1)
            count=count+1;
        n=n+6;
    }
    printf("There are %d twin primes between %d and %d\n", count, low, high);
        printf(" \n");
}

这是你想要的吗?

int findprime(int low, int high) {
    int n, count, i;

    count = 0;
    n     = 0;
    if (low <= 3)
        count = count + 1;
    while (n < low)
        n = n + 6;
    while (n < high) {
        int check;

        i     = 1;
        check = 0;
        while (i * i < n + 1) {
            i = i + 1;
            if ((n - 1) %i == 0 || (n + 1) % i == 0)
                check = 1;
        }
        if (check != 1)
            count = count + 1;
        n = n + 6;
    }
    return count;
}

int main() {
    int low, high, count;
    count = 0;
    if (scanf("%d %d", &low, &high) == 2) {
        count = findprime(low, high);
        printf("There are %d twin primes between %d and %d\n\n", count, low, high);
    } else {
        printf("Invalid input recieved.\n\n");
        return -1;
    }
    return 0;
}