1. 程式人生 > >2018.9.16作業

2018.9.16作業

第九章
1.什麼是二重迴圈?在內層迴圈中使用continue 和 break語句,程式如何跳出?
迴圈之中巢狀迴圈 內層迴圈中使用continue和break 跳出內層迴圈 與外層迴圈無關

2.編寫程式,列印如下圖案,要求輸出圖案的行數由使用者輸入重點內容

import java.util.Scanner;

public class No_2 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("請輸入行數:"
); int a = input.nextInt(); for (int i = 1; i <= a; i++) { for (int j = 1; j <= i; j++) { System.out.print(j + " "); } System.out.println(""); } } }

3.“百錢買百雞”,5文錢可以買一隻公雞,3文錢可以買一隻母雞,1文錢可以買3只雛雞,現在用100文錢買100只雞,那麼各有公雞,母雞,雛雞多少隻?編寫程式利用二重迴圈實現 。

public class No_3 {
    public static void main(String[] args) {
        int k = 0;
        for (int i = 1; i <= 20; i++) {
            for (int j = 1; j <= 33; j++) {
                k = 100 - i - j;
                if (k % 3 == 0 && (5 * i + 3 * j + k / 3) == 100) {
                    System.out
.println("公雞:" + i + "\t母雞:" + j + "\t小雞:" + k); } } } } }

4.有三個班級各四名學員參賽,從控制檯輸入每個班級參賽學員的成績,要求統計出三個班級所有參賽人員中成績大於85分的學員的平均分,實現程式設計 。

import java.util.Scanner;

public class No_4 {
    public static void main(String[] args) {
        int a = 0;
        int d = 0;
        double c = 0;
        Scanner input = new Scanner(System.in);
        for (int i = 0; i < 3; i++) {
            System.out.println("請輸入第" + (i + 1) + "個班級的成績:");
            for (int j = 0; j < 4; j++) {
                System.out.print("第" + (j + 1) + "個學員的成績:");
                a = input.nextInt();
                if (a < 85) {
                    continue;
                }
                d++;
                c += a;
            }
            System.out.println("");
        }
        System.out.println("85分以上的有:" + d + "個,平均分為:" + (c / d));
    }

}

5.假設一個簡單的在ATM的取款過程如下:首先提示輸入密碼(password),最多隻能輸入三次,超過三次則提示使用者”密碼錯誤,請取卡”,交易結束。如果使用者密碼正確,再提示使用者輸入金額(amount),ATM只能輸出100元的紙幣,一次取錢數要求最低0元,最高1000元,如果使用者輸入的金額符合上述要求,則列印輸出使用者的錢數,最後提示使用者”交易完成,請取卡”,否則提示使用者重新輸入金額,假設使用者密碼是111111,請用二重迴圈實現程式設計,執行效果 。

import java.util.Scanner;

public class No_5 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int cuowu = 0;
        int m = 0;
        String mima = "111111";
        System.out.print("請輸入密碼:");
        for (int i = 0; i < 3; i++) {
            String password = input.next();
            if (mima.equals(password)) {
                System.out.print("請輸入金額:");
                m = input.nextInt();
                while (true) {
                    if (m % 100 == 0 && m <= 1000) {
                        System.out.println("您取了" + m + "元");
                        System.out.println("交易完成,請取卡");
                        System.exit(0);
                    } else {
                        System.out.print("輸入金額不合法,請重新輸入:");
                        m = input.nextInt();
                    }
                }
            } else {
                if (cuowu == 2) {
                    System.out.println("密碼錯誤3次以上,請取卡!");
                } else {
                    System.out.print("密碼錯誤,請重新輸入:");
                    cuowu++;
                }

            }

        }
    }

}

6.輸入行數、列印菱形,要求如下:
(1).從控制檯輸入菱形的高度(行數)。如果使用者輸入的行數合法(奇數),則打印出菱形;否則提示使用者輸入奇數。
(2).假設使用者輸入的行數為rows,則每行字元*的個數依次為1、3/5、7、…、rows、…、7、5、3、1,程式執行結果為:

import java.util.Scanner;

public class No_6 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("請輸入行數(奇數):");
        int a = input.nextInt();
        while (a % 2 == 0) {
            System.out.print("請輸入奇數:");
            a = input.nextInt();
        }
        for (int i = 1; i <= a / 2 + 1; i++) {
            for (int j = 1; j <= a - i; j++) {
                System.out.print(" ");
            }
            for (int k = 1; k <= 2 * i - 1; k++) {
                System.out.print("*");
            }
            System.out.println("");
        }
        for (int r = a / 2; r >= 0; r--) {
            for (int t = 1; t <= a - r; t++) {
                System.out.print(" ");
            }
            for (int u = 1; u <= 2 * r - 1; u++) {
                System.out.print("*");
            }
            System.out.println("");
        }

    }
}

第十章

import java.util.Scanner;

public class LuckyDraw2_0 {
    public static void main(String[] args) {
        String[] a = new String[2];
        String[] b = new String[2];
        int[] l = new int[5];
        int cardNumber = 0;
        Scanner input = new Scanner(System.in);
        while (true) {
            System.out.println("*******歡迎進入獎客富翁系統******");
            System.out.println("\t    1.註冊");
            System.out.println("\t    2.登入");
            System.out.println("\t    3.抽獎");
            System.out.println("********************************");
            System.out.print("請選擇選單:");
            if (input.hasNextInt() == true) {
                int XueZe = input.nextInt();
                switch (XueZe) {
                case 1:
                    System.out.println("[獎客富翁系統>註冊]");
                    System.out.println("請填寫個人註冊資訊:");
                    System.out.print("使用者名稱:");
                    a[0] = input.next();
                    System.out.print("密碼:");
                    a[1] = input.next();
                    System.out.println("");
                    System.out.println("註冊成功,請記好您的會員卡號:");
                    cardNumber = (int) (Math.random() * (9999 - 1000)) + 1000;
                    System.out.println("使用者名稱\t     密碼\t     會員卡號");
                    System.out.println(a[0] + "\t   " + a[1] + "\t   "
                            + cardNumber);
                    System.out.print("繼續嗎?(y/n):");
                    while (true) {
                        String d = input.next();
                        if (!d.equals("y") && !d.equals("n")) {
                            System.out.print("輸入錯誤,請輸入 y 或者 n :");
                            continue;
                        } else if (d.equals("y")) {
                            System.out.println("");
                            break;
                        } else {
                            System.out.println("");
                            System.out.println("系統退出,謝謝使用!");
                            System.exit(0);
                        }
                    }
                    break;
                case 2:
                    System.out.println("[獎客富翁系統>登入]");
                    System.out.print("請輸入使用者名稱:");
                    b[0] = input.next();
                    System.out.print("請輸入密碼:");
                    b[1] = input.next();
                    System.out.println("");
                    if (!b[0].equals(a[0]) && !b[1].equals(a[1])) {
                        for (int j = 1; j <= 3; j++) {
                            System.out.println("賬號或者密碼錯誤!您還有" + (4 - j)
                                    + "次輸入機會!!!");
                            System.out.print("請輸入使用者名稱:");
                            b[0] = input.next();
                            System.out.print("請輸入密碼:");
                            b[1] = input.next();
                            System.out.println("");
                            if (b[0].equals(a[0]) && b[1].equals(a[1])) {
                                break;
                            }
                            if (j == 3) {
                                System.out.println("您的輸入錯誤次數過高,請稍後繼續!");
                                System.exit(0);
                            }
                        }
                    }
                    System.out.println("歡迎您:" + a[0]);
                    System.out.print("繼續嗎?(y/n):");
                    while (true) {
                        String d = input.next();
                        if (!d.equals("y") && !d.equals("n")) {
                            System.out.print("輸入錯誤,請輸入 y 或者 n :");
                            continue;
                        } else if (d.equals("y")) {
                            System.out.println("");
                            break;
                        } else {
                            System.out.println("");
                            System.out.println("系統退出,謝謝使用!");
                            System.exit(0);
                        }
                    }
                    break;
                case 3:
                    int h = 0;
                    System.out.println("[獎客富翁系統>抽獎]");
                    System.out.print("請輸入你的卡號:");
                    while (true) {
                        if (input.hasNextInt() == true) {
                            int car = input.nextInt();
                            if (car > 999 && car < 10000) {
                                System.out.println("");
                                System.out.print("本日幸運數字為:");
                                for (int i = 0; i < 5; i++) {
                                    l[i] = (int) (Math.random() * (9999 - 1000)) + 1000;
                                    System.out.print(l[i] + " ");
                                }
                                System.out.println("");
                                for (int u = 0; u < l.length; u++) {
                                    if (car == l[u]) {
                                        System.out.println("恭喜您!您是本日幸運會員!");
                                        System.exit(0);
                                    } else {
                                        h++;
                                    }
                                    if (h == 5) {
                                        System.out.println("抱歉!您不是本日的幸運會員!");
                                        System.out.println("");
                                        System.out.print("繼續嗎?(y/n):");
                                        while (true) {
                                            String d = input.next();
                                            if (!d.equals("y")
                                                    && !d.equals("n")) {
                                                System.out
                                                        .print("輸入錯誤,請輸入 y 或者 n :");
                                                continue;
                                            } else if (d.equals("y")) {
                                                System.out.println("");
                                                break;
                                            } else {
                                                System.out.println("");
                                                System.out
                                                        .println("系統退出,謝謝使用!");
                                                System.exit(0);
                                            }
                                        }
                                        break;
                                    }
                                }
                            } else {
                                System.out.println("卡號錯誤,請輸入正確卡號!");
                                System.out.print("請輸入你的卡號:");
                                continue;
                            }
                        } else {
                            System.out.println("卡號錯誤,請輸入正確卡號!");
                            System.out.print("請輸入你的卡號:");
                            input = new Scanner(System.in);
                            continue;
                        }
                        break;
                    }
                    break;

                default:
                    System.out.println("");
                    System.out.println("選擇錯誤,請重新選擇:");
                    continue;
                }
            } else {
                System.out.println("請正確輸入!");
                input = new Scanner(System.in);
                continue;
            }
        }
    }
}