weixin_43573137
2018-11-04 13:35
采纳率: 50%
浏览 520
已采纳

无法求出100~200的素数

#include
int main() {
int a,b;
for(a=100; a<=200; a++) {
for(b=2; b<=a; b++) {
if(a%b==0)
break;
}
if(b==a)

        printf("%d\r",a);
}

}

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • wxy19840807 2018-11-04 13:45
    已采纳

    for(b=2; b<=sqrt(a); b++) {
    ...
    }

    打赏 评论
  • Italink 2018-11-04 13:55

    \r是光标回到行首,你每次输出素数之后都被覆盖了,所以只能看到199,把\r改成\n:换行

    #include<stdio.h>
    int main() {
        int a, b;
        for (a = 100; a <= 200; a++) {
            for (b = 2; b <= a; b++) {
                if (a%b == 0)
                    break;
            }
            if (b == a)
                printf("%d\n", a);
        }
        return 0;
    }
    
    打赏 评论

相关推荐 更多相似问题