java jpg Java core

Quảng cáo

Java - Hãy chọn đáp án đúng trong các đáp án cho sẵn của đoạn chương trình dưới đây (câu hỏi 1)

Bài tập này yêu cầu chúng ta hãy chọn đáp án thế hiện kết quả đúng của đoạn chương trình cho sẵn dưới đây, giải thích vì sao có kết quả đó và sử dụng Eclipse để kiểm chứng.

Output.java
package baitap;

public class Output {
	
	final static short i = 2;
    
	public static void main(String [] args) {
		for (int k = 0; k < 3; k++) {
			switch (k) {
				case i: System.out.print(" 0 "); 
				case i-1: System.out.print(" 1 ");
				case i-2: System.out.print(" 2 ");
			}
		}
	}
	
}

A 210100
B 012122
C 212012
D 012

Bài giải

-------------------- ######## --------------------

Quảng cáo

Đáp án: C. 212012

Giải thích: Trong đoạn chương trình trên, tôi có khai báo một biến tĩnh i với giá trị khởi tạo = 2

Quảng cáo

Bước 1: Duyệt vòng lặp for với k = 0 < 3 (đúng) nên switch(k) được thực thi, lúc này k = 0 nên câu lệnh bên trong case 0 (i - 2) sẽ được thực thi nên số 2 sẽ được hiển thị ra màn hình.

Bước 2: k tăng lên 1 = 1 < 3 (đúng) nên switch(k) được thực thi, lúc này k = 1 nên câu lệnh bên trong case 1 (i - 1) sẽ được thực thi nên số 1 sẽ được hiển thị ra màn hình nối tiếp vào số 2, và vì không có lệnh break nên trường hợp case 0 (i - 2) sẽ được thực thi nên số 2 sẽ được hiển thị nối tiếp vào số 1.

Bước 3: k tăng lên 1 = 2 < 3 (đúng) nên switch(k) được thực thi, lúc này k = 2 nên câu lệnh bên trong case 2 (i) sẽ được thực thi nên số 0 sẽ được hiển thị ra màn hình nối tiếp vào số 1 bên trên. Tương tự, vì không có lệnh break nên 2 số 1 và 2 sẽ được hiển thị.

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Kết quả cuối cùng chúng ta sẽ có dãy 212012 được hiển thị ra màn hình.

Quảng cáo

Kết quả biên dịch chương trình bằng Eclipse:

ketqua bai tap static 3 PNG

Quảng cáo

Câu hỏi thường gặp liên quan:

Các chủ đề liên quan:

Quảng cáo

Top