Trong ngôn ngữ C không mãi sau hàm gồm sẵn làm sao góp họ đảo ngược mảng trong C cả. Do vậy bọn họ rất cần phải áp dụng những hàm tất cả sẵn không giống để rất có thể từ bỏ tạo nên hàm đảo ngược mảng trong C. Ứng dụng hàm này, chúng ta có thể hòn đảo ngược dãy số vào C với bạn sẽ học tập được chúng sau bài học này.

Bạn đang xem: Đảo ngược mảng trong c

Có 2 phương thức để hòn đảo ngược mảng trong C nhỏng sau:

Đảo ngược mảng bằng phương pháp cần sử dụng defineĐảo ngược mảng bằng cách viết trực tiếp

Logic đảo ngược mảng vào C | Đảo ngược hàng số trong C

Đảo ngược mảng trong C là giải pháp xử lý viết lại một mảng cùng với các phần tử theo đồ vật trường đoản cú ngược trở lại từ thời điểm cuối lên đầu. Lưu ý tại đây mảng là mảng số, vì thế chúng ta cũng có thể Hotline xử trí này là hòn đảo ngược hàng số vào C.

Nếu bạn muốn đảo ngược một mảng chuỗi trong C, hãy theo dõi và quan sát bài viết sau:

Quay trở lại với cách xử lý đảo ngược dãy số trong C, ví dụ bọn họ mảng hàng số như sau:

Copy

int array<> = 0, 1, 2, 3, 4, 5;

Để hòn đảo ngược dãy số này này, bọn họ thực hiện ý tưởng hết sức đơn giản và dễ dàng. Chúng ta hoán thù đổi số đầu với số cuối trong mảng, tiếp nối sút phạm vi bằng phương pháp tiến dần về giữa mảng cùng tái diễn quá trình hoán thù thay đổi số đầu với số cuối trong mảng.

Nói bí quyết không giống, với mảng số sống bên trên thì bọn họ sẽ hoán thù thay đổi 0 với 5, 1 với 4, với 2 cùng với 3 , nhằm thu về mảng tác dụng là 5, 4, 3, 2, 1, 0.

*

Lại nữa, nhằm có thể hoán thù đổi 2 phần tử như trên, chúng ta rất cần phải chuẩn bị một vùng trong thời điểm tạm thời nhằm đựng 1 trong những 2 bộ phận, cùng hân oán đổi với súc tích temp = X; X = Y; Y = temp;

*

Và nhằm thực hiện được logic hoán thù thay đổi 2 số sinh hoạt trên, bọn họ sẽ sở hữu được 2 phương thức là định nghĩa cách xử trí hoán thay đổi bằng từ khoádefine hoặc là viết thẳng cách xử trí hân oán đổi vào hàm trường đoản cú sinh sản. Tương đương với bọn chúng vẫn là 2 phương thức hòn đảo ngược mảng trong C nlỗi tiếp sau đây.

Đảo ngược mảng bằng phương pháp cần sử dụng define

define là một trong keyword dùng để tư tưởng macro vào C. Bằng phương pháp thực hiện define, bạn có thể có mang những trở nên hoặc hàm được thực hiện các lần vào công tác bởi một macro, cùng thực hiện macro này thay mặt cho các cách xử lý đó trong chương trình C.

lấy ví dụ, nhì macro sau đây sẽ giúp đỡ họ có mang số PI, cũng tương tự hàm tính diện tích hình trong chẳng hạn.

Copy

#define PI 3.14#define area(r) (PI*r*r)

Quay trở về bài tân oán hòn đảo ngược mảng vào C, bọn họ đang sử dụng define nhằm chế tác một macro nhằm khái niệm hàm hân oán thay đổi 2 thành phần vào C nhỏng sau:

Copy

#define SWAP(type,x,y) dotype tmp = x; x = y; y = tmp;while(0)

Và sử dụng macro này, bạn có thể hoàn thành hàm hòn đảo ngược mảng vào C nhỏng sau:

Copy

#include //Định nghĩa mateo gồm chức năng hoán thay đổi 2 phần tử#define SWAP(type,x,y) dotype tmp = x; x = y; y = tmp;while(0)//Tạo hàm đảo ngược mảngvoid reverse(int* array, int size) for (int i = 0; i 2; ++i) SWAP(int, array, array); /*Tạo hàm in phần tử vào mảng*/void show_array(int array<>, int length) for(short i = 0; i printf("%d ", array); printf(" ");int main(void) int array1<> = 11, 22, 33, 44,; int array2<> = 0, 1, 2, 3, 4, 5; //Lấy độ lâu năm mảng ban đầu int size1 = sizeof array1 / sizeof(int); int size2 = sizeof array2 / sizeof(int); reverse(array1, size1); reverse(array2, size2); //in mảng hiệu quả show_array(array1,size1); show_array(array2,size2); return 0;

Kết trái của phnghiền đảo ngược mảng trong C như sau đây. quý khách hàng hãy thử chạy công tác cùng khám nghiệm nhé.

Xem thêm: Ngân Hàng Đề Thi Tiếng Anh Vào Lớp 6 Amsterdam, Đề Thi Tiếng Anh Vào Lớp 6 Amsterdam Năm 2020

Copy

44 33 22 11 5 4 3 2 1 0

Đảo ngược mảng bằng phương pháp viết cách xử trí hoán thù đổi vào hàm

Với cách thứ hai này, cố kỉnh bởi cần sử dụng define nhằm có mang cách xử trí thì bọn họ đang viết thẳng những cách xử trí hoán thù đổi 2 số vào vào hàm đảo ngược mảng vào C như sau:

Copy

void reverse(int* array, int size) /*Tạo vòng lặp nhằm hoán thay đổi số đầu cùng với số cuối vào mảng với thu dần dần khoảng cách về giữa mảng*/ for (int i = 0; i 2; ++i) //Thực hiện phxay hoán thù thay đổi int temp = array; array = array; array = temp;

Và họ viết lịch trình đảo ngược mảng vào C cùng với hàm nàgiống hệt như dưới đây:

Copy

#include //Tạo hàm hòn đảo ngược mảngvoid reverse(int* array, int size) /*Tạo vòng lặp nhằm hoán thù thay đổi số đầu cùng với số cuối vào mảng với thu dần khoảng cách về thân mảng*/ for (int i = 0; i 2; ++i) //Thực hiện phxay hoán thù thay đổi int temp = array; array = array

; array = temp; /*Tạo hàm in phần tử vào mảng*/void show_array(int array<>, int length) for(short i = 0; i printf("%d ", array); printf(" ");int main(void) int array1<> = 11, 22, 33, 44,; int array2<> = 0, 1, 2, 3, 4, 5; //Lấy độ dài mảng lúc đầu int size1 = sizeof array1 / sizeof(int); int size2 = sizeof array2 / sizeof(int); reverse(array1, size1); reverse(array2, size2); //in mảng hiệu quả show_array(array1,size1); show_array(array2,size2); return 0;
Và họ cũng đuc rút tác dụng hòn đảo ngược mảng trong C tựa như nlỗi cùng với bí quyết ban đầu:

Copy

44 33 22 11 5 4 3 2 1 0

Tổng kết

Trên phía trên Kiyoshi đang chỉ dẫn các bạn phương pháp đảo ngược mảng vào C rồi. Để nắm rõ câu chữ bài học kinh nghiệm rộng, bạn hãy thực hành thực tế viết lại những ví dụ của ngày bây giờ nhé.