c语言孪生素数问题_c语言 孪生素数

孪生素数

相差为2的两个素数称为孪生素数。例如,3与5,41与43等都是孪生素数。设计程序求出指定区间上的所有孪生素数对。区间上限和下限由键盘获取。

程序运行示例如下:

please input c,d(c>2):

10,200↙

(11,13)

(17,19)

(29,31)

(41,43)

(59,61)

(71,73)

(101,103)

(107,109)

(137,139)

(149,151)

(179,181)

(191,193)

(197,199)

total=13

输入格式:

区间上限和下限的输入格式: "%ld,%ld"

输出格式:

区间上限和下限的输入提示信息:"please input c,d(c>2):\n"

孪生素数的输出格式:"(%ld,%ld)\n"

所有孪生素数对的总数输出格式: "total=%d\n"

#include#includeint isPrime(int num){    int i;    for(i=2; i<=sqrt(num); i++)    {        if(num%i==0)        {            return 0;        }    }    return 1;}int main(){    int i,temp,a,b,total=0;    temp=2;    printf("please input c,d(c>2):\n");    scanf("%ld,%ld",&a,&b);    for(i=a; i<=b; i++)    {        if(isPrime(i))        {            if(i-temp==2)            {                printf("(%ld,%ld)\n",temp,i);                total++;            }            temp=i;        }    }    printf("total=%d\n",total);    return 0;}