LATEST

Tìm số lớn nhất, nhỏ nhất của mảng trong C / C++

Trong bài viết này, codehow sẽ hướng dẫn các bạn thực hiện chương trình tìm số lớn nhất, nhỏ nhất của mảng trong C / C++. Đây là một dạng bài tập căn bản khi thao tác với mảng, giúp các bạn biết cách nhập, xuất các giá trị trong mảng.

Ví dụ: Mình có một mảng Number = {4, 5, 8, 11, -2, 6}, khi đó giá trị lớn nhất là 11 và giá trị nhỏ nhất là -2.

Vậy làm thế nào để có thể viết được chương trình tìm số lớn nhất, nhỏ nhất của mảng trong C / C++, hãy bắt đầu cùng mình ngay thôi nào.

Tìm số lớn nhất, nhỏ nhất của mảng trong C / C++

Mình sẽ thực hiện tất cả 4 chương trình, 2 chương trình tìm số lớn nhất trong mảng và 2 chương trình tìm số nhỏ nhất trong mảng. Được viết bằng hai ngôn ngữ khác nhau là C và C++, điều này giúp các bạn có thể so sánh và lựa chọn cho mình một chương trình phù hợp.

Tìm số lớn nhất của mảng trong C / C++

Để tìm số lớn nhất của mảng trong C / C++, đầu tiên chúng ta cần tạo hàm largest_element() để tìm giá trị lớn nhất. Hàm nhận vào hai tham số đó là: một mảng các phần tử và số lượng phần tử trong mảng.

Bên trong hàm largest_element(), giả sử phần tử đâu tiên là giá trị lớn nhất. Khi đó sử dụng vòng lặp for để lặp từ đầu đến cuối mảng, so sánh với phần tử đầu tiên để tìm số lớn nhất.

int largest_element(int arr[], int num)
{
    int i, max_element;
    max_element = arr[0];
    for (i = 1; i < num; i++)         
        if (arr[i] > max_element)
            max_element = arr[i];
    return max_element;
}

Bên trong hàm main(), yêu cầu người dùng nhập vào số lượng phần tử và giá trị của các phần tử. Sau đó gọi hàm largest_element() và truyền vào các tham số.

int i, count;
printf("Nhập số lương phần tử trong mảng:");
scanf("%d", &count);
int number[count];
printf("\nNhập giá trị cho từng phần tử trong mảng:\n");
for (i = 0; i < count; ++i)
   scanf("%d", &number[i]);

Và cuối cùng là hiển thị kết quả ra màn hình.

printf("Giá trị lớn nhất trong mảng là: %d", largest_element(number, count));

Dưới đây là hai chương trình mình đã viết sẵn bằng hai ngôn ngữ C và C++, các bạn có thể tham khảo nhé.

Chương trình C:

#include <stdio.h>

int largest_element(int arr[], int num)
{
    int i, max_element;
    max_element = arr[0];
    for (i = 1; i < num; i++)         
        if (arr[i] > max_element)
            max_element = arr[i];
    return max_element;
}

int main() {
  int i, count;
  printf("Nhập số lương phần tử trong mảng:");
  scanf("%d", &count);
  int number[count];

  printf("\nNhập giá trị cho từng phần tử trong mảng:\n");
  for (i = 0; i < count; ++i)
      scanf("%d", &number[i]);

  printf("Giá trị lớn nhất trong mảng là: %d", largest_element(number, count));
    printf("\n------------------------------\n");
    printf("Chương trình này được đăng tại Freetuts.net");
}

Kết quả:

bai23 01 PNG

Chương trình C++:

#include <iostream>
using namespace std;

int largest_element(int arr[], int num)
{
    int i, max_element;
    max_element = arr[0];
    for (i = 1; i < num; i++)         
        if (arr[i] > max_element)
            max_element = arr[i];
    return max_element;
}

int main() {
  int i, count;
  cout<<"Nhập số lương phần tử trong mảng:";
  cin>>count;
  int number[count];

  cout<<"\nNhập giá trị cho từng phần tử trong mảng:\n";
  for (i = 0; i < count; ++i)
      cin>>number[i];

  cout<<"Giá trị lớn nhất trong mảng là: "<< largest_element(number, count);
    cout<<"\n------------------------------\n";
    cout<<"Chương trình này được đăng tại Freetuts.net";
}

Kết quả:

bai23 02 PNG

Tìm số nhỏ nhất của mảng trong C / C++

Tương tự như việc tìm số lớn của mảng trong C / C++, ta cũng sẽ tạo hàm tìm giá trị nhỏ nhất, rồi gọi nó ở hàm main() và truyền vào các tham số. Các bạn có thể tham khảo hai chương trình dưới đây.

Chương trình C:

#include <stdio.h>

int largest_element(int arr[], int num)
{
    int i, min_element;
    min_element = arr[0];
    for (i = 1; i < num; i++)         
        if (arr[i] < min_element)
            min_element = arr[i];
    return min_element;
}

int main() {
  int i, count;
  printf("Nhập số lương phần tử trong mảng:");
  scanf("%d", &count);
  int number[count];

  printf("\nNhập giá trị cho từng phần tử trong mảng:\n");
  for (i = 0; i < count; ++i)
      scanf("%d", &number[i]);

  printf("Giá trị nhỏ nhất trong mảng là: %d", largest_element(number, count));
    printf("\n------------------------------\n");
    printf("Chương trình này được đăng tại codehow.net");
}

Kết quả:

bai23 04 PNG

Chương trình C++:

#include <iostream>
using namespace std;

int largest_element(int arr[], int num)
{
    int i, min_element;
    min_element = arr[0];
    for (i = 1; i < num; i++)         
        if (arr[i] < min_element)
            min_element = arr[i];
    return min_element;
}

int main() {
  int i, count;
  cout<<"Nhập số lương phần tử trong mảng:";
  cin>>count;
  int number[count];

  cout<<"\nNhập giá trị cho từng phần tử trong mảng:\n";
  for (i = 0; i < count; ++i)
      cin>>number[i];

  cout<<"Giá trị nhỏ nhất trong mảng là: "<< largest_element(number, count);
    cout<<"\n------------------------------\n";
    cout<<"Chương trình này được đăng tại codehow.net";
}

Kết quả:

bai23 03 PNG

Như vậy là chúng ta đã cùng nhau tìm hiểu về cách tìm số lớn nhất, nhỏ nhất của mảng trong C / C++. Các bạn có thể luyện tập nhiều dạng bài tập hơn tại serries bài tập C / C++ của codehow nhé. Cảm ơn các bạn rất nhiều!!!

Cùng chuyên mục:

Danh sách liên kết (Linked List) là gì? Các loại danh sách liên kết

Danh sách liên kết (Linked List) là gì? Các loại danh sách liên kết

Sử dụng đệ quy để giải bài toán tháp Hà Nội

Sử dụng đệ quy để giải bài toán tháp Hà Nội

Đệ quy tương hỗ (Mutual Recursion) trong C / C++

Đệ quy tương hỗ (Mutual Recursion) trong C / C++

Đệ quy lồng (Nested Recursion) trong C / C++

Đệ quy lồng (Nested Recursion) trong C / C++

Đệ quy đa tuyến (Exponential Recursion) trong C / C++

Đệ quy đa tuyến (Exponential Recursion) trong C / C++

Đệ quy nhị phân (Binary Recursion) trong C / C++

Đệ quy nhị phân (Binary Recursion) trong C / C++

Đệ quy đuôi (Tail Recursion) trong C / C++

Đệ quy đuôi (Tail Recursion) trong C / C++

Đệ quy tuyến tính (Linear Recursion) trong C / C++

Đệ quy tuyến tính (Linear Recursion) trong C / C++

Hàm đệ quy là gì? Các loại hàm đệ quy trong C / C++

Hàm đệ quy là gì? Các loại hàm đệ quy trong C / C++

Thuật toán sắp xếp Quick Sort trong C / C++

Thuật toán sắp xếp Quick Sort trong C / C++

Thuật toán sắp xếp trộn (Merge Sort) trong C / C++

Thuật toán sắp xếp trộn (Merge Sort) trong C / C++

Thuật toán sắp xếp chọn (Selection Sort) trong C / C++

Thuật toán sắp xếp chọn (Selection Sort) trong C / C++

Thuật toán sắp xếp chèn (Insertion Sort) trong C / C++

Thuật toán sắp xếp chèn (Insertion Sort) trong C / C++

Thuật toán sắp xếp nổi bọt (Bubble Sort) trong C / C++

Thuật toán sắp xếp nổi bọt (Bubble Sort) trong C / C++

Thuật toán tìm kiếm nội suy (Interpolation Search) trong C / C++

Thuật toán tìm kiếm nội suy (Interpolation Search) trong C / C++

Thuật toán tìm kiếm nhị phần (Binary Search) trong C / C++

Thuật toán tìm kiếm nhị phần (Binary Search) trong C / C++

Thuật toán tìm kiếm tuyến tính (Linear Search) trong C / C++

Thuật toán tìm kiếm tuyến tính (Linear Search) trong C / C++

Thuật toán kiểm tra năm nhuận trong C / C++

Thuật toán kiểm tra năm nhuận trong C / C++

Thuật toán kiểm tra số chẵn lẻ trong C / C++

Thuật toán kiểm tra số chẵn lẻ trong C / C++

Thuật toán tính lũy thừa trong C / C++

Thuật toán tính lũy thừa trong C / C++

Top