在控制臺輸入一個數(shù),判斷它是否在給定的數(shù)組中,代碼如下:
import?java.util.Scanner;
public?class?Caicaikan2?{
public?static?void?main(String[]?args)?{
?int?a[]={123,101,92,68};
?Scanner?s=new?Scanner(System.in);
?System.out.println("請輸入一個數(shù)字");
?int?num=s.nextInt();
?boolean?flag=true;
?for?(int?i?=?0;?i?<?a.length;?i++)?{
??if(num==a[i])
??{
???System.out.println("猜對啦!數(shù)字為:"+num);
???flag=false;
???break;
??}
?}
?if(flag)
??System.out.println("-_-。sorry!猜錯啦!");
}
}
1、請告訴我,boolean?flag=true在整個代碼中的作用
2、在for循環(huán)中,當(dāng)flag=false時循環(huán)結(jié)束,輸出“num在數(shù)組中”這一結(jié)果。那為什么在循環(huán)外if(flag)時,flag=true,輸出的卻是“num不在數(shù)組中”
1 回答
已采納

HansonQ
TA貢獻(xiàn)223條經(jīng)驗 獲得超56個贊
這個很好理解,你在上面定義了一個標(biāo)志,當(dāng)你輸入的和數(shù)組里面存在的才會走到for循環(huán)里面的判斷語句。而且當(dāng)相同的時候for循環(huán)會終止此時還會把flag的值變成flase,這樣的話你for循環(huán)外面的if語句是不會走的。if語句后面的表達(dá)式只有為true的時候才會執(zhí)行里面的內(nèi)容。
添加回答
舉報
0/150
提交
取消