| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 651 人关注过本帖
标题:求助啊!~!~!~!~
只看楼主 加入收藏
regulate
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-11-3
收藏
 问题点数:0 回复次数:10 
求助啊!~!~!~!~
#include <stdio.h>
main()
{ int a,i,j=1;
for(a=2;a<=20;a++)
for(i=2;i<a;i++)
while(a%i!==0) j=j*i;
printf("%d",j);
}
输出20以内的全部素数之积

怎么到while那行语句有错误 帮忙找找啊
搜索更多相关主题的帖子: include 
2006-12-20 23:46
mayudong1
Rank: 2
等 级:论坛游民
威 望:1
帖 子:348
专家分:21
注 册:2006-4-18
收藏
得分:0 
以下是引用regulate在2006-12-20 23:46:19的发言:
#include <stdio.h>
main()
{ int a,i,j=1;
for(a=2;a<=20;a++)
for(i=2;i<a;i++)
while(a%i!==0) j=j*i;/*到底是等于还是不等于呢*/
printf("%d",j);
}
输出20以内的全部素数之积

怎么到while那行语句有错误 帮忙找找啊


2006-12-20 23:54
regulate
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-11-3
收藏
得分:0 

是不等于才是素数啊 还有 这位 大哥 先前的那题 改为 strcpy 了 还是不行

2006-12-21 00:28
huyekwok
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-12-15
收藏
得分:0 

不等于是这样写的 !=
只有一个等号

2006-12-21 00:50
emyhello
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2006-1-3
收藏
得分:0 
#include <stdio.h>
#include <math.h>
main()
{ int a,i,j=1,t;
for(a=2;a<=20;a++)
{t=sqrt(a);
for(i=2;i<=t;i++)
if(a%i==0) break;
if (i>t) j=j*a;}
printf("j is: %d",j);
getch ();
}
2006-12-21 17:32
regulate
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-11-3
收藏
得分:0 

谢谢了 我一直都没在意 以为不等于 是 !==

2006-12-21 23:11
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
以下是引用regulate在2006-12-20 23:46:19的发言:
#include <stdio.h>
main()
{ int a,i,j=1;
for(a=2;a<=20;a++)
for(i=2;i<a;i++)
while(a%i!=0) j=j*i;//算法也错了.应该是找到一个素数,再乘过去,这里会多次乘,而且还会死循环.
printf("%d",j);
}
输出20以内的全部素数之积

怎么到while那行语句有错误 帮忙找找啊

for(a=2;a<=20;a++)
{
flag=1;
for(i=2;i*i<a;i++)
{
if(a%i==0)
{
flag=0;
break;
}
}
if(flag)
{
j*=a;
}
}


倚天照海花无数,流水高山心自知。
2006-12-21 23:56
fangfangff
Rank: 1
等 级:新手上路
威 望:2
帖 子:479
专家分:0
注 册:2006-12-22
收藏
得分:0 
#include <stdio.h>
#include <math.h>
void main()
{ int m,i,result=1,k;
for(m=2;m<=20;m++)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)
break;
if (i>k)
result=result*m;
}
printf("The result is: %d\n",result);
}


千里冰封---My Love 尽管相隔千里 , 依然拥有冰封
2006-12-22 12:12
regulate
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2006-11-3
收藏
得分:0 
i*i<a或者k=sqrt(m);
谁告诉下我 为什么要开根
2006-12-22 13:24
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
开根可以节省时间!比如说你要判断12是不是素数!只须从2判断到12的开根,因为以12的开根为分界,如果12在在12的开根之前有一个数m可以整除12,那么在12的开根之后一定存在一个与之对应的数,即为12/m,那么你就只需判断到12的开根了!不需要循环到11了。

该学习了。。。
2006-12-22 13:37
快速回复:求助啊!~!~!~!~
数据加载中...
 
   



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

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