C语言证明一个偶数总能表示为两个素数之和。输入一个偶数并将其分解为两个素数

完整代码:

复制代码
// 一个偶数总能表示为两个素数之和。输入一个偶数并将其分解为两个素数

#include<stdio.h>

//判断一个数n是否为素数
int isPrimeNumber(int n){
    //1不是素数
    if (n==1)
    {
        return 0;
    }
    for (int i = 2; i <=(n/2); i++)
    {
        //当有n能被整除时,不是素数
        if ((n%i)==0)
        {
            return 0;
        }
    }
    return 1;
} 

int main(){
    int n;
    printf("请输入一个大于二的偶数:");
    scanf("%d",&n);
    for (int i = 1; i < n; i++)
    {
        //i是素数并且n-i也是素数时就满足题意
        if (isPrimeNumber(i)&&isPrimeNumber(n-i))
        {
            printf("%d=%d+%d",n,i,n-i);
            //输出结果后跳出循环,不然有两个或多个结果
            break;
        }
    }
    return 0;
}

运行截图:

相关推荐
phltxy8 小时前
C语言操作符详解
java·c语言·算法
RuoZoe9 小时前
从 2026 年 3 月 1 日开源,到 26.10.9:Jalium UI 半年时间到底走了多远?
c语言·c++
aqiu1111119 小时前
【LeetCode 902】最大为 N 的数字组合 - 详细题解与数位组合思路
数据结构·算法·leetcode·蓝桥杯·数位dp
辰烨chenye10 小时前
LeetCode Hot 100 题解 · 哈希篇
算法·leetcode·哈希算法
罗西的思考10 小时前
DreamZero 与 DreamDojo:世界模型与策略的分层协同综合分析与对比
人工智能·算法·机器学习
玖玥拾11 小时前
LeetCode 219 存在重复元素 II
算法·leetcode·哈希算法·散列表
知无不研12 小时前
c语言中循环的介绍与简单应用
c语言·开发语言·算法·循环·for·while
a1879272183113 小时前
【算法】动态规划第四篇:背包收官——min 哨兵、计数世界与组合排列分水岭
算法·leetcode·动态规划·dp·01背包·算法讲解·决策合并
HRTOS13 小时前
HRTOS 4.0 驱动库:06_Storage 存储设备驱动——24C02 EEPROM与I²C驱动开发
c语言·驱动开发·嵌入式硬件·51单片机