注册 登录
编程论坛 C++教室

求500以内素数怎么办?到底哪里错了

BBOY愿愿 发布于 2016-01-10 21:38, 2720 次点击
#include<stdio.h>
#include<conio.h>
int main()
{
    int i=2,r,j;
    char c;
    while(i<=500)
    {
        for(j=2;j<i-1;j++)
        {
            r=i%j;
        if(r==0)
            c='N';
        else
                c='Y';
             }   
             i++;
    }
    printf("%d是素数\n",c);
    getch();
    return 0;
}
8 回复
#2
hjx11202016-01-10 22:11
c='N';
这句楼主确定可以这么写

#3
eFun2016-01-10 22:22
我来帮你做些简单调整吧
#include<conio.h>
int main()
{
    int i=2,r,j;
    char c;
    while(i<=500)
    {
        for(j=2;j<i;j++)
        {
            r=i%j;
            if(r==0)break;
        }
        c='Y';
        if(j<i)c='N';
        printf("%d %c\n",i,c);
        i++;
    }
    getch();
}


[此贴子已经被作者于2016-1-10 22:39编辑过]

#4
BBOY愿愿2016-01-11 13:58
只有本站会员才能查看附件,请 登录



还是不行啊。。。。。。。。。。。。。。。
#5
BBOY愿愿2016-01-11 14:01
回复 3楼 eFun
素数是指除1和他本身以外不能被其他任何整数整除的数

可惜还是错的


不过还是谢谢。
#6
BBOY愿愿2016-01-11 14:01
回复 3楼 eFun
素数是指除1和他本身以外不能被其他任何整数整除的数

可惜还是错的


不过还是谢谢。
#7
BBOY愿愿2016-01-11 14:02
回复 3楼 eFun
运行如下
#8
eFun2016-01-11 15:55
回复 6楼 BBOY愿愿
哪里错了?看你的输出结果也没错啊,你看29后面是字符Y,意思就是说29是素数,30 N,就是说30不是素数。楼主难道不是要这个结果?
哦,对了,我小学有毕业,知道什么是素数。
#9
eFun2016-01-11 16:00
如果只想显示素数,代码修改如下:
#include<conio.h>
int main()
{
    int i=2,r,j;
    while(i<=500)
    {
        for(j=2;j<i;j++)
        {
            r=i%j;
            if(r==0)break;
        }
        if(j>=i)printf("%d,",i);
        i++;
    }
    getch();
}
1