Sunnnnn_y 2021-11-06 15:22 采纳率: 100%
浏览 151
已结题

任何一个大于6的偶数均可表示为2个素数之和。将6~100之间的偶数都表示成2个素数之和,打印时一行打印5组。要求定义并调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。

任何一个大于6的偶数均可表示为2个素数之和。例如6=3 3,8=3 5,…,18=5 13。将6~100之间的偶数都表示成2个素数之和,打印时一行打印5组。素数就是只能被1和自身整除的正整数,最小的素数是2。要求定义并调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。

img

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2021-11-06 17:44
    关注

    供参考:

    #include<stdio.h>
    int  isPrime(int n)
    {
        int i;
        if(n<=3) return n>1;
        for(i=2;i*i<=n;i++)
           if(n%i == 0) return 0;
        return 1;
    }
    int main()
    {
        int i,n,flg=0;
        for(n = 6; n <= 100; n+=2)
        {
            for(i = 2; i <= n/2; i++){
                if(isPrime(i) && isPrime(n-i)){
                    if(flg==0)
                       printf("%3d=%2d+%2d",n,i,n-i);
                    else if(flg%5==0)
                       printf("\n%3d=%2d+%2d",n,i,n-i);
                    else
                       printf(" %3d=%2d+%2d",n,i,n-i);
                    flg++;
                    break;
                }
            }
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月14日
  • 已采纳回答 11月6日
  • 创建了问题 11月6日

悬赏问题

  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?
  • ¥15 讲解电路图,付费求解
  • ¥15 有偿请教计算电磁学的问题涉及到空间中时域UTD和FDTD算法结合的
  • ¥15 three.js添加后处理以后模型锯齿化严重