Java - Hãy chọn đáp án đúng của đoạn chương trình cho sẵn dưới đây và giải thích.
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.
package baitap; 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(" 1 "); case i - 1 : System.out.print(" 2 "); default : System.out.print(" 0 "); } } } }
A | 012 |
B | 012020 |
C | 210100 |
D | 020120 |
Bài giải
-------------------- ######## --------------------
Đáp án: D. 020120
Giải thích: Trong chương trình trên, tôi tạo 1 biến tĩnh i
với giá trị khởi tạo = 2.
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 default
sẽ được thực thi nên số 0 sẽ được hiển thị ra màn hình (vì không có case
nào ứng với k = 0
nên câu lệnh bên trong default
sẽ được thực thi).
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ố 2 sẽ được hiển thị ra màn hình nối tiếp vào số 0, và vì không có lệnh break
nên trường hợp default
sẽ được thực thi nên số 0 sẽ được hiển thị nối tiếp vào số 2.
Bài viết này được đăng tại [free tuts .net]
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ố 1 sẽ được hiển thị ra màn hình nối tiếp vào số 0 bên trên. Tương tự, vì không có lệnh break
nên 2 số 2 và 0 sẽ được hiển thị.
Kết quả cuối cùng chúng ta sẽ có dãy 020120 được hiển thị ra màn hình.
Kết quả biên dịch chương trình bằng Eclipse:
Câu hỏi thường gặp liên quan:
- Java - Viết chương trình tính lũy thừa của 2 số nguyên.
- Java - Hãy đưa ra kết quả sau khi biên dịch đoạn chương trình cho sẵn dưới đây.
- Java - 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 (câu hỏi 2)
- 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)
- Java - Hãy chọn đáp án đúng của đoạn chương trình cho sẵn dưới đây và giải thích.