1. 程式人生 > >ZZULIOJ.1093: 驗證哥德巴赫猜想

ZZULIOJ.1093: 驗證哥德巴赫猜想

1093: 驗證哥德巴赫猜想(函式專題)

題目描述

哥德巴赫猜想大家都知道一點吧。我們現在不是想證明這個結論,而是對於任給的一個不小於6的偶數,來尋找和等於該偶數的所有素數對。做好了這件實事,就能說明這個猜想是成立的。

要求程式定義一個prime()函式和一個main()函式,prime()函式判斷一個整數n是否是素數,其餘功能在main()函式中實現。

int prime(int n)
{
//判斷n是否為素數, 若n為素數,本函式返回1,否則返回0
}

對於C/C++程式碼的提交,本題要求必須通過定義prime函式和main函式實現,否則,提交編譯錯誤,要提交完整的程式。

輸入
一個偶數M (M是6到1000000之間的一個偶數).

輸出
輸出和等於該偶數的所有素數對a和b,按a遞增的順序輸出,(a,b)和(b,a)被視為同一個素數對。

樣例輸入
40
樣例輸出
3 37
11 29
17 23

#include<stdio.h>
#include<math.h>
int prime(int n)
{
   for(int i=2;i<=sqrt(n);i++)
   if(n%i==0) return 0;
   return 1;
}
int main()
{
   int m,n,j,y=0;
   scanf("%d%d",&m,&n);
   for(j=m;j<=n;
j++) { y=prime(j); if(j==1&&y==1) continue; if(y==1) { printf("%d",j); printf(" "); } } return 0; }