Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 40 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
40
Dung lượng
506,5 KB
Nội dung
Tin Học Cơ Sở Hàm Trong Bài Giảng 04 • Kiểu Mảng: KiểuDữLiệu TênMảng[ĐộDài]; – – – – Tập hợ p liệu có kiểu Độ dài không đổi, phải xác định khai báo (hằng số) Thườ ng mảng không đầy, phải quản lý số phần tử 02 cách khở i tạo liệu mảng • Ngay khai báo: int diem_so[] = {5, 8, 4}; • Dùng vòng lặp (for): for(…) { diem_so[i] = …; } – Truy cập sử dụng số phần tử: • Lư u ý: số khoảng từ đến ĐộDài-1 – Các thao tác vớ i mảng: nói chung dùng vòng lặp Lê Nguyên Khôi Trong Bài Giảng 04 • Nhập/Xuất liệu – Sử dụng vòng lặp & số phần tử, quản lý số phần tử • Tìm kiếm phần tử X – Duyệt từ đầu (cuối) tớ i tìm thấy X • Chèn X vào mảng: – Chư a xếp: chèn vào cuối – Đã xếp: tìm vị trí phù hợp & lùi từ vị trí chèn Lê Nguyên Khôi Trong Bài Giảng 04 • Xóa X khỏi mảng: – Tìm X xóa – Chư a xếp: đổi chỗ vớ i phần tử cuối – Đã xếp: tiến từ vị trí chèn • Sắp xếp lự a chọn: – Tìm phần tử nhỏ đưa lên đầu mảng chưa xếp – Lặp lại tớ i mảng chưa xếp phần tử • Mảng đa chiều: – C không hỗ trợ , coi mảng chiều với phần tử mảng Lê Nguyên Khôi Nôị Dung • Các hàm đị nh nghĩa sẵn C: – Hàm trả giá trị – Hàm không trả giá trị • Các hàm tự đị nh nghĩa – Khai báo hàm, Đị nh nghĩa hàm, Gọi hàm – Prototype (Nguyên mẫu) hàm • Phạm vi hoạt độ ng – Biến cục – Hằng & Biến toàn cục Lê Nguyên Khôi Giới thiệu Hàm • Khối lệnh chươ ng trình (chia để trị) – Xây dự ng chươ ng trình từ thành phần – Dễ dàng quản lý từ ng thành phần • Thuật ngữ ngôn ngữ khác – Thủ tục, chươ ng trình con, phươ ng thức – Trong C: Hàm • I-P-O – Input – Process – Output (Nhập – Xử lý – Xuất) – Phần chươ ng trình Lê Nguyên Khôi Một số nguyên tắc • Các hàm NNLT C đề u ngang cấp vớ i nhau: – Hàm không đượ c khai báo lồng – Thứ tự khai báo không quan trọng • Hàm nhận xử lý nhiều tham số tham số • Hàm trả giá trị không • Biến khai báo hàm F có giá trị F, không sử dụng đượ c biến hàm khác đượ c Lê Nguyên Khôi Ví dụ hàm tính xn kiểu giá trị trả nhận vào tham số gọi double Power(double x, int n) { double kq = 1; int i; for(i=0; i[...]... hàm • 3 điểm chú ý khi sử dụng hàm: – Khai báo hàm (Hàm nguyên mẫu) • Chứ a thông tin cho trình dịch • Thông dịch chính xác cho lời gọi hàm – Định nghĩa hàm • Toàn bộ đoạn mã nguồn cho thấy hàm làm gì – Lờ i gọi hàm • Chuyển điều khiển cho hàm Lê Nguyên Khôi 19 Khai báo hàm • Còn gọi là hàm nguyên mẫu • Thông báo cách dịch hàm cho trình dịch – Cú pháp: TênHàm(); – Ví... i gọi hàm có thể ở bất cứ đâu nếu kiểu trả về của hàm là hợ p lệ Lê Nguyên Khôi 13 Hàm toán học • pow(x,y) : trả về x mũ y double kq, x = 3.0, y = 2.0; kq = pow(x, y); printf(“%lf”, kq); In ra màn hình 9.0 (3.02.0 = 9.0) • Chú ý: hàm này nhận 2 đối số Hàm có thể nhận nhiều đối số vớ i kiểu khác nhau Lê Nguyên Khôi 14 Hàm toán học (tiếp) Lê Nguyên Khôi 15 Hàm toán học (tiếp) Lê Nguyên Khôi 16 Hàm void... báo hàm • Tham số/Đố i số thự c sự : – Trong lờ i gọi hàm • Đôi khi quy ướ c tham số là hình thức, đối số là thự c sự Lê Nguyên Khôi 26 Hàm gọi hàm • Chúng ta đã và đang sử dụng cách này – Sử dụng các hàm đị nh sẵn trong main() • Yêu cầu duy nhất – Phải khai báo hàm trướ c khi gọi hàm • Định nghĩa hàm có thể ở bất kỳ đâu – Sau định nghĩa main() – Trong một file riêng biệt • Một hàm có thể gọi nhiều hàm. .. Nguyên Khôi 29 Gọi hàm void • Giống gọi hàm void trong thư viện • Gọi từ hàm khác, ví dụ main() show(doF, doC); show(32.5, 0.3); • Không phép gán, do không có giá trị trả về • Đối số thự c (doF , doC) –Đượ c truyền vào hàm Hàm đượ c gọi vớ i đối số truyền vào Lê Nguyên Khôi 30 Hàm đệ quy • Các hàm tự gọi chính mình • Chỉ giải quyết các trườ ng hợ p cơ bản • Nếu không phải trườ ng hợ p cơ bản – Chia bài... return result; } Lê Nguyên Khôi 22 Vị trí đị nh nghĩa hàm • Dướ i hàm main() – Không phải bên trong main() – Nhớ cần khai báo nguyên mẫu hàm trướ c main() • Tham số hình thứ c (biến) để truyền dữ liệu vào hàm • Lệnh return trả lại dữ liệu – Không có return đối vớ i các hàm void – Nói chung là lệnh cuối cùng Lê Nguyên Khôi 23 Gọi hàm • Giống như gọi các hàm đị nh sẵn double m = Power(x, n); Power trả về... biến m • Đối số: x, n –Đối số có thể là giá trị hằng, biến, biểu thức, hàm khác hoặc kết hợ p của các dạng –Trong lờ i gọi hàm, đối số đôi khi đượ c gọi là đối số thự c (do chứa dữ liệu thực) Lê Nguyên Khôi 24 Khai báo hàm (PP khác) • Khai báo hàm là cung cấp thông tin cho trình dịch • Trình dịch chỉ cần biết: – Kiểu trả về – Tên hàm – Danh sach ́ kiêu ̉ cua ̉ tham số • Có thể bỏ qua tên của tham số... phần • 9.0: • sqrt: • theRoot: đối số của hàm tên hàm biến lư u giá trị trả về – I-P-O • 9.0: • sqrt: • theRoot: Lê Nguyên Khôi input process (tính khai căn) output 12 Cách gọi hàm • Phép gán theRoot = sqrt(9.0);: – Biểu thứ c sqrt(9.0) là lờ i gọi hàm – Đối số trong lờ i gọi hàm (9.0) có thể là một giá trị, biến, biểu thứ c hoặc một lờ i gọi hàm khác – Lờ i gọi hàm cũng có thể là một phần của biểu thứ... Power(double x, int n); • Phải đặt trướ c khi gọi hàm: – Trong vùng khai báo của main() – Hoặc ở trướ c main() trong vùng toàn cục Lê Nguyên Khôi 20 Định nghĩa hàm • Cài đặ t hàm • Giống cài đặ t hàm main() TênHàm(); { //khai báo các biến của hàm // các lệnh thực thi return ; } Lê Nguyên Khôi 21 Định nghĩa hàm • Ví dụ: double Power(double x, int n) { double... Trong một file riêng biệt • Một hàm có thể gọi nhiều hàm khác • Một hàm có thể gọi chính nó (đệ quy) Lê Nguyên Khôi 27 Khai báo hàm void • Giống khai báo hàm trả về giá trị • Kiểu trả về là “void” • Ví dụ: – Khai báo/Nguyên mẫu hàm void show(double doF, double doC); •Kiểu trả về “void” •Không trả về thông tin gì Lê Nguyên Khôi 28 Khai báo hàm void void show(double doF, double doC) { printf(“%f do F bang.. .Hàm đị nh sẵn • Các hàm trong thư viện • Hai loại hàm: – Trả về giá trị – Không trả về giá trị (void) • Phải gọi các thư viện phù hợ p, sử dụng #include – (cho printf, scanf) – Lê Nguyên Khôi 11 Sử dụng hàm đị nh sẵn • Các hàm toán học tiện ích: – Trong thư viện – Phần lớ n trả về kết quả là một giá ... Khôi Nôị Dung • Các hàm đị nh nghĩa sẵn C: – Hàm trả giá trị – Hàm không trả giá trị • Các hàm tự đị nh nghĩa – Khai báo hàm, Đị nh nghĩa hàm, Gọi hàm – Prototype (Nguyên mẫu) hàm • Phạm vi hoạt... lời gọi hàm – Định nghĩa hàm • Toàn đoạn mã nguồn cho thấy hàm làm – Lờ i gọi hàm • Chuyển điều khiển cho hàm Lê Nguyên Khôi 19 Khai báo hàm • Còn gọi hàm nguyên mẫu • Thông báo cách dịch hàm cho... 9.0) • Chú ý: hàm nhận đối số Hàm nhận nhiều đối số vớ i kiểu khác Lê Nguyên Khôi 14 Hàm toán học (tiếp) Lê Nguyên Khôi 15 Hàm toán học (tiếp) Lê Nguyên Khôi 16 Hàm void đị nh sẵn • Không trả