C语言经典例84-一个偶数总能表示为两个素数之和

1 题目

一个偶数总能表示为两个素数之和。

2 分析

暴力法,循环判断 in-i 两个数是否都为素数。

3 实现

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

int isPrime(int n) 
{
    if(n < 2) {
        return 0;
    }
    for(int i = 2; i <= sqrt(n); i++) {
        if(n % i == 0) {
            return 0;
	    }
    }
    return 1;
}

int main()
{
    int n;
    int i;
    printf("请输入一个偶数:");
    scanf("%d",&n);
    for (i = 1; i < n; i++) {
        if (isPrime(i) && isPrime(n-i)) {
            break;
        }
    }
    printf("偶数%d可以分解成%d和%d两个素数的和:", n, i, n-i);
    return 0;
}

4 运行结果

请输入一个偶数:13
偶数13可以分解成211两个素数的和:
发布了125 篇原创文章 · 获赞 199 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/syzdev/article/details/104412196