Java算法题:判断并输出101-200中所有素数,代码中单等号与双等号的区别?

请判断101-200之间有多少个素数,且输出所有的素数。

public class PrimeNumber {
public static void main(String[] args) {
for(int i=101 ; i<=200 ; i++){
boolean flag = true;
for(int j=2 ; j<i ; j++){
if(i%j == 0){
flag = false;
break;
}
}
if(flag == true){ //???
System.out.println(" "+i);
}
}
}
}

//???处:
这里如果写单等号,输出的会是101-200的所有数字;
这里写双等号,得到的就是101-200的所有质数;
然而上面flag=false处,写的就是单等号,为什么这两处符号要不一致?
谢谢!!!!!!

第1个回答  2019-05-11
这是很基础的问题
单= 是赋值运算, 把后面的值赋值给前面的参数
双= 是关系运算, 比较前后两个参数是否相同

注意如果???处, 用单等, 就是赋值运算, 将ture 赋值 给 flag, 所以if中会一直是true, 也会一直执行if中的代码
双== 就是比较了啊, 结果是真 才会执行if中代码
第2个回答  2019-05-11
单等号的意思是赋值,双等号的意思是判断两个变量的值是否相等,相等返回true,不相等返回false。在你的问好的那一行,如果你写为了flag=true,表示将true赋值给flag这个变量,因此if判断一直都是true,也就是会一直指向下面的语句。
第3个回答  2019-05-11
有区别,而且区别很大。根本不是一个东西,单等号是做赋值操作,双等号是逻辑运算符是否等于。
flag=true是让这个flag等于true。
flag==true是判断这个flag是否等于true。

建议题主先看看基础语法。本回答被提问者采纳

Java算法题:判断并输出101-200中所有素数,代码中单等号与双等号的区别...
单= 是赋值运算, 把后面的值赋值给前面的参数 双= 是关系运算, 比较前后两个参数是否相同 注意如果???处, 用单等, 就是赋值运算, 将ture 赋值 给 flag, 所以if中会一直是true, 也会一直执行if中的代码 双== 就是比较了啊, 结果是真 才会执行if中代码 ...

C语言判断 101 到 200 之间的素数。为什么变量要i<=j?
1是素数判断要避免循环到它本身,任何数都是自己的因子;2循环结束后,素数的条件是i==j,可以用i>=j判断,但是不能用i<=j;3相等判断是两个等号,写一个等号是赋值,或改变i值、改变循环的次数。

双等号是赋值还是判断
x = 5;这段代码就是将数字5赋值给变量x。在这里,双等号表示赋值操作。其次,双等号也可以用来判断。在编写条件语句时,我们需要判断某个变量的值是否等于某个特定的值。双等号就是比较操作符,表示判断左右两边的值是否相等。例如:if (x == 5) { \/\/ do something} 这段代码就是判断变量x的...

VS2010编程C语言题目:判断101-200之间有多少个素数,并输出所有...
leap=0错写成leap==0了,多了个等号。其实没这么麻烦。include <stdio.h>void main(){int i,m,n=0;for(m=101;m<=200;m++){for(i=2;i<=m\/2;i++)if(m%i==0) break;if(i>m\/2) {printf("%d ",m);n++;if(n%10==0)printf("\\n");}}} ...

c程序中等号和双等号有什么区别?
c语言中双等号和单等号的区别在于用途和性质。双等号,即"==",用于比较两个数值或变量是否相等,属于关系运算符。当比较结果为真时,即两个值相同,返回true(通常以整型1表示);反之,返回false(整型0表示)。单等号,即"=",是赋值运算符。它用于将一个值或变量赋给另一个变量,改变目标变量的...

关于vc if语句中等号与双等号的区别
第一个是先赋值再判断,实际上可以分两句写 flDwm = (GetReadBits() & 7);if(flDwm)\/\/也就是if(flDwm==true){ ...} 下面一个就是我们习惯中的等于了 if (flDwm == (GetReadBits() & 7))\/\/如果flDwm 的值等于 (GetReadBits() & 7)

我想用C++中的for以穷举法输出1-100的所有质数(素数)
if(flag == 1) cout<<a<<" ";两个等号,常见错误 把习惯改成等号判断的时候先写常数,即 if(1 == flag)这样你少写了等号编译就不会过

c语言中1个等号和2个等号有什么区别?
此时,x的值为10。而==是关系运算符,用于比较两个值是否相等。例如:这行代码检查变量x的值是否等于10。如果x的值等于10,则输出“x的值是10”。否则,不输出任何内容。因此,=和==在C语言中有不同的用途和含义,不能混用。♡♡ 有帮助到的话,麻烦采纳哦!♡♡...

python中等号与双等号的区别
等号是赋值给左边的变量。双等号才相当于我们平时数学上的左右两个变量相等,一模一样。

用java语言怎么编写计算器中的等号功能,使用户点击等号可以实现结果的...
import java.awt.event.*;import java.util.*;import javax.swing.*;public class 计算器6 extends JFrame{ private float op1,op2;\/\/定义两个变量存放需要运算的值 private String str="";\/\/定义str去和text进行交叉赋值 private String opr,co;\/\/opr存放符合,co用来存放复制的内容 private double re;\/\/...

相似回答