JavaScript is required

Để khai báo 1 hàm kiểm tra một mảng là tăng hay không ta dùng khai báo nào dưới đây:

A.

void CheckAsc(int a[], int n);

B.

int CheckAsc(int *a, int n);

C.

long CheckAsc(int *S);

D.

double CheckAsc(int S[], int n);

Trả lời:

Đáp án đúng: B


Câu hỏi yêu cầu khai báo một hàm kiểm tra mảng tăng. * **A. void CheckAsc(int a[], int n);**: Khai báo này hợp lệ. Hàm này nhận một mảng số nguyên `a` và kích thước `n` của mảng. Kiểu trả về `void` cho thấy hàm này có thể in ra kết quả hoặc thay đổi mảng trực tiếp thay vì trả về một giá trị. * **B. int CheckAsc(int *a, int n);**: Khai báo này cũng hợp lệ. Hàm này nhận một con trỏ `a` đến mảng số nguyên và kích thước `n` của mảng. Kiểu trả về `int` cho thấy hàm này có thể trả về một giá trị nguyên, ví dụ: 1 nếu mảng tăng và 0 nếu không. * **C. long CheckAsc(int *S);**: Khai báo này không đầy đủ vì chỉ nhận con trỏ `S` đến mảng mà không có thông tin về kích thước của mảng. Điều này gây khó khăn trong việc duyệt qua tất cả các phần tử của mảng để kiểm tra tính tăng dần. * **D. double CheckAsc(int S[], int n);**: Khai báo này hợp lệ, tương tự như A, nhưng kiểu trả về là `double`, có thể không phù hợp nếu chỉ cần trả về một giá trị boolean (ví dụ: 1 cho tăng, 0 cho không tăng). Trong các lựa chọn trên, B là phù hợp nhất vì nó cho phép hàm trả về một giá trị (ví dụ, 1 hoặc 0) để chỉ ra mảng có tăng hay không, và nó cũng có đầy đủ thông tin (mảng và kích thước) để thực hiện kiểm tra. A cũng đúng nhưng không linh hoạt bằng B vì không trả về giá trị nào.

Câu hỏi liên quan