亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java循環問題!

Java循環問題!

qq_Alliswell_5 2016-05-27 15:16:16
/*有一個數列 8,4,2,1,23,344 ,12循環輸出數列的值求數列所有數值之和猜數游戲:從鍵盤中任意輸入一個數據判斷是否是數組中的數字*/import java.util.*;public class ShuZu { public static void main(String[] args){ //鍵盤錄入口 Scanner input=new Scanner(System.in); //判斷猜數正確 聲明布爾值 boolean flag=true; //聲明和sum int sum=0; //定義并賦值數組? //int num[]=new int[]{} int num[]={8,4,2,1,23,344,12}; //利用for循環輸出數組 //for(int nums:num) for(int i=0;i<num.length;i++){ System.out.println(num[i]); //求出數列所有之和 sum+=num[i]; } System.out.println("所有數列之和是"+sum); //猜數游戲 do{ System.out.println("請輸入您要猜的數字:"); int guess=input.nextInt(); //對象導入 no 中 for(int no:num){ if(guess==no){ flag=true; break; } } if(flag){ System.out.println("恭喜您猜對了!"); }else{ System.out.println("很遺憾您沒有猜中"); } }while(!flag); } }橫杠處的循環跌進條件真心想不出來 ?求大神幫忙指點!?。?用do while ?想實現 猜數不正確時重復 do while 里的程序?
查看完整描述

4 回答

已采納
?
冰山點水

TA貢獻109條經驗 獲得超149個贊

如果一定要用do while,可以參考修改后的代碼:

//聲明并初始化flag的值為false
boolean?flag=false;
//猜數游戲
do{
System.out.println("請輸入您要猜的數字:");
int?guess=input.nextInt();
//對象導入?no?中
for(int?no:num){
if(guess==no){
System.out.println("恭喜您猜對了!");
flag=true;
break;
}
}
if(flag==true){
break;
}else{
System.out.println("很遺憾您沒有猜中");
}
}while(flag==false);


查看完整回答
2 反對 回復 2016-05-27
  • 冰山點水
    冰山點水
    考慮不周全,我的代碼倒數第三行flag=false;多余了,可刪除!
  • qq_Alliswell_5
    qq_Alliswell_5
    聲明boolean 是 想在ture 下循環 聲明ture 想在 false 下循環 就聲明false 這樣理解對嘛?大神
  • 冰山點水
    冰山點水
    聲明boolean變量并初始化為true或者false都可以,關鍵是取決于你的do while循環條件是什么。
點擊展開后面2
?
sixGod

TA貢獻34條經驗 獲得超22個贊

你的邏輯是正確的,錯在boolean flag=true;這個初始化吧,因為你初始化為true,所以就算你沒猜對,

if(flag){

System.out.println("恭喜您猜對了!");

}

這段代碼也會執行

查看完整回答
2 反對 回復 2016-05-27
?
慕粉3304601

TA貢獻1條經驗 獲得超0個贊

在if的兩個分支里寫進break就好咯,條件寫成true


查看完整回答
反對 回復 2016-05-27
?
微笑Vlife

TA貢獻3條經驗 獲得超0個贊

在else語句塊中加入一條輸入語句

查看完整回答
反對 回復 2016-05-27
  • 4 回答
  • 2 關注
  • 2515 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號