迴圈及三種迴圈結構的更加適用情況:
阿新 • • 發佈:2019-01-31
/*
* 1.迴圈
* 2.迴圈三要素:
* 1)迴圈變數的初始化
* 2)迴圈的條件(以迴圈變數為基礎)
* 3)迴圈變數的改變(向著迴圈的結束變)
* 迴圈變數:在迴圈過程中的那個量
* 3.迴圈結構:
* 1)while迴圈:先判斷後執行,有可能一次都不執行
* 2)do.....while結構:先執行後判斷,至少執行一次
* 第1要素與第3要素相同時,首選
* 3)for結構:應用率最高
*
* 1.while(boolean表示式){//boolean為true,執行語句塊,否則退出
* if(true){
* break; //break用再迴圈體中用於退出迴圈
* }
* 語句塊 //被重複的操作
5..三種迴圈結構的更加適用情況:
* 5.1)while:"當---"迴圈
* 5.2)do--while:"直到---"迴圈
* 第1要素與第3要素相同時首選
* 5. 3)for:固定次數迴圈,應用率最高
*
* 6.巢狀迴圈:
* 6.1)迴圈中套迴圈,一般多行多列時使用,
* 外層控制行,內層控制列
* 6.2)執行過程:外層迴圈走一次,內層迴圈走所有次
* 6.3)建議:巢狀層次越少越好,能用一層就不能用兩層
* 若邏輯必須要通過3層以上才能解決,說明設計
* 有問題.
* 6.4)break只能跳出一層迴圈
* 1.迴圈
* 2.迴圈三要素:
* 1)迴圈變數的初始化
* 2)迴圈的條件(以迴圈變數為基礎)
* 3)迴圈變數的改變(向著迴圈的結束變)
* 迴圈變數:在迴圈過程中的那個量
* 3.迴圈結構:
* 1)while迴圈:先判斷後執行,有可能一次都不執行
* 2)do.....while結構:先執行後判斷,至少執行一次
* 第1要素與第3要素相同時,首選
* 3)for結構:應用率最高
*
* 1.while(boolean表示式){//boolean為true,執行語句塊,否則退出
* if(true){
* break; //break用再迴圈體中用於退出迴圈
* }
* 語句塊 //被重複的操作
* }
* 迴圈能跳出的條件:1)條件為假
* 2)碰著break
*
* 2.do-while//無論boolean表示式是否為true,都先執行一次語句塊
* do{
* 語 句 塊
* }while(boolean表示式)
*
*
* 3.for結構應用:
* for(要素1;要素2;要素3){
* 語句塊;
* }
* 特殊用法:
* 要素1;
* for(;要素2;要素3){
* }
* 4.break:跳出迴圈,常常與條件語句一起使用
* continue:跳過迴圈體中剩餘語句而執行下一次迴圈
5..三種迴圈結構的更加適用情況:* 5.1)while:"當---"迴圈
* 5.2)do--while:"直到---"迴圈
* 第1要素與第3要素相同時首選
* 5. 3)for:固定次數迴圈,應用率最高
*
* 6.巢狀迴圈:
* 6.1)迴圈中套迴圈,一般多行多列時使用,
* 外層控制行,內層控制列
* 6.2)執行過程:外層迴圈走一次,內層迴圈走所有次
* 6.3)建議:巢狀層次越少越好,能用一層就不能用兩層
* 若邏輯必須要通過3層以上才能解決,說明設計
* 有問題.
* 6.4)break只能跳出一層迴圈
* */
案例1.
/* 隨機加法運算器:
* 程式依次出10道題目,由使用者輸入題目的答案;
* 使用者每答完一道題,程式判斷對錯,並提示:"答對了"
* 或“答錯了”
* 10道題目答完之後,系統計算得分並輸出;
* 使用者希望提前結束,可以輸入-1提前退出。
* */
import java.util.Scanner;
public class PracticeAdd1 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int score=0;
for(int i=1;i<=10;i++){
int x = (int)(Math.random()*100);
int y = (int)(Math.random()*100);
int result = x+y;
System.out.print("("+i+")"+x+"+"+y+"=");
int n= scan.nextInt();
if(n==-1){
break;
}
if(result==n){
System.out.println("答對了");
score+=10;
}else{
System.out.println("答錯了");
}
}
System.out.println(score);
}
}
案例2.
//while的演示
/*案例:程式隨機生成並存儲一個整數:
* 使用者輸入一個整數,程式給出與儲存的數字“大”或“小”
* 的比較結果提示;直到使用者猜對數字為止;
* 如果中途,使用者希望結束程式,可以輸入0退出
* Math.random()------0.0~0.999999
* *1000-------------0.0~999.99999
* +1---------------1.0~1000.99999
*
* */
import java.util.Scanner;
public class Guessing {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = (int)(Math.random()*1000+1);
System.out.println(num);
int guess;
do{
System.out.println("猜吧");
guess = scan.nextInt();
if(guess==0){
break;
}
if(guess>num){
System.out.println("太大了");
}else if(guess<num){
System.out.println("太小了");
}
}while(guess!=num);
if(guess==num){
System.out.println("恭喜,猜對啦");
}else{
System.out.println("下次再來吧");
}
/*
System.out.println("猜吧");
int guess = scan.nextInt();
while(guess!=num){
if(guess==0){
break;
}
if(guess>num){
System.out.println("太大了");
}else{
System.out.println("太小了");
}
System.out.println("猜吧");
guess = scan.nextInt();
}
if(guess==num){
System.out.println("恭喜,猜對啦");
}else{
System.out.println("下次再來吧");
}
*/
}
}