Cách đảo ngược các phần tử trong mảng C#
Trong bài viết này mình sẽ hướng dẫn các bạn cách đảo ngược các phần tử trong mảng C#. Đây là bài tập cơ bản giúp các bạn làm quen với mảng một chiều trong C#.
Mình sẽ thực hiện một chương trình nhận các giá trị của các phần tử trong mảng từ người dùng. Sau đó thực hiện đảo ngược vị trí các phần tử đó rồi hiển thị ra màn hình.
Đảo ngược các phần tử trong mảng C#
Để có thể đảo ngược các vị trị, đầu tiên ta cần nhập vào các giá trị cho phần tử trong mảng. Tạo một biến n kiểu số nguyên và yêu cầu người dùng nhập vào số phần tử của mảng.
Tiếp đến sử dụng vòng lặp for lặp từ 0 đến n, mỗi lần lặp ta thêm một phần tử vào mảng (giá trị này do người dùng nhập).
Bài viết này được đăng tại [free tuts .net]
//khai báo biến n kiểu int là số phần tử của mảng. //sau đó yêu cầu người dùng nhập giá trị cho n Console.Write("\n Nhap vao so phan tu cua mang: "); int n = Convert.ToInt32(Console.ReadLine()); //khai báo một mảng arr kiểu double với số phần tử là n được nhập ở trên int[] arr = new int[n]; //khai báo các biến i, j, temp int i = 0, j = 0, temp; //sử dụng vòng lặp for để lặp và yêu cầu người dùng nhập vào từng giá trị cho từng phần tử for (i = 0; i < arr.Length; i++) { Console.Write(" Nhap vao gia tri cho phan tu thu {0}: ", i + 1); arr[i] = Convert.ToInt32(Console.ReadLine()); }
Sau đó áp dụng thuật toán đảo ngược để đảo ngược các phần tử.
//thuật toán đảo ngược sử dụng biến tạm là temp j = i - 1; i = 0; while (i < j) { temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; i++; j--; }
Cuối cùng sử dụng vòng lặp for để in các phần tử trong mảng ra màn hình console.
//sau khi đảo ngược sử dụng vòng lặp for để in các phần tử ra màn hình Console.Write("\n Mang sau khi dao nguoc: "); for (i = 0; i < n; i++) { Console.Write(arr[i] + " "); }
Full code:
using System; using System.Collections; namespace BaiTapCSharp { class Program { static void Main(string[] args) { //khai báo biến n kiểu int là số phần tử của mảng. //sau đó yêu cầu người dùng nhập giá trị cho n Console.Write("\n Nhap vao so phan tu cua mang: "); int n = Convert.ToInt32(Console.ReadLine()); //khai báo một mảng arr kiểu double với số phần tử là n được nhập ở trên int[] arr = new int[n]; //khai báo các biến i, j, temp int i = 0, j = 0, temp; //sử dụng vòng lặp for để lặp và yêu cầu người dùng nhập vào từng giá trị cho từng phần tử for (i = 0; i < arr.Length; i++) { Console.Write(" Nhap vao gia tri cho phan tu thu {0}: ", i + 1); arr[i] = Convert.ToInt32(Console.ReadLine()); } //thuật toán đảo ngược sử dụng biến tạm là temp j = i - 1; i = 0; while(i < j) { temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; i++; j--; } //sau khi đảo ngược sử dụng vòng lặp for để in các phần tử ra màn hình Console.Write("\n Mang sau khi dao nguoc: "); for(i = 0; i < n;i++) { Console.Write(arr[i] + " "); } Console.WriteLine("\n-----Chuong trinh nay duoc dang tai Freetuts.net---"); } } }
Kết quả:
Như vậy là chúng ta đã thực hiện xong chương trình đảo ngước các phần tử trong mảng C#. Đây là bài tập cơ bản về mảng vì vậy hãy luyện tập thật nhiều để sử dụng nó một cách thành thạo nhé. Chúc các bạn thành công