Tài liệu Các dạng bài tập C# :Căn bản mảng 1 chiều docx

7 3.6K 60
Tài liệu Các dạng bài tập C# :Căn bản mảng 1 chiều docx

Đang tải... (xem toàn văn)

Thông tin tài liệu

Các dạng bài tập C# :Căn bản mảng 1 chiều Saturday, 18. April 2009, 13:00:46 Bài tập C# Đa phần các thao tác trên C# đều thực hiện dựa trên hàm, thụât toán về mảng 1 chiều, nếu nắm vững các thụât toán, thao tác về mảng 1 chiều thì C# đối với bạn chỉ khó về mặt kỹ thuật cài đặt thôi. Bài tập căn bản đầu tiên sẽ là về mảng 1 chiều: - Xóa phần tử x trong danh sách. - Xóa phần tử theo vị trí trong danh sách. - Xóa tất cả phần tử x trong danh sách. - Xóa tất cả số âm trong danh sách. - Tìm phần tử lớn nhất trong mảng. - Tìm vị trí đầu tiên của phần tử lớn nhất trong mảng. - Xóa tất cả phần tử lớn nhất trong mảng. - Tìm tất cả vị trí của phần tử lớn nhất trong mảng. - Thay thế phần tử x bằng phần tử y trong danh sách. - Chèn một phần tử vào trong danh sách tại vị trí bất kì. - Chèn một phần tử x vào trước phần tử y trong danh sách. - Chèn một phần tử x vào sau phần tử y trong danh sách. - Đảo ngược danh sách. - Đếm số phần tử (không tính trùng nhau) trong dánh sách. - Xóa tất cả phần tử trùng nhau trong danh sách. - Viết thực đơn cho ứng dụng trên. =============================================================== using System; using System.Collections.Generic; using System.Text; namespace Thao_tac_mang_1_chieu_2_ { class Program { static void Main(string[] args) { ThucDon(); } static int[] a = new int[100]; static int len = 0; static void nhapNgauNhien() { Console.WriteLine("Nhap vao so phan tu cua mang: "); len = int.Parse(Console.ReadLine()); Random r = new Random(); for (int i = 0; i < len; i++) a = r.Next(10); } static void xuatMang() { for (int i = 0; i < len; i++) Console.Write("\t{0}", a); } static int tongMang() { int tong = 0; for (int i = 0; i < len; i++) tong += a; return tong; } static bool xoaTheoViTri(int vt) { if (vt < 0 || vt > len) return false; else for (int i = vt; i < len; i++) a = a; len ; return true; } static bool timViTriXDauTien(int x) { for (int i = 0; i < len; i++) if (a == x) return true; return false; } static int timPhanTuLonNhat() { int max = a[0]; for (int i = 1; i < len; i++) if (max < a) max = a; return max; } static void XoaCacPhanTuLonNhat() { int max = timPhanTuLonNhat(); for (int i = 0; i < len; i++) xoaPhanTuX(max); } static void timTatCaCacVTLN() { int h = 0; int max = timPhanTuLonNhat(); for (int i = 0; i < len; i++) { if (a == max) a[h] = i; h++; } Console.WriteLine("Cac vi tri cua PT Max trong day: "); for (int j = 0; j < h; j++) { Console.WriteLine("\t{0}", a[h]); } } static int timPhanTuX(int x) { for (int i = 0; i < len; i++) if (a == x) return i; return -1; } static bool xoaPhanTuX(int x) { int vt = timPhanTuX(x); if (vt == -1) return false; else { for (int i = vt; i < len; i++) a = a; len ; return true; } } static void xoaTatCaPhanTuX(int x) { while (xoaPhanTuX(x) != false) ; } static void xoaSoAm() { for (int i = 0; i < len; i++) if (a < 0) xoaPhanTuX(a); } static bool thayThePhanTu(int x, int y) { if (timPhanTuX(x) == -1) return false; else { for (int i = 0; i < len; i++) if (a == x) a = y; return true; } } static void chenXCoVTBatKy(int vt, int x) { for (int i = len; i > vt; i ) a = a; a[vt] = x; len ; } enum LietKe { tongMang = 1, xoaTheoViTri, timViTriXDauTien, timPhanTuLonNhat, XoaCacPhanTuLonNhat, timTatCaCacVTLN, xoaTatCaPhanTuX, xoaSoAm, thayThePhanTu, chenXCoVTBatKy, Thoat } static void ThucDon() { nhapNgauNhien(); xuatMang(); while (true) { int x, y, vt; Console.WriteLine("\n"); Console.WriteLine("Chon chuc nang tuong ung cua chuong trinh: "); Console.WriteLine("______________Bang Menu________________"); Console.WriteLine("________{0}> Tong cua mang_____________", (int)LietKe.tongMang); Console.WriteLine("________{0}> Xoa phan tu theo vi tri___", (int)LietKe.xoaTheoViTri); Console.WriteLine("________{0}> Tim vi tri dau tien cua x_", (int)LietKe.timViTriXDauTien); Console.WriteLine("________{0}> Tim phan tu lon nhat______", (int)LietKe.timPhanTuLonNhat); Console.WriteLine("________{0}> Xoa cac phan tu lon nhat__", (int)LietKe.XoaCacPhanTuLonNhat); Console.WriteLine("________{0}> Xoa cac phan tu x_________", (int)LietKe.xoaTatCaPhanTuX); Console.WriteLine("________{0}> Xoa so am_________________", (int)LietKe.xoaSoAm); Console.WriteLine("________{0}> Thay the phan tu__________", (int)LietKe.thayThePhanTu); Console.WriteLine("________{0}> Chen x co vi tri bat ky___", (int)LietKe.chenXCoVTBatKy); Console.WriteLine("________{0}> ________Thoat_____________", (int)LietKe.Thoat); int chon = int.Parse(Console.ReadLine()); switch (chon) { case (int)LietKe.tongMang: Console.WriteLine("Tong cua mang la: {0}", tongMang()); break; case (int)LietKe.xoaTheoViTri: Console.WriteLine("Nhap vao vi tri can xoa: "); vt = int.Parse(Console.ReadLine()); if (xoaTheoViTri(vt) == true) { Console.WriteLine("Mang sau khi xoa phan tu o vi tri {0} :", vt); xuatMang(); } else Console.WriteLine("Nhap vi tri ko hop le!!"); break; case (int)LietKe.timViTriXDauTien: Console.WriteLine("Nhap vao phan tu can tim: "); x = int.Parse(Console.ReadLine()); Console.WriteLine("Vi tri {0} la:" + timViTriXDauTien(x), x); break; case (int)LietKe.timPhanTuLonNhat: Console.WriteLine("Phan tu lon nhat cua mang:{0}", timPhanTuLonNhat()); break; case (int)LietKe.XoaCacPhanTuLonNhat: Console.WriteLine("Mang sau khi xoa cac phan tu lon nhat!"); XoaCacPhanTuLonNhat(); xuatMang(); break; case (int)LietKe.xoaTatCaPhanTuX: Console.WriteLine("Nhap vao phan tu x can xoa:"); x = int.Parse(Console.ReadLine()); xoaTatCaPhanTuX(x); Console.WriteLine("Mang sau khi xoa tat ca cac phan tu {0}", x); xuatMang(); break; case (int)LietKe.xoaSoAm: Console.WriteLine("Mang sau khi xoa cac so am: "); xoaSoAm(); xuatMang(); break; case (int)LietKe.thayThePhanTu: Console.WriteLine("Nhap vao phan tu can thay the co trong day: "); x = int.Parse(Console.ReadLine()); Console.WriteLine("Nhap vao gia tri de thay the cho {0}: ", x); y = int.Parse(Console.ReadLine()); if (thayThePhanTu(x, y) == true) Console.WriteLine("Phan tu ban muon thay the ko co trong mang!"); else xuatMang(); break; case (int)LietKe.chenXCoVTBatKy: Console.WriteLine("Nhap vao theo thu tu phan tu va vi tri can chen: "); x = int.Parse(Console.ReadLine()); vt = int.Parse(Console.ReadLine()); chenXCoVTBatKy(vt, x); xuatMang(); break; case (int)LietKe.Thoat: return; } } } } } . Các dạng bài tập C# :Căn bản mảng 1 chiều Saturday, 18 . April 2009, 13 :00:46 Bài tập C# Đa phần các thao tác trên C# đều thực hiện dựa. toán về mảng 1 chiều, nếu nắm vững các thụât toán, thao tác về mảng 1 chiều thì C# đối với bạn chỉ khó về mặt kỹ thuật cài đặt thôi. Bài tập căn bản đầu

Ngày đăng: 25/01/2014, 10:20

Từ khóa liên quan

Mục lục

  • Các dạng bài tập C# :Căn bản mảng 1 chiều

Tài liệu cùng người dùng

Tài liệu liên quan