• Trang chủ
  • Khóa học
  • Trang
    • Bài viết
    • Câu hỏi thường gặp
    • Điều khoản và Điều kiện
    • Thành viên trả phí
  • Về chúng tôi
  • Tài khoản
  • Liên hệ
Bạn có thắc mắc?
+84 38 213 5995
trieuthan92pro@gmail.com
Đăng kýĐăng nhập
Branium Academy
  • Trang chủ
  • Khóa học
  • Trang
    • Bài viết
    • Câu hỏi thường gặp
    • Điều khoản và Điều kiện
    • Thành viên trả phí
  • Về chúng tôi
  • Tài khoản
  • Liên hệ

    Uncategorized

    • Trang chủ
    • Blog
    • Uncategorized
    • Tìm giá trị lớn nhất trong mảng 1 chiều

    Tìm giá trị lớn nhất trong mảng 1 chiều

    • Posted by Thân Triệu
    • Phân loại Uncategorized
    • Date 25/07/2020
    • Các bình luận 3 Các bình luận

    Trong bài này chúng ta sẽ cùng nhau phân tích và giải quyết bài toán liên quan đến việc tìm giá trị lớn nhất trong mảng 1 chiều nhé. Có nhiều cách để làm bài này, có thể kể đến như:

    • Sắp xếp mảng theo thứ tự tăng dần rồi chọn phần tử cuối cùng của mảng.
    • Sắp xếp theo thứ tự tăng dần rồi chọn phần tử đầu tiên của mảng.
    • Duyệt mảng với một vòng lặp đơn và tìm phần tử lớn nhất.

    Nội dung này sẽ làm theo cách thứ 3 kể trên. Gọi mảng cần xét là a[], chỉ số phần tử là i. Các bước thực hiện gồm:

    • Bước 1: Khởi tạo biến max lưu giá trị lớn nhất và gán cho nó phần tử đầu tiên của mảng
    • Bước 2: Dùng vòng lặp để duyệt các phần tử mảng còn lại, từ phần tử thứ 2 đến hết mảng:
      • Bước 2.1: Nếu phần tử thứ i nào đó có giá trị lớn hơn max, cập nhật lại giá trị max = a[i]
      • Bước 2.2: Nếu không có thì bỏ qua
    • Bước 3: Kết luận giá trị lớn nhất trong mảng trên
    #include <stdio.h>
    #define MAX 200
    // khai bao ham nguyen mau
    void nhapMang(int* a, const int n);
    double timMax(const int* a, const int n);
    int main() {
    	int a[MAX]; // mang kieu double
    	int n; // so phan tu thuc te cua mang
    	printf("Nhap so phan tu mang > 0: ");
    	scanf("%d", &n);
    	if(n > 0) { // neu so phan tu mang la so duong
    		nhapMang(a, n); // goi ham nhap mang
    		int max = timMax(a, n); // goi ham tim max
    		printf("max = %d\n", max);
    	} else {
    		puts("Vui long nhap so phan tu mang > 0!");
    	}
    	
    	return 0;	
    }
    // dinh nghia ham nhap mang
    void nhapMang(int* a, const int n) {
    	int i; // bien chi so phan tu mang
    	for(i = 0; i < n; i++) { // nhap cac phan tu cho mang
    		printf("a[%d] = ", i);
    		scanf("%d", &a[i]); // doc phan tu thu i vao tu ban phim
    	} // xong viec nhap mang
    }
    // dinh nghia ham tim max
    double timMax(const int* a, const int n) {
    	int i; // bien chi so phan tu mang
    	int max = a[0]; // gia su ban dau a[0] la max
    	for(i = 1; i < n; i++) { // tim phan tu max khac trong mang
    		if(a[i] > max) { // neu a[i] > max => cap nhat max
    			max = a[i]; // gan a[i] cho max
    		}
    	}
    	return max; // tra ve ket qua max
    }
    • Share:
    author avatar
    Thân Triệu

    Previous post

    Why You Should Read Every Day
    25/07/2020

    Next post

    Tìm giá trị lớn nhất trong mảng các số nguyên
    25/07/2020

    Có thể bạn quan tâm

    hello world
    Chương trình C hiển thị “Hello World”
    26 Tháng Bảy, 2020

      3 Comments

    1. Sarah
      31/03/2022
      Trả lời

      không hiểu lắm

    2. hung
      22/06/2022
      Trả lời

      int* có khác int không a

      • Thân Triệu
        22/06/2022
        Trả lời

        int* là khai báo con trỏ kiểu int, int là khai báo biến thông thường kiểu int. chi tiết e xem lại trong các bài học về kiểu dữ liệu và con trỏ

    Để lại câu trả lời Hủy

    Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

    Search

    Chuyên mục

    • Bài tập C#
    • Bài tập lập trình C
    • Bài tập lập trình C phần cấu trúc rẽ nhánh
    • Bài tập lập trình C++
    • Bài tập lập trình Java
    • bài tập lập trình thân triệu
    • Bài tập phần mảng 1 chiều
    • Bài tập Python
    • Blog
    • Business
    • Design / Branding
    • giá trị min max
    • Hướng dẫn sử dụng hệ thống
    • Khảo sát
    • Uncategorized
    Khóa học Lập trình C cho người mới bắt đầu

    Khóa học Lập trình C cho người mới bắt đầu

    849,000₫ 512,000₫
    Khóa học lập trình Java từ cơ bản đến nâng cao

    Khóa học lập trình Java từ cơ bản đến nâng cao

    1,049,000₫ 709,000₫
    Khóa học lập trình C++ từ cơ bản đến nâng cao

    Khóa học lập trình C++ từ cơ bản đến nâng cao

    999,000₫ 649,000₫

    (+84) 38 213 5995

    trieuthan92@hotmail.com

    Branium Academy

    • Về chúng tôi
    • Bài viết
    • Liên hệ

    Liên kết

    • Khóa học
    • Các sự kiện
    • Câu hỏi thường gặp

    Hỗ trợ

    • Hỗ trợ Facebook
    • Hỗ trợ Teamviewer
    • Hỗ trợ Google Meet
    • Hỗ trợ Zoom

    Bản quyền © 2022 của Branium Academy. Bảo lưu mọi bản quyền.

    • Chính sách bảo mật
    • Điều khoản & Điều kiện
    • Sơ đồ trang
    • Các khóa học
    • Submissions
    • Password Recovery
    • Login

    Đăng nhập vào Branium Academy

    Quên mật khẩu?

    Chưa phải thành viên? Đăng ký ngay

    Đăng ký tài khoản mới

    Bạn đã có tài khoản? Đăng nhập ngay