标题:无法理解:求出1到某个数之间的素数
取消只看楼主
迷茫小一点
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2020-4-7
结帖率:0
已结贴  问题点数:3 回复次数:3 
无法理解:求出1到某个数之间的素数

1.假设val的输入值是100,第一次执行100%2==0,break终止for,返回false,到了2  i<=100为真,由于返回的false,2就会被当作不是素数,不会被输出,
第二次执行,由于val的输入值是100,100%3非0;,if不执行,i+1,第三次执行 100%4==0,break终止,i!=100 返回false,到2   i不就一直=2,i+1就不执行了,我这种流程的理解是否错误
2第二种理解:1 val=100   i=2   i<2 (2是val的值1~100里面的数字如:1 2 3每个数字都会进行一次判断),此时 i<2,不成立,跳出for,执行i==val 返回true(真),是个素数,(此时的 2 的for 是否跟1是一样的)输出一个素数,再回到1  此时在回到1 i 就永远只能i<2,  i<val是否要改成i<=val,如果是这样,那么i<=2,进入if成立 break终止,i的值回到初值i=2;此时的i==val又会返回真.....
搜索更多相关主题的帖子: 个数 执行 返回 素数 false 
2020-04-07 00:37
迷茫小一点
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2020-4-7
得分:0 
回复 3楼 return_0
理解不了这个程序,想知道程序执行流程
2020-04-07 09:50
迷茫小一点
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2020-4-7
得分:0 
我想知道我的哪种理解是正确的
2020-04-07 10:18
迷茫小一点
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2020-4-7
得分:0 
回复 6楼 lin5161678
那个,我现在搞懵内部是如何执行的,能否讲解下嘛,谢谢
2020-04-07 10:22



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




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

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