YOMEDIA
Bài giảng Hàm - mảng - Lương Trần Hy Hiến
Chia sẻ: Lavie Lavie
| Ngày:
| Loại File: PDF
| Số trang:18
60
lượt xem
5
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Mời các bạn tham khảo bài giảng Hàm - mảng của Lương Trần Hy Hiến sau đây để nắm bắt được những kiến thức về kiểu cấu trúc; phương thức/hàm; khai báo phương thức; mảng; mảng 1 chiều; làm việc với mảng một chiều; mảng hai chiều; mảng nhiều chiều.
AMBIENT/
Chủ đề:
Nội dung Text: Bài giảng Hàm - mảng - Lương Trần Hy Hiến
- HÀM – MẢNG
Lương Trần Hy Hiến - hyhien@gmail.com
- Kiểu cấu trúc
Tập hợp của các kiểu dữ liệu đã có dưới 01 cái
tên chung.
VD: Sinh viên có mã (chuỗi), họ tên (chuỗi),
ngày sinh (ngày tháng), điểm trung bình (số
thực), xếp loại (chuỗi).
struct SinhVien
{
string MaSV;
string HoTen;
DateTime NgayThang;
doube DiemTrungBinh;
string XepLoai;
}
- Kiểu cấu trúc (tt)
Sử dụng:
SinhVien sv;
sv.MaSV = “K29.103.010”;
sv.HoTen = “Nguyen Van Teo”;
sv.NgayThang = new DateTime(1999, 5, 19);
sv.DiemTrungBinh = 7.81;
sv.XepLoai = “Kha”;
- Phương thức/Hàm
Khai báo phương thức (hàm)
Truyền tham số dạng in (ø)
Truyền tham số dạng out
Truyền tham số dạng ref
- Khai báo phương thức
[modifiers] return_type MethodName([parameters])
{
// Thân phương thức
}
Ví dụ:
public static void Xuat(SinhVien sv)
{
Console.Write("Ma so: {0}. Ho ten: {1}", sv.MaSV, sv.HoTen);
//Cau lenh xuat Sinh vien
}
- Phương thức dạng “in”
Thân phương thức chỉ tham khảo giá trị của tham số không
thay đổi giá trị của tham số
Ví dụ:
public static void Xuat(SinhVien sv)
{
Console.Write("Ma so: {0}. Ho ten: {1}", sv.MaSV, sv.HoTen);
//Cau lenh xuat Sinh vien
}
Gọi hàm trong hàm Main:
Xuat(sv1);
- Phương thức dạng “out”
Thân phương thức cấp phát (khởi tạo) giá trị của tham số
trước khi sử dụng. Ra khỏi hàm giá trị của tham số thay đổi.
Ví dụ:
public static void Nhap(out SinhVien sv)
{
sv = new SinhVien();
//Cau lenh nhap sinh vien
}
Gọi trong hàm Main:
Nhap(out sv2);
- Phương thức dạng “ref”
Ra khỏi hàm giá trị của tham số sẽ thay đổi
Ví dụ:
public static void TinhDiemTrungBinh(ref StrHocSinh hs)
{
hs.DTB = (hs.Toan+ hs.Van)/2;
}
Gọi trong hàm Main:
TinhDiemTrungBinh(ref hs);
- MẢNG - ARRAY
Lương Trần Hy Hiến
- Mảng
Mảng (array) là tập hợp các phần tử có cùng
tên và cùng kiểu dữ liệu.
Các loại mảng:
Mảng 1 chiều
Mảng 2 chiều
Mảng nhiều chiều
Mảng Jagged Array
- Mảng 1 chiều
Cú pháp:
[ ] ;
Ví dụ:
int[] integers; // mảng kiểu số nguyên
integers = new int[32];
integers[0] = 35;// phần tử đầu tiên có giá trị 35
integers[31] = 432;// phần tử 32 có giá trị 432
string[] myArray = {"first element", "second
element", "third element"};
- Làm việc với mảng 1 chiều
Lấy kích thước mảng:
int arrayLength = myIntegers.Length;
Sắp xếp mảng số nguyên:
Array.Sort(myIntegers);
Đảo ngược mảng:
Array.Reverse(myArray);
Duyệt mảng: dùng vòng lặp for/foreach
- Bài tập 1
Slide 13
Viết hàm nhập mảng 1 chiều các số nguyên
Viết hàm xuất mảng 1 chiều các số nguyên
Viết hàm tính tổng các phần tử trong mảng
Viết hàm tìm số lớn nhất trong mảng 1 chiều
Viết hàm đếm số lượng số nguyên dương chẵn có trong
mảng
Viết hàm main thực hiện:
Khai báo mảng
Gọi hàm nhập
Gọi hàm xuất
In kết quả tổng
In số lớn nhất
In số lượng số nguyên dương chẵn
- Mảng 2 chiều
Cú pháp:
[,] ;
Ví dụ:
int[,] myRectArray = new int[2,3];
int[,] myRectArray = new int[,]{
{1,2},{3,4},{5,6},{7,8}}; //mảng 4 hàng 2 cột
string[,] beatleName = { {"Lennon","John"},
{"McCartney","Paul"}, {"Harrison","George"},
{"Starkey","Richard"} };
- Làm việc với mảng 2 chiều
Duyệt mảng:
double [, ] matrix = new double[10, 10];
for (int i = 0; i < 10; i++)
{
for (int j=0; j < 10; j++)
matrix[i, j] = 4;
}
- Mảng nhiều chiều
Ví dụ:
string[,,] my3DArray;
- Một số lưu ý khi sử dụng mảng
- Sử dụng thuộc tính Length của mảng thay vì
phải nắm số phần tử trong mảng
- Cấu trúc lặp foreach hữu hiệu hơn là dùng for
!!!
- Lấy số chiều 1 mảng : sử dụng thuộc tính rank
- Bài tập 2
Slide 18
Khai báo mảng số nguyên 2 chiều 4 dòng 5 cột.
Viết chương trình:
Nhập vào các phần tử của mảng (giá trị = số
thứ tự dòng + số thứ tự cột)
In các giá trị của mảng
In giá trị nhỏ nhất/lớn nhất trong mảng
In tổng số các giá trị, giá trị trung bình
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
ERROR:connection to 10.20.1.98:9315 failed (errno=111, msg=Connection refused)
ERROR:connection to 10.20.1.98:9315 failed (errno=111, msg=Connection refused)
Đang xử lý...