|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 输出2到500之间的素数,不知道错在哪里呀~
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1273
人关注过本帖
标题:
输出2到500之间的素数,不知道错在哪里呀~
只看楼主
加入收藏
二十六度
等 级:
新手上路
帖 子:5
专家分:0
注 册:2013-4-7
结帖率:
0
楼主
收藏
已结贴
√
问题点数:5 回复次数:17
输出2到500之间的素数,不知道错在哪里呀~
#include<stdio.h>
void main()
{
int i,a=0,n,flag;
for(n=2;n<=500;n++)
{for(i=2,flag=1;i<=n;i++)
if(n%i==0)
flag=0;
if(flag==1)
{
printf("%5d",n);
a++;
if(a%10==0)
printf("\n");}
}
}
2013-04-07 16:53
举报帖子
使用道具
赠送鲜花
peach5460
来 自:武汉
等 级:
贵宾
威 望:
30
帖 子:2780
专家分:6060
注 册:2008-1-28
第
2
楼
收藏
得分:1
去学习一下怎么问问题
我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-04-07 17:06
举报帖子
使用道具
赠送鲜花
azzbcc
来 自:江西财经大学
等 级:
贵宾
威 望:
81
帖 子:3293
专家分:12919
注 册:2012-11-4
第
3
楼
收藏
得分:1
n % n = ?
[fly]存在即是合理[/fly]
2013-04-07 17:10
举报帖子
使用道具
赠送鲜花
巩云峰
来 自:大连海事大学
等 级:
新手上路
帖 子:5
专家分:3
注 册:2013-4-7
第
4
楼
收藏
得分:1
#include<stdio.h>
int main()
{
int i,a=0,n,flag;
for(n=2;n<=500;n++)
{for(i=2,flag=1;i<n;i++)
{
if(n%i==0)
flag=0;
}
if(flag==1)
{
printf("%d
",n);
a++;
if(a%10==0)
printf("\n");
}
}
}
2013-04-07 17:20
举报帖子
使用道具
赠送鲜花
巩云峰
来 自:大连海事大学
等 级:
新手上路
帖 子:5
专家分:3
注 册:2013-4-7
第
5
楼
收藏
得分:0
你的算法有问题,素数是只能被1和它本身整除的数,所以找它的因子应该不包括1和它本身,你的程序第六行,将i<=n改成i<n就可以了,如果不改,所有的flag都等于0。
2013-04-07 17:25
举报帖子
使用道具
赠送鲜花
巩云峰
来 自:大连海事大学
等 级:
新手上路
帖 子:5
专家分:3
注 册:2013-4-7
第
6
楼
收藏
得分:0
回复 3楼 azzbcc
一眼道破啊,厉害
2013-04-07 17:26
举报帖子
使用道具
赠送鲜花
邓士林
来 自:淮河河畔
等 级:
贵宾
威 望:
61
帖 子:2392
专家分:13384
注 册:2013-3-3
第
7
楼
收藏
得分:1
if(n%i==0)flag=0;这样是不行的,因为现在已经判断出不是素数了,所以要跳出i的循环,你没有跳出,所以i会循环下去,加上break就可以满足了
Maybe
2013-04-07 17:27
举报帖子
使用道具
赠送鲜花
二十六度
等 级:
新手上路
帖 子:5
专家分:0
注 册:2013-4-7
第
8
楼
收藏
得分:0
回复 5楼 巩云峰
奥,谢谢啊,好厉害呀、
2013-04-07 17:28
举报帖子
使用道具
赠送鲜花
二十六度
等 级:
新手上路
帖 子:5
专家分:0
注 册:2013-4-7
第
9
楼
收藏
得分:0
回复 3楼 azzbcc
好厉害~
2013-04-07 17:29
举报帖子
使用道具
赠送鲜花
二十六度
等 级:
新手上路
帖 子:5
专家分:0
注 册:2013-4-7
第
10
楼
收藏
得分:0
回复 3楼 azzbcc
那如果一个数组里的数都一样,还需要反复输入么。有更简单的方法么?
如:int year[6]={365,365,365,365,365,365}
2013-04-07 17:33
举报帖子
使用道具
赠送鲜花
18
1/2页
1
2
快速回复:
输出2到500之间的素数,不知道错在哪里呀~
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.051815 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved