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.

Các kiểu dữ liệu trong C ( int - float - double - char ...)
Thuật toán tìm ước chung lớn nhất trong C/C++
Cấu trúc lệnh switch case trong C++ (có bài tập thực hành)
ComboBox - ListBox trong lập trình C# winforms
Random trong Python: Tạo số random ngẫu nhiên
Lệnh cin và cout trong C++
Cách khai báo biến trong PHP, các loại biến thường gặp
Download và cài đặt Vertrigo Server
Thẻ li trong HTML
Thẻ article trong HTML5
Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên
Cách dùng thẻ img trong HTML và các thuộc tính của img
Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng