0%

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

文章时效性提示

本文发布于 491 天前,部分信息可能已经改变,请注意甄别。

题目:一个偶数总能表示为两个素数之和

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <stdio.h>
int Is_Prime_Number(int input)//计算Cal_Prime传过来的值是不是素数,是返回0,不是返回1
{
    int i;
    for (i=2; i<input; i++)
    {
        if (input%i==0)
        {
            return 1;
        }
    }
    return 0;
}
void Cal_Prime(int input)
{
    int i = 0;
    int j = 0;
    for (i=2; i<input; i++)//素数最小都是2,从2开始枚举
    {
        j = input - i;//i和j的和就是input
        int a = Is_Prime_Number(i);//看看i是不是素数
        int b = Is_Prime_Number(j);//看看j是不是素数
        if (a!=1 && b!=1)//如果都是素数
        {
            printf("%d + %d = %d",i,j,input);
            break;
        }
    }
}
int main()
{
    int input = 0;
    printf("请输入一个偶数:->");
    scanf("%d",&input);
    Cal_Prime(input);
    return 0;
}