2018.9.16作業
阿新 • • 發佈:2018-11-01
第九章
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;
}
}
}
}