重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
供参考
十余年专注成都网站制作,成都企业网站定制,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于成都企业网站定制,高端网页制作,对服务器托管等多个方面,拥有丰富的网站建设经验。
#include stdio.h
int prime(int n)
{
int i;
if(n == 2) return 1;
if(n % 2 == 0) return 0;
for(i = 3; i n/2; i +=2)
if(n % i == 0) return 0;
return 1;
}
void gotbaha(int n)
{
int i;
for(i = 3; i n; i +=2)
if(prime(i) prime(n-i))
{
printf("%d %d\n",i, n-i);
return;
}
}
int main()
{
int n,t;
scanf("%d", t);
while(t --)
{
scanf("%d", n);
gotbaha(n);
}
return 0;
}
是否有问题? 有问题请追问 没问题请采纳
测试结果:
哥德巴赫猜想,请输入一个数n:
34
猜想:34=3+31
猜想:34=5+29
猜想:34=11+23
猜想:34=17+17
猜想:34=23+11
猜想:34=29+5
猜想:34=31+3
请按任意键继续. . .
代码:
#include "stdio.h"
#include "stdlib.h"
int isPrimeNumber(int n)
{
int i;
for(i=2;i=n/2;i++)
{
if(n%i==0)
return 0;
}
return 1;
}
int gotbaha(int n)
{
int i;
for(i=2;in;i++)
{
if(isPrimeNumber(i)isPrimeNumber(n-i))
{
printf("猜想:%d=%d+%d\n",n,i,n-i);
}
}
}
main()
{
int n;
printf("哥德巴赫猜想,请输入一个数n:\n");
scanf("%d",n);
gotbaha(n);
system("pause");
}
说明:楼主的思路很清晰,代码实现起来很顺手!
1:输入一个数n
2:哥德巴赫从2开始到n-1 一旦 i和n-i都是素数那么就打印出这个拆分结果
3:判断素数函数独立出来。
要显示不重复的:
哥德巴赫猜想,请输入一个数n:
34
猜想:34=3+31
猜想:34=5+29
猜想:34=11+23
猜想:34=17+17
请按任意键继续. . .
将int gotbaha(int n)
{
int i;
for(i=2;i=n/2;i++) 【i=n/2】即可
楼主好运!PS:Negamax编写!
#include stdio.h
int prime(int x);
void gotbaha(int n);
int main()
{
int n;
printf("请输入一个大于6的偶数\n");
scanf("%d",n);
gotbaha(n);
return 0;
}
void gotbaha(int n)
{
for(int i=2;i=n/2;i++)
if(isprime(i)isprime(n-i))
printf("%d=%d+%d ",n,i,n-i);
}
int isprime(int x)
{
int i;
for(i=2;ix;i++)
if(x%i==0)
return 0;
return 1;
}
#includestdio.h
int stack[100];
int top;
int total,n;
void dfs(int index)
{
int i;
if(total==n)
{
printf("%d=",n);
for(i=top-1;i0;i--)
printf("%d+",stack[i]);
printf("%d\n",stack[0]);
}
if(totaln )
return ;
for(i=n-1;i=index;i--)
{
total+=i;
stack[top++]=i;
dfs(i);
total-=i;
stack[--top];
}
}
void main()
{
while(scanf("%d",n)!=EOF)
{
top=0;
total=0;
dfs(1);
}
}
前面两道题。。