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)
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();
}
}
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 ;
(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!!");
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;
}
}
}
}
}