| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1054 人关注过本帖
标题:求素数程序,求解!!!
只看楼主 加入收藏
寂寞编程孤独
Rank: 1
等 级:新手上路
帖 子:20
专家分:6
注 册:2010-10-26
结帖率:57.14%
收藏
已结贴  问题点数:20 回复次数:3 
求素数程序,求解!!!
#include"stdafx.h"
#include"math.h"
main()
{
int m,i,k;
scanf("%d",&m);
k=sqrt(m);
for(i=2;i<=k;i++)
   if(m%i==0) break;
if(i>k) printf("%d%d",m,i);
else printf("no");
}
想问一下,在for语句中不是定义了i小于k了吗?怎么后面会出现if(i>k)
搜索更多相关主题的帖子: 素数 求解 
2010-11-24 22:58
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:10 
它就是想看看是 for 循环正常退出的还是 break 的作用。
2010-11-24 23:22
寂寞编程孤独
Rank: 1
等 级:新手上路
帖 子:20
专家分:6
注 册:2010-10-26
收藏
得分:0 
哦,恍然大悟啊,那如果m是素数的话,那i是大于k的,i有确定值没有咯??
2010-11-24 23:44
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
收藏
得分:10 
以下是引用寂寞编程孤独在2010-11-24 23:44:24的发言:

哦,恍然大悟啊,那如果m是素数的话,那i是大于k的,i有确定值没有咯??
you are right.
如果i不是素数的话,循环式从break跳出来的。
如果i是素数的话,循环式因为不满足循环条件i<=k,而终止的。
所以如果i是素数的话,那么循环结束的时候i的值必定是k+1
所以当然i>k

南国利剑
2010-11-25 01:35
快速回复:求素数程序,求解!!!
数据加载中...
 
   



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

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