c语言编辑程序问题1

找m,n区间内所有的栾生素数并输出。栾生素数是指差为2的两个素数,例如,3和5,5和7。
①编马函数int prime(int n),判断素数。
② 编写main函数,接收键盘输入的m和n的值,寻找m,n区间内所有的李生素数并输出,并将车生素数的对数输出,若区问内没有孪生素数,则输出“该区间内无孪生素数”。

判断素数的方法是:i从2到n循环,如果n能被i整除,则n不是素数

#include<iostream>
using namespace std;
int prime(int n){
    for(int i = 2;i * i <= n;i++){
        if(n % i == 0){
            return 0;
        }
    }
    return 1;
}
int main(){
    int m,n,cnt = 0;
    cin >> m >> n;
    for(int i = m;i <= n;i++){
        if(prime(i) && prime(i + 2)){
            cnt++;
        }
    }
    if(cnt > 0){
        cout << cnt;
        return 0;
    }else{
        cout << "该区间内无孪生素数"; 
    }
    return 0;
}


#include<stdio.h>

int prime(int n)//函数判断是否为素数
{
    for (int i=2; i * i<=n; i++)
    {
        if ( n%i == 0 )
            return 0;
    }
    return 1;
}

int main(void)
{
    int N, M;
    int count=0;//count存放组数
    scanf("%d", &M);
    scanf("%d",&N);
    for(int i=M; i<=N; i++)
    {
        if(prime(i)==1 && prime(i+2)==1)//判断i和i+2是否同为孪生素数
        {
            printf("%5d 和 %5d 是孪生素数\n",i,i+2);
            count++;//组数+1
        }
    }
  if (count > 0 ){
      printf("\n总共有%d组孪生素数",count);
  } else {
      printf("\n该区间内无孪生素数");
  }

    return 0;
}


不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^