标题:小白求助:编写程序,找出101~200之间的全部素数,每输出10个素数后换行。
只看楼主
w的平方
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2023-4-12
结帖率:100%
已结贴  问题点数:20 回复次数:4 
小白求助:编写程序,找出101~200之间的全部素数,每输出10个素数后换行。
程序代码:
#include <stdio.h>
#include <math.h>
int main() 
{
    int i;
    for(i=101;i<200;i++)
    {
        int n=0;
        for(n=2;n<=sqrt(i);n++)
        {
            if(i%n==0)
             break;
            if(i%n!=0)
              printf("%d \n",i);
         } 
    }
    return 0;
}


“if(i%n!=0)”我知道这里不对,但是不知道该怎么改?
搜索更多相关主题的帖子: int 输出 编写程序 素数 换行 
2023-04-13 22:36
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
程序代码:
#include <stdio.h>

int main( void ) 
{
    for( unsigned i=101; i!=200; ++i )
    {
        unsigned j;
        for( j=2; j<=i/j; ++j )
        {
            if( i%j == 0 )
                break;
        }

        if( j > i/j )
            printf( "%u\n", i );
    }
}
2023-04-14 08:37
阳光上的桥
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:25
帖 子:82
专家分:525
注 册:2023-1-12
得分:20 
程序代码:
#include <stdio.h>
#include <math.h>
int main() 
{
    int i,n,ok,cnt;
    cnt = 0; /*已输出的个数,用来控制10个换行*/
    for(i=101;i<200;i++)
    {
        ok = 1; /*是否素数的判断,先假设是素数,下面的循环中一旦发现有因子,就修改为0*/
        for(n=2;n<=sqrt(i);n++)
        {
            if(i%n==0){
                ok=0;
                break;
            }
        }
        if(ok){ /*循环结束后通过 ok 判断是否素数*/
              printf("%4d ",i);/*输出数字不换行*/
              cnt++;
              if (0 == cnt % 10) printf("\n");/*满10个换行一次*/
         } 
    }
    return 0;
}
2023-04-14 12:29
w的平方
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2023-4-12
得分:0 
回复 3楼 阳光上的桥
好的,感谢大佬,懂了
2023-04-14 15:29
w的平方
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2023-4-12
得分:0 
回复 2楼 rjsp
不太理解?
2023-04-14 15:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-511906-1-1.html




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

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