Cho đoạn mã sau:
1: int [] a={3,1,7,0,10};
2: int n=5,k,max;
3: max=a[0]
4: for(k=0;k
Trả lời:
Đáp án đúng: C
Đoạn mã trên thực hiện các bước sau:
1. **Khởi tạo mảng `a`:** `a = {3, 1, 7, 0, 10}`.
2. **Khởi tạo `n = 5`:** `n` là kích thước của mảng.
3. **Khởi tạo `max = a[0] = 3`:** Giá trị lớn nhất ban đầu được gán bằng phần tử đầu tiên của mảng.
4. **Vòng lặp `for` (k = 0; k < n; k++)**:
- Lặp qua từng phần tử của mảng `a`.
- **`if (max < a[k])`:** Nếu phần tử hiện tại `a[k]` lớn hơn `max`, thì `max` được cập nhật thành `a[k]`.
5. Sau vòng lặp, `max` sẽ là giá trị lớn nhất trong mảng `a`, tức là `max = 10`.
6. **`System.out.print(max);`:** In ra giá trị của `max` (10).
7. **Vòng lặp `for` (k = 0; k < n; k++)**:
- Lặp qua từng phần tử của mảng `a` một lần nữa.
- **`if (max == a[k])`:** Nếu phần tử hiện tại `a[k]` bằng `max`, thì in ra chỉ số `k`.
8. Trong lần lặp cuối cùng, `max == a[4]` (vì `a[4] = 10`). Do đó, `k = 4` sẽ được in ra.
Vậy, kết quả in ra sẽ là 104.