Tải bản đầy đủ (.doc) (7 trang)

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

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (87.15 KB, 7 trang )

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;
}
}
}
}
}

×