用C语言编程 验证“歌德巴赫猜想”4-1000

来源:百度知道 编辑:UC知道 时间:2024/06/02 05:33:16
# include <stdio.h>
void main()
{int sum_day(int,int);
int leap(int year);
int year,month,day,days;
printf("输入日期(年,月,日):");
scanf("%d,%d,%d",&year,&month,&day);
printf("%d/%d/%d",year,month,day);
days=sum_day(month,day);
if(leap(year) && month>=3)
days=days+1;
printf("是这年的第%d天。\n",days);
}
int sum_day(int month,int day)
{int day_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int i;
for(i=1;i<month;i++)
day+=day_tab[i];
return(day);
}
int leap(int year)
{int leap;
leap=year%4==0&&year%100!=0||year%400==0;
return(leap);
}

#include "stdio.h"
#include "conio.h"
#include "math.h"

int isp(int);
void even(int);
int main()
{
int a;
while(1)
{
printf("Enter a even number: \n");
scanf("%d", &a);
if(a % 2 == 0)
even(a);
else
printf("The %d isn't even number\n", a);
}
getchar();
}

void even(int x)
{
int i;
for(i = 2; i <= x / 2; i++)
{
if( isp(i) && isp(x-i) )
{
printf("%d = %d + %d\n", x, i, x - i);
return;
}
}
}

int isp(int x)
{
int i;

for(i = 2; i <= (int)sqrt(x) + 1; i++)
if(x % i == 0)
return false;
//if(i == (int)sqrt(x) + 1)
//return 1;
//else
return 1;
}

你这所答非所问啊!你的答案是求闰年年份,而不是歌德巴赫猜想