| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 11448 人关注过本帖
标题:求助 求1到100的素数
只看楼主 加入收藏
日月凡尘
Rank: 1
来 自:四川内江市中区
等 级:新手上路
帖 子:38
专家分:0
注 册:2008-4-22
收藏
 问题点数:0 回复次数:22 
求助 求1到100的素数
#include<stdio.h>
void main()
{
    int j,find;
    int prime(int m);
    for(j=2;j<=100;j++)
    {    find=prime(j);
        if(find)
        printf("%d\t",j);
    }
}
/*函数的功能:判断一个数是否是素数;
函数参数:m;
返回值:有。
*/
int prime(int m)
{
    int k,i;
    for(i=2;i<m;i++)
    {
        k=m/i;
        if(k==0)break;

    }
    if(i<m)
    return 1;
    else
    return 0;
}为什么没有输出结果呢?
搜索更多相关主题的帖子: 素数 
2008-04-22 21:59
yd4433
Rank: 1
等 级:新手上路
帖 子:404
专家分:0
注 册:2008-3-9
收藏
得分:0 
#include <stdio.h>
#include <math.h>
int spt( int n)
{  int a,i;
    a=(int)sqrt(n); i=0;
        if(n & 1)
        for(i=3; i<=a; i+=2)
        {
            if(n%i== 0) break;
        }
        if (i<=a)
           return 1;
        else
            return 0;
}
int main()
{
    int number;
            for(number=1;number<=100;number++)
        {    if(spt(number)==0)
            printf("是素数");   
             else
                  printf("bu shisushu");
        
          }
    return 0;
}

------...-.-..-...-----........-------.......----.....------....||- - !
2008-04-22 22:04
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
LZ今年几何??那里k=m/i是得到取出因子i后的值

樱花大战,  有爱.
2008-04-22 22:06
日月凡尘
Rank: 1
来 自:四川内江市中区
等 级:新手上路
帖 子:38
专家分:0
注 册:2008-4-22
收藏
得分:0 
我是菜鸟,不好意思
我刚学C,也许有些问题显得很幼稚
2008-04-22 22:10
日月凡尘
Rank: 1
来 自:四川内江市中区
等 级:新手上路
帖 子:38
专家分:0
注 册:2008-4-22
收藏
得分:0 
日月凡尘
我想知道我写的那个程序哪里出了问题?
2008-04-22 22:13
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
你得素数判断就出问题乐

樱花大战,  有爱.
2008-04-22 22:15
日月凡尘
Rank: 1
来 自:四川内江市中区
等 级:新手上路
帖 子:38
专家分:0
注 册:2008-4-22
收藏
得分:0 
高人指点一下啊
我就是不知道怎么才能输出结果?
2008-04-22 22:44
张大勇
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-4-4
收藏
得分:0 
k=m/i;应该改为k=m%i;
if(i<m)这个条件应改为i==m
程序如下,





#include<stdio.h>
void main()
{
    int j,find;
    int prime(int );
    for(j=2;j<=100;j++)
    {    find=prime(j);
        if(find)
        printf("%d\t",j);
    }
}
/*函数的功能:判断一个数是否是素数;
函数参数:m;
返回值:有。
*/
int prime(int m)
{
    int k,i;
    for(i=2;i<m;i++)
    {
        k=m%i;
        if(k==0)break;

    }
    if(i==m)
    return 1;
    else
    return 0;
}
2008-04-22 23:00
日月凡尘
Rank: 1
来 自:四川内江市中区
等 级:新手上路
帖 子:38
专家分:0
注 册:2008-4-22
收藏
得分:0 
晓得了
[bo]以下是引用 [un]中学者[/un] 在 2008-4-22 22:15 的发言:[/bo]

你得素数判断就出问题乐

哦,原来如此啊,确实是我的疏忽,应该是 k=m%i吧!
2008-04-22 23:03
日月凡尘
Rank: 1
来 自:四川内江市中区
等 级:新手上路
帖 子:38
专家分:0
注 册:2008-4-22
收藏
得分:0 
而且后面的return当中也有错
#include<stdio.h>
void main()
{
    int j,find;
    int prime(int m);
    for(j=2;j<=100;j++)
    {    find=prime(j);
        if(find)
        printf("%d\t",j);
    }
}
/*函数的功能:判断一个数是否是素数;
函数参数:m;
返回值:有。
*/
int prime(int m)
{
    int k,i;
    for(i=2;i<m;i++)
    {
        k=m%i;
        if(k==0)break;

    }
    if(i<m)
    return 0;
    else
    return 1;
}
2008-04-22 23:08
快速回复:求助 求1到100的素数
数据加载中...
 
   



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

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