标题:关于循环的问题,求大佬指点
只看楼主
Leeoo
Rank: 1
等 级:新手上路
帖 子:8
专家分:5
注 册:2020-4-19
结帖率:100%
已结贴  问题点数:20 回复次数:4 
关于循环的问题,求大佬指点
问题是求100到400所有的素数,要求每输出5个换行。
程序代码:
#include<stdio.h>
#include<math.h>
int main()
{
    int n, k, i, m = 0;
    for (n = 101; n <= 400; n = n + 2)
    {
        k = sqrt(n);
            for (i = 2; i <= k; i++)
                if (n % i == 0) break;
            if (i >= k + 1)
            {
                printf("%-4d", n);
                m = m + 1;
            }
                if (m % 5 == 0)printf("\n");
    }
    printf("\n");
}

输出结果是这样的:

我找到了解决的方法,把最后一个if语句纳入上一个if语句内即可。但如果依照错误的代码,每一行最后一个数和下一行第一个数中间差了几个数就应该输出几个\n,图里的结果却不是这样,求大佬指点。
搜索更多相关主题的帖子: 语句 printf 循环 输出 int 
2020-05-01 23:46
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:20 
哪个不是这样了?

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2020-05-02 08:26
Leeoo
Rank: 1
等 级:新手上路
帖 子:8
专家分:5
注 册:2020-4-19
得分:0 
比如最后两行数,379和383之间差了3个数,但是只有1个\n。
2020-05-02 09:21
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:0 
你自己写的n=n+2啊,转头就忘了?

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2020-05-02 09:28
Leeoo
Rank: 1
等 级:新手上路
帖 子:8
专家分:5
注 册:2020-4-19
得分:0 
一语点醒梦中人,我犯傻了
感谢大佬
2020-05-02 09:59



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




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

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