Danh mục

Kỹ thuật lập trình - Ngôn ngữ lập trình C - Các kiểu dữ liệu Nâng cao và Sắp xếp

Số trang: 18      Loại file: doc      Dung lượng: 4.00 KB      Lượt xem: 10      Lượt tải: 0    
tailieu_vip

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Các chương trình ứng dụng trong thực tế đòi hỏi lưu trữ các kiểu dữ liệu khác nhau. Tuy nhiên, các kiểu dữ liệu của C mà chúng ta đã được học có thể không đủ trong các trường hợp đó. Vì vậy, C cho phép tạo ra các kiểu dữ liệu do người dùng định nghĩa. Một trong n hững kiểu như vậy là cấu trúc (structure)
Nội dung trích xuất từ tài liệu:
Kỹ thuật lập trình - Ngôn ngữ lập trình C - Các kiểu dữ liệu Nâng cao và Sắp xếpBài 19 Các Kiểu dữ liệu Nâng cao và Sắp xếpMục tiêu:Kết thúc bài học này, bạn có thể: Tìm hiểu cấu trúc (structure) và công dụng của chúng Định nghĩa cấu trúc Khai báo các biến kiểu cấu trúc Tìm hiểu cách truy cập vào các phần tử của cấu trúc Tìm hiểu cách khởi tạo cấu trúc Tìm hiểu cách sử dụng cấu trúc với câu lệnh gán Tìm hiểu cách truyền tham số kiểu cấu trúc Sử dụng mảng cấu trúc Tìm hiểu cách khởi tạo các mảng cấu trúc Tìm hiểu con trỏ đến cấu trúc Tìm hiểu cách truyền đối số kiểu con trỏ cấu trúc vào hàm . Tìm hiểu từ khóa typedef Tìm hiểu hai thuật toán sắp xếp mảng là Insertion sort và Bubble sort.Giới thiệuCác chương trình ứng dụng trong thực tế đòi hỏi lưu trữ các kiểu dữ liệu khác nhau. Tuy nhiên, cáckiểu dữ liệu của C mà chúng ta đã được học có thể không đủ trong các trường hợp đó. Vì vậy, Ccho phép tạo ra các kiểu dữ liệu do người dùng định nghĩa. Một trong những kiểu như vậy là cấutrúc (structure). Một cấu trúc là một tập các biến được nhóm lại với nhau có cùng tên. Một kiểudữ liệu cũng có thể được đặt tên mới bằng cách sử dụng từ khóa typedef.Các ứng dụng thường lưu trữ một số lượng dữ liệu rất lớn. Trong những trường hợp này, việcđịnh vị một mục dữ liệu nào đó có thể tốn nhiều thời gian. Sắp xếp các giá trị theo một trật tự nàođó sẽ làm cho công việc tìm kiếm nhanh chóng và dễ dàng hơn. Trong chương này, chúng ta cũngsẽ xem một số giải thuật dùng để sắp xếp các mảng.19.1 Cấu trúcBiến được sử dụng để lưu giữ một mẫu dữ liệu tại một thời điểm và mảng được sử dụng để lưugiữ một số mẫudữ liệu có cùng kiểu. Tuy nhiên, một chương trình có thể yêu cầu xử lý các mụcdữ liệu có kiểu khác nhau trong cùng một đơn vị chung. Ở trường hợp này, cả biến và mảng đềukhông thích hợp để sử dụng.Ví dụ, một chương trình được viết để lưu trữ dữ liệu về một danh mục sách. Chương trình đòi hỏiphải nhập và lưu trữ tên của mỗi quyển sách (một mảng chuỗi), tên của tác giả (một mảng chuỗikhác), lần xuất bản (một số nguyên), giá của quyển sách (một số thực). Một mảng đa chiều khôngthể sử dụng để làm điều này, vì các phần tử của một mảng phải có cùng kiểu. Trong trường hợpnày, việc sử dụng cấu trúc sẽ làm cho mọi việc trở nên đơn giản hơn.Các Kiểu dữ liệu Nâng cao và Sắp xếp 3Một cấu trúc bao gồm một số mẫu dữ liệu, không cần phải cùng kiểu, được nhóm lại với nhau.Trong ví dụ trên, một cấu trúc sẽ bao gồm tên sách, tên tác giả, lần xuất bản, và giá của quyểnsách. Cấu trúc có thể lưu giữ bao nhiêu mẫu dữ liệu cũng được.Hình 19.1 Minh họa sự khác biệt giữa một biến, một mảng và một cấu trúc. I L L U Tên sách S I I 1 L O Biế L N n U S S B I A Tên tác giả O C N H S Lần Mản 1 xuất bản g Cấu trúc Hình 19.1. Sự khác nhau giữa một biến, một mảng và một cấu trúc.19.1.1 Định nghĩa một cấu trúcViệc định nghĩa cấu trúc sẽ tạo ra kiểu dữ liệu mới cho phép người dùng sử dụng chúng để khaibáo các biến kiểu cấu trúc. Các biến trong cấu trúc được gọi là các phần tử hay các thành phần củacấu trúc.Một cách tổng quát, các phần tử của một cấu trúc quan hệ với nhau một cách logic vì chúng liênquan đến một thực thể duy nhất. Ví dụ, một danh mục sách có thể được biễu diễn như sau: struct cat { char bk_name [25]; char author [20]; int edn; float price; };Câu lệnh trên định nghĩa một kiểu dữ liệu mới có tên là struct cat. Mỗi biến của kiểu này bao gồmbốn phần tử - bk_name, author, edn, và price. Câu lệnh không khai báo bất kỳ biến nào và vì vậychương trình không để dành bất kỳ vùn ...

Tài liệu được xem nhiều: