| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3589 人关注过本帖
标题:[求助]一个偶数表示两个奇数之和。
只看楼主 加入收藏
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
呵呵!我只比录取分数线高一分。管它什么大学,有实力就行啊,自己努力就行,我现在不是很菜嘛!

该学习了。。。
2006-11-05 17:32
yuchujin
Rank: 1
等 级:新手上路
帖 子:50
专家分:0
注 册:2006-7-25
收藏
得分:0 
你刚学啊~ 我现在大2 自己自学了一年了 我们的老师不怎么教的 一学期教到循环。。。呵呵 他老是说他以前是搞卫星的。。。。
建议用潭浩强写的C语言书 真的是非常经典
我看那本书到现在 基本上没有什么问题的


........晕 这个BBS不能贴图.......... G-G-G-G-G-G-G-UNIT
2006-11-05 17:34
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
管它什么大学,有实力就行啊,自己努力就行,
这句话好.

初学用他那本可以.
呵呵,有的时候你会发现他书上也有许多没讲清...,那也是没办法,讲清了,怕我们都不懂.

倚天照海花无数,流水高山心自知。
2006-11-05 17:39
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
谢谢了!有时间看一看!

该学习了。。。
2006-11-05 17:40
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
呵呵,这样夸我我会骄傲的。呵呵,以后我会经常来向请教你们,麻烦你们的!

该学习了。。。
2006-11-05 17:46
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 

还是那里不对!细心的看一下!
#include <stdio.h>
#include <stdlib.h>

int sum(long a)
{
long i = 2;
while(i*i<a)
{
if(a%i==0)
{
return(0);
}
i++;
}
return(1);
}
int main()
{
long a, num;
while(EOF != (scanf("%ld", &num)) && num%2==0&&num!=0)
{
a = 3;
while(a < num)
{
if(sum(a)&&sum(num - a))
{
printf("%ld = %ld + %ld\n", num, a,num - a);
break;
}
a += 2;
}
if(!(sum(a)&&sum(num - a)))
printf("Goldbach's conjecture is wrong.\n");
}

return 0;
}


该学习了。。。
2006-11-05 18:49
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
以下是引用zhanghuan_10在2006-11-5 18:49:48的发言:

还是那里不对!细心的看一下!
#include <stdio.h>
#include <stdlib.h>

int sum(long a)
{
long i = 2;
while(i*i<a)
{
if(a%i==0)
{
return(0);
}
i++;
}
return(1);
}
int main()
{
long a, num;
while(EOF != (scanf("%ld", &num)) && num%2==0&&num!=0)
{
a = 3;
while(a < num)
{
if(sum(a)&&sum(num - a))
{
printf("%ld = %ld + %ld\n", num, a,num - a);
break;
}
a += 2;
}
if(!(sum(a)&&sum(num - a)))
printf("Goldbach's conjecture is wrong.\n");//这个是题目的要求吗?我没注意,应该这条执行不到吧.

}

return 0;
}

其实是一样的,每个偶数总能找到这样的两个质数,并且绝对不会超过num/2,所以我用while(1)也是可以的.


倚天照海花无数,流水高山心自知。
2006-11-05 18:54
suifengjita
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2006-10-12
收藏
得分:0 

#include<stdio.h>
int main()
{
int num1,num2,num3,zero;
int function1(int);
printf("enter in 3 even numbers(6<=num<=10000)and enter 0 to continue:");
scanf("%d%d%d",&num1,&num2,&num3);
scanf("%d",&zero);
while(1)
{if(zero==0)
break;
else
scanf("%d",&zero);}
function1(num1);
function1(num2);
function1(num3);

return 0;
}


void function1(int num)
{
int a,b,c,d,m,n;
int k=0,l=0;
for(a=3;a<=num-3;++a)
{
b=num-a;
for(c=2;c<a;++c)
{
m=a%c;
if(m!=0)
++k;

}
for(d=2;d<b;++d)
{
n=b%d;
if(n!=0)
++l;

}
if(k==a-2&&l==b-2)
printf("%d=%d+%d\n",num,a,b);

}
}
这个程序哪里不对?
为什么只有能用3+?的才可以

2006-11-05 19:46
☆註⊙諨☆
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2006-10-7
收藏
得分:0 

#include<stdio.h>
int main()
{
int num1,num2,num3,zero;
int function1(int);
printf("enter in 3 even numbers(6<=num<=10000)and enter 0 to continue:");
scanf("%d%d%d",&num1,&num2,&num3);
scanf("%d",&zero);
while(1)
{if(zero==0)
break;
else
scanf("%d",&zero);}
function1(num1);
function1(num2);
function1(num3);

return 0;
}


void function1(int num)
{
int a,b,c,d,m,n;
int k=0,l=0;
for(a=3;a<=num-3;++a)
{
b=num-a;
for(c=2;c<a;++c)
{
m=a%c;
if(m!=0)
++k;

}
for(d=2;d<b;++d)
{
n=b%d;
if(n!=0)
++l;

}
if(k==a-2&&l==b-2)
printf("%d=%d+%d\n",num,a,b);

}
}

你不觉得红色这块你定义的时候有问题吗? 外部定义问题?


2006-11-05 20:09
suifengjita
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2006-10-12
收藏
得分:0 
那是使用函数,没有问题的,我感觉是下面写函数时哪里不太对
2006-11-05 20:59
快速回复:[求助]一个偶数表示两个奇数之和。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021383 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved