| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6460 人关注过本帖
标题:如何判断素数?
只看楼主 加入收藏
henji
Rank: 1
等 级:新手上路
帖 子:227
专家分:0
注 册:2009-4-19
结帖率:38.67%
收藏
 问题点数:0 回复次数:7 
如何判断素数?

#include "stdio.h"
#include "math.h"
int main(int argc, char* argv[])
{
   int a, b, c;
   printf("input a:\n");
   scanf("%d",&a);//假如我输入的a=2
   for(b=2; b<a-1;b++)
   {
       c = a%b;//c=2%2,那么c=0
       if(c==0)
           break;
   }

    if(c==0)//那么c==0,岂不是2不是素数呢?
        printf("a数不是prime number");
    if(c!=0)
        printf("a数是prime number");
    return 0;
}
搜索更多相关主题的帖子: 判断 素数 
2009-10-11 18:39
Aion
Rank: 2
等 级:论坛游民
帖 子:19
专家分:52
注 册:2009-10-10
收藏
得分:0 
你这程序问题好多,最严重的是C变量还不初始化

楼主你自己运行过没有?

Admin

专门做题
2009-10-11 18:42
henji
Rank: 1
等 级:新手上路
帖 子:227
专家分:0
注 册:2009-4-19
收藏
得分:0 
运行过了的
2009-10-11 18:50
henji
Rank: 1
等 级:新手上路
帖 子:227
专家分:0
注 册:2009-4-19
收藏
得分:0 
#include "stdafx.h"
 
#include "stdio.h"
#include "math.h"
int main(int argc, char* argv[])
{
    int i,k,m;
    printf("input m:\n");
    scanf("%d",&m);
    k=sqrt(m);
 
    for (i=2;i<=k;i++)  
    {
        if (m%i==0) //当m=7时,这个7%2=1,那么也不对啊
            break;
    }
  
    if (i>=k+1)  
        printf("%d is a prime number\n",m);
    else  
        printf("%d is not a prime number\n",m);
    return 0;
}
2009-10-11 18:52
雷明
Rank: 2
等 级:论坛游民
帖 子:9
专家分:16
注 册:2009-10-11
收藏
得分:0 
我运行了没错啊,
   for (i=2;i<=k;i++)   
    {
        if (m%i==0) //当m=7时,这个7%2=1,再比较1==0为零不执行break
            break;  
    }
这部分就是能整除即跳出
希望能满意
2009-10-11 19:44
刘暮哲
Rank: 2
来 自:江苏
等 级:论坛游民
帖 子:75
专家分:83
注 册:2009-9-25
收藏
得分:0 
是判断是否为素数??

做最好的自己
2009-10-11 19:45
henji
Rank: 1
等 级:新手上路
帖 子:227
专家分:0
注 册:2009-4-19
收藏
得分:0 
恩,是判断素数程序
2009-10-11 19:57
henji
Rank: 1
等 级:新手上路
帖 子:227
专家分:0
注 册:2009-4-19
收藏
得分:0 
是不是当n=7时就可以直接得出7为素数,那还执行if语句里面的条件判断吗?
2009-10-11 20:44
快速回复:如何判断素数?
数据加载中...
 
   



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

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