2 atn2129 Atn2129 于 2016.01.31 22:02 提问

为什么这两个,在for里可以,在外面的不可以???求解答

图片图片

4个回答

u011335493
u011335493   2016.01.31 22:46
已采纳

你求素数的思路是:(100~200)中只要不能被(2~所计算数的一半(n/2))整除就认为该计算数不是素数,并将“j”赋值为1。
①左边程序中,在第一层For循环中,第一个数是100,不是素数,就会将“j”赋值为1,由于在第一层FOR循环中没有给“j”初始化为0语句,
这样在后面语句中既是有素数出现,j的值始终都是1.
②右边程序,在第一层For循环中,加了个j=0的初始值赋值,这样会每次对n值判定,都会被认识是素数开始,知道n%i=0时,判定为非素数。

caozhy
caozhy   Ds   Rxr 2016.01.31 22:14

因为每次判断,都需要把j重新设置为0。否则后面遇到素数也会因为上一个数字是合数将j设置为1没有恢复而也被判断为和数。

lrgdongnan
lrgdongnan   2016.01.31 22:22

放里面放外面都可以,只不过你上面一个程序中,每次外循环时j没有初始化为0。

fk002008
fk002008   2016.01.31 22:24

编程中使用了 标志flag之类的东西做为结果得出的依据时候,
要注意这个flag要不要进行 reset

在哪里设置了它打开/关闭,那么就要想到还要对他进行 关闭/打开

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
算法题/求数组的逆序对
python2.7在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。给你一个数组,求出这个数组中逆序对的总数。 概括:如果a[i] > a[j] 且 i < j, a[i] 和 a[j] 构成一个逆序对。 样例 序列 [2, 4, 1, 3, 5] 中,有 3 个逆序对 (2, 1), (4, 1), (4, 3),则返回 3 。 思路:最简单的想法,扫描整个数组
Java中main方法中为什么不能直接创建实例化内部类对象
1:非静态内部类,必须有一个外部类的引用才能创建。2:在外部类的非静态方法中,因为有隐含的外部类引用this,所以可以直接创建非静态内部类。3:在外部类的静态方法中,因为没有this,所以必须先获得外部类引用,然后创建非静态内部类。4:静态内部类,不需要外部类引用就可以直接创建。5:同时静态的内部类,也不能直接访问外部类的非静态方法。6:由此可以推测,非静态内部类之所以可以直接访问外部类的方法,是因
hdu 1850 Being a Good Boy in Spring Festival 博弈
题意就不解释了,这道题目刚开始做的时候一点思路没有,就吃了一把瓜子,没想到突然就想起来思路了,异或为0就是输也就是只要不为零就行,而且每次只能去其中一堆的几个,那么只要最后一个大于前面的异或和就行,你只要从最后一堆中取走多的就是一种方式。哈哈哈,虽然是道简单题目,但是感谢这堆瓜子。。 Description 一年在外 父母时刻牵挂  春节回家 你能做几天好孩子吗 
关于使用了QtWebKit的PyQt程序打包后无法显示网页图片的问题(Mac0S和windows)
事隔近两个月的时间,又一次在程序打包的问题上困扰了许久。这一次的问题是程序在使用Py2app或Py2exe打包后无法正常显示网页图片(jepg等格式) 首先将大致情况描述一下: 操作系统 : MacOS X 10.6.7/windows 7 编程语言 : PyQt
计算机专业学生的思考:外面那么多培训机构,自己在学校学不到东西,还不如出去培训呢
许多人都在为计算机专业学生的前途感到担忧,的确目前来说计算机专业已没有前几年那么红火了,现在的大学几乎有几台计算机机就敢开设计算机这一专业,殊不知计算机专业的动手能力非常重要,这些大学的硬件根本跟不上现代发展的速度,还是在学着那些旧的知识。当大学毕业后,回过头来看看,自己学的东西其实没有多少,你会的人家有也会,甚至比你还精通,这个问题值得我们深深的思考!外面那么多培训机构,自己在学校学不到东西,还不如出去培训呢???培训机构那么多,而且能学到真东西,我们很多人花着双份钱,一边培训一边学习,甚至放弃学校的学习
Set中的元素为什么不允许重复
版权所有,转载请声明出处 zhyiwww@163.com   为了弄清楚这个问题 , 我又看了一遍 Collection 部分 , 并且看了些其中的源码 , 觉得对其中的实现又明白了一点 , 现在说出来和大家共享 . 我们先看一下 Set 类的关系图:    现在我们就从 Set 说起。 Set 接口为我们提供了一个 add() 方法,以让我们添加元素。所以我们看一下在其实现类
输写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。
//输写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。 #include int main() { int gy(int a,int b); int gb(int a,int b); int m,n,gys,gbs; scanf("%d %d",&m,&n); gys=gy(m,n); gbs=gb(m,n); prin
模态弹出框里的内容可以复制,不可以编辑的方法
需求内容:弹出框的comment 内容可以复制 解决方法:因为是模态弹出框,页面内容是不可以复制,所以需要修改属性contentEditable,改为true,页面的内容就可以编辑和复制,如果不需要编辑,则通过屏蔽按键来实现:  $('contentList').attachEvent('onkeydown', function () {          var code = window
假言推理:为什么接口可以多重继承,而类不可以
假言推理是根据假言命题的逻辑性质进行的推理。分为充分条件假言推理,必要条件假言推理和充分必要条件假言推理三种。 充分条件假言推理是根据充分条件假言命题的逻辑性质进行的推理。 充分条件假言推理有两条规则: n 规则1:肯定前件,就要肯定后件;否定前件,不能否定后件 n 规则2:否定后件,就要否定前件;肯定后件,不能肯定前件 必要条件假言推理是根据必要条件假言命题的逻辑性质进行的推理。 必要条件假言推理有两条规则: n 规则1:否定前件,就要否定后件;肯定前件,不能肯定后件。 n 规则2:肯定后
给定两个正整数,计算这两个数的最小公倍数。
#include int gcd(int a,int b) { return b?gcd(b,a%b):a; } int main()  { int a,b; while(scanf("%d %d",&a,&b)!=EOF) printf("%d\n",a/gcd(a,b)*b);//先除后乘会将数的位数降低,防止数过大// return 0; } //公式:a*b=gcd