Viết chương trình C để tìm phần tử lớn nhất dùng con trỏ

Các bước thực hiện để viết chương trình C:

  • Định nghĩa một hàm findMax nhận hai tham số: một con trỏ tới mảng (arr) và kích thước của mảng (size) và trả về một số nguyên. 
  • Khởi tạo một biến max với giá trị được trỏ tới bởi arr, giả sử rằng phần tử đầu tiên là giá trị lớn nhất.
  • Sử dụng vòng lặp để duyệt qua mảng bằng cách sử dụng con trỏ. 
  • Bắt đầu vòng lặp từ phần tử thứ hai (chỉ số 1) vì chúng ta đã coi phần tử đầu tiên là phần tử lớn nhất.
  • So sánh giá trị được trỏ tới bởi arr + i (phần tử hiện tại) với giá trị lớn nhất. Nếu phần tử hiện tại lớn hơn max, hãy cập nhật giá trị của max = phần tử hiện tại.
  • Lặp lại vòng lặp cho đến khi bạn duyệt qua toàn bộ mảng.
  • Sau vòng lặp, trả về max là phần tử lớn nhất trong mảng.
  • Viết hàm main để test hàm findMax

Code tham khảo của chương trình C:

#include <stdio.h>

/*
* This program finds the maximum element in an array using pointers.
* It takes an array of integers and its size as input,
* and returns the maximum element.
*/

int findMax(int *arr, int size) {
int max = *arr; // Assume the first element is the maximum

// Traverse the array using pointers
for (int i = 1; i < size; i++) {
if (*(arr + i) > max) {
max = *(arr + i);
}
}

return max;
}

int main() {
int arr[] = {5, 2, 8, 1, 9};
int size = sizeof(arr) / sizeof(arr[0]);

// Find the maximum element in the array
int maxElement = findMax(arr, size);

printf("The maximum element in the array is: %d\n", maxElement);

return 0;
}