intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Giáo trình Lập trình cơ bản (Nghề: Công nghệ thông tin - Trung cấp) - Trường Trung cấp Trường Sơn, Đắk Lắk

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:95

11
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trình bày được những khái niệm cơ bản về ngôn ngữ lập trình C; Trình bày được phương pháp giải quyết vấn đề trên máy tính bằng ngôn ngữ lập trình; Cung cấp cho học sinh những khái niệm cơ bản về ngôn ngữ lập trình C: câu lệnh, từ khóa, cú pháp, cách khai báo và sử dụng biến, hàm và các cấu trúc lệnh trong ngôn ngữ C. Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Giáo trình Lập trình cơ bản (Nghề: Công nghệ thông tin - Trung cấp) - Trường Trung cấp Trường Sơn, Đắk Lắk

  1. SỞ LAO ĐỘNG, THƯƠNG BINH VÀ XÃ HỘI ĐẮK LẮK TRƯỜNG TRUNG CẤP TRƯỜNG SƠN GIÁO TRÌNH MÔN HỌC: LẬP TRÌNH CƠ BẢN NGHỀ: CÔNG NGHỆ THÔNG TIN TRÌNH ĐỘ: TRUNG CẤP Ban hành kèm theo Quyết định số: 140/QĐ-TCTS ngày 26 tháng 12 năm 2022 của Hiệu trưởng Trường trung cấp Trường Sơn Đắk Lắk, năm 2022
  2. TUYÊN BỐ BẢN QUYỀN Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo. Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh thiếu lành mạnh sẽ bị nghiêm cấm. ii
  3. LỜI GIỚI THIỆU Hiện nay, tại Trường chưa có giáo trình Lập trình cơ bản. Đặc biệt trên thị trường không có tài liệu học tập, tham khảo phù hợp với chương trình khung Cao đẳng nghề, trung cấp nghề thuộc nghề Công nghệ thông tin (CNTT) trong quá trình đào tạo nghề hiện nay. Nhóm tác giả biên soạn giáo trình lập trình cơ bản nhằm mục đích giúp học sinh, sinh viên (HSSV) sử dụng giáo trình làm tài liệu nghiên cứu và học tập một cách thuận tiện. Chương trình môn học được sử dụng để giảng dạy cho sinh viên trung cấp nghề Công nghệ thông tin (ứng dụng phần mềm) và làm tài liệu tham khảo cho các nghề thuộc các ngành nghề kỹ thuật. Vậy, rất mong được sự góp ý của bạn đọc để tài liệu này ngày càng được hoàn thiện hơn, chúng tôi xin chân thành cảm ơn.. Xin chân thành cảm ơn!. Đắk Lắk, ngày 02 tháng 8 năm 2022 Tham gia biên soạn 1. Phạm Hồng Quốc - Chủ biên 2. Đậu Nguyễn Thanh Nhàn 3. Nguyễn Thái Vương iii
  4. MỤC LỤC LỜI GIỚI THIỆU .......................................................................................................... III GIÁO TRÌNH MÔN HỌC .............................................................................................. 1 CHƯƠNG I: GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH C .............................................. 3 1.1. GIỚI THIỆU NGÔN NGỮ C .................................................................................................... 3 1.1.1. Lịch sử phát triển ............................................................................................................................... 3 1.1.2. Sự cần thiết ........................................................................................................................................... 4 1.2. CÁC THAO TÁC CƠ BẢN ...................................................................................................... 9 1.2.1. Khởi động .............................................................................................................................................. 9 1.2.2. Thoát khỏi ........................................................................................................................................... 10 1.2.3. Tạo mới, ghi một chương trình C ............................................................................................. 10 1.3. SỬ DỤNG TRỢ GIÚP ........................................................................................................... 13 1.4. BÀI TẬP.............................................................................................................................. 15 CHƯƠNG II: CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ LẬP TRÌNH C ... 16 2.1. TỪ KHÓA VÀ KÍ HIỆU ........................................................................................................ 16 2.1.1. Từ khóa................................................................................................................................................. 16 2.1.2. Tập ký tự dùng trong ngôn ngữ C ........................................................................................... 17 2.1.3. Tập ký hiệu ........................................................................................................................................ 17 2.2. CÁC KIỂU DỮ LIỆU SƠ CẤP................................................................................................ 17 2.2.1. Kiểu số nguyên ................................................................................................................................. 17 2.2.2. Kiểu số thực (Kiểu dấu phẩy động) ......................................................................................... 18 2.2.3. Kiểu ký tự ............................................................................................................................................ 19 2.3. BIẾN, HẰNG, BIỂU THỨC ................................................................................................... 20 2.3.1. Phân loại, khai báo và sử dụng biến ........................................................................................ 20 2.3.2. Hằng (Constant) ................................................................................................................................ 20 2.3.3. Biến và Biểu thức............................................................................................................................. 22 2.4. CẤU TRÚC MỘT CHƯƠNG TRÌNH ...................................................................................... 26 2.4.1. Tiền xử lý và biên dịch .................................................................................................................. 26 2.4.2. Cấu trúc một chương trình C ...................................................................................................... 26 2.4.3. Các thư viện thông dụng ............................................................................................................... 27 2.5. CÂU LỆNH ......................................................................................................................... 28 2.5.1. Khái niệm ............................................................................................................................................ 28 2.5.2. Lệnh gán và lệnh gộp ..................................................................................................................... 28 2.5.3. Nhập và xuất dữ liệu ....................................................................................................................... 31 iv
  5. 2.6. THỰC THI CHƯƠNG TRÌNH ................................................................................................ 33 2.7. BÀI TẬP.............................................................................................................................. 33 CHƯƠNG III: CÁC CÂU LỆNH CÓ CẤU TRÚC...................................................... 35 3.1. CẤU TRÚC RẼ NHÁNH ....................................................................................................... 35 3.1.1. Dạng không đầy đủ ......................................................................................................................... 35 3.1.2. Dạng đầy đủ........................................................................................................................................ 36 3.2. CẤU TRÚC LỰA CHỌN ....................................................................................................... 43 3.3. CẤU TRÚC LẶP .................................................................................................................. 47 3.3.1. Cấu trúc lặp for: ................................................................................................................................ 47 3.3.2. Cấu trúc lặp While ........................................................................................................................... 49 3.3.3. Vòng lặp do… while ...................................................................................................................... 52 3.4. CÁC LỆNH ĐẶC BIỆT ......................................................................................................... 54 3.4.1. Lệnh Break .......................................................................................................................................... 54 3.4.2. Lệnh Continue .................................................................................................................................. 55 3.5. BÀI TẬP.............................................................................................................................. 56 CHƯƠNG IV: HÀM VÀ CHƯƠNG TRÌNH CON ..................................................... 57 4.1. KHÁI NIỆM HÀM ................................................................................................................ 57 4.1.1. Phân loại hàm ................................................................................................................................... 58 4.1.2. Quy tắc hoạt động của hàm ........................................................................................................ 59 4.2. XÂY DỰNG HÀM................................................................................................................ 59 4.2.1. Định nghĩa hàm ............................................................................................................................... 59 4.2.2. Sử dụng hàm ..................................................................................................................................... 60 4.3. CÁC THAM SỐ CỦA HÀM ................................................................................................... 61 4.3.1. Phân biệt các loại tham số ............................................................................................................ 61 4.3.2. Cách truyền tham số ...................................................................................................................... 62 4.4. BÀI TẬP: ............................................................................................................................ 65 CHƯƠNG V: DỮ LIỆU KIỂU MẢNG ........................................................................ 66 5.1. KHÁI NIỆM MẢNG ............................................................................................................. 66 5.2. KHAI BÁO MẢNG ............................................................................................................... 66 5.2.1. Mảng 1 chiều ..................................................................................................................................... 66 5.3. TRUY XUẤT MẢNG ............................................................................................................ 68 5.3.1. Truy xuất mảng 1 chiều ............................................................................................................... 71 5.3.2. Truy xuất mảng 2 chiều ............................................................................................................... 71 5.4. BAI TẬP.............................................................................................................................. 75 CHƯƠNG VI: CON TRỎ ............................................................................................. 76 v
  6. 6.1. KHAI NIỆM VỀ CON TRỎ VA DỊA CHỈ ................................................................................ 76 6.2. KHAI BAO VA SỬ DỤNG BIẾN CON TRỎ ............................................................................ 76 6.2.1. Khai báo biến con trỏ ..................................................................................................................... 77 6.2.2. Các thao tác trên con trỏ ............................................................................................................... 78 6.3. BÀI TẬP.............................................................................................................................. 81 CHƯƠNG VII: CHUỖI KÝ TỰ ................................................................................... 82 7.1. KHÁI NIỆM......................................................................................................................... 82 7.2. KHAI BÁO .......................................................................................................................... 82 7.2.1. Khai báo theo mảng ........................................................................................................................ 82 7.2.2. Khai báo theo con trỏ ..................................................................................................................... 82 7.2.3. Vừa khai báo vừa gán giá trị ....................................................................................................... 82 7.3. CÁC THAO TÁC TRÊN CHUỖI ............................................................................................ 83 7.3.1. Nhập chuỗi từ bàn phím ................................................................................................................ 83 7.3.2. Xuất chuỗi ra màn hình ................................................................................................................. 83 7.3.3. Một số hàm xử lý chuỗi ................................................................................................................ 84 7.4. BÀI TẬP.............................................................................................................................. 87 TÀI LIỆU THAM KHẢO ............................................................................................. 89 vi
  7. GIÁO TRÌNH MÔN HỌC Tên môn học: LẬP TRÌNH CƠ BẢN Mã môn học: MH11 Vị trí, tính chất, ý nghĩa và vai trò của mô đun: - Vị trí: Là môn học cơ sở nghề trong chương trình đào tạo Trung cấp nghề Công nghệ thông tin (ứng dụng phần mềm). Môn học này được học sau khối môn học chung và môn Cấu trúc dữ liệu và giải thuật.. - Tính chất: Là môn học cung cấp cho học sinh những khái niệm, thuật toán cơ bản về ngôn ngữ lập trình C và kỹ năng lập trình cơ bản.. - Ý nghĩa và vai trò của môn học: Mục tiêu của môn học: - Về kiến thức: - Trình bày được những khái niệm cơ bản về ngôn ngữ lập trình C; - Trình bày được phương pháp giải quyết vấn đề trên máy tính bằng ngôn ngữ lập trình; - Cung cấp cho học sinh những khái niệm cơ bản về ngôn ngữ lập trình C: câu lệnh, từ khóa, cú pháp, cách khai báo và sử dụng biến, hàm và các cấu trúc lệnh trong ngôn ngữ C; - Trình bày được qui tắc xây dụng hàm, cách sử dụng hàm trong một chương trình; - Trình bày được ý nghĩa, cách khai báo, cách truy xuất với một số cấu trúc dữ liệu; - Trình bày được khái niệm về kiểu dữ liệu chuỗi ký tự và các thao tác cách khai báo biến chuỗi; - Trình bày được ý tưởng và phương pháp của một số thuật toán.. - Về kỹ năng: - Tìm kiếm, download, lựa chọn và cài đặt môi trường làm việc của ngôn ngữ lập trình C; - Cài đặt được một số chương trình ứng dụng đơn giản bằng ngôn ngữ lập trình C; - Thiết kế, đọc, hiểu, chỉnh sửa được các chương trình của ngôn ngữ lập trình (C) có sẵn; - Viết được các chương trình đơn giản thực hiện các thao tác truy xuất trên các phần tử của mảng và truy xuất trên đối tượng kiểu con trỏ; - Viết được các chương trình đơn giản thực hiện các thao tác truy xuất trên các phần tử của mảng; - Khai báo được biến chuỗi để viết các chương trình thực hiện một số thao tác xử lý các chuỗi ký tự ; - Áp dụng các thuật toán để viết chương trình trên phần mềm C. 1
  8. - Về năng lực tự chủ và trách nhiệm: - Có khả năng tư ̣nghiên cứu, tư ̣hoc,̣ tham khảo tài liêụ liên quan đến môn học để vâṇ dung ̣ vào hoaṭ đông ̣ hoc tâp; - Nghiêm túc, có tinh thần phối hợp tham gia học, làm nhóm theo yêu cầu của giáo viên; - Rèn luyện tính tổ chức, tính tập thể, linh hoạt, khoa học, cẩn thận; - Học sinh phải tích lũy đủ số giờ học theo quy định, tham gia đầy đủ các giờ thực hành. - Nội dung của môn học: Thời gian TT Tên chương, mục Tổng Lý Thực Kiểm số thuyết hành, tra* 1 Chương I: Giới thiệu ngôn ngữ lập trình C 3 1 2 Chương II: Các thành phần cơ bản của ngôn 2 5 2 3 ngữ lập trình C 3 Chương III: Các câu lệnh có cấu trúc 12 4 8 4 Chương IV: Hàm và chương trình con 10 3 6 1 5 Chương V: Dữ liệu kiểu mảng 5 2 3 6 Chương VI: Con trỏ 5 2 3 7 Chương VII: Chuỗi ký tự 5 1 3 1 TỔNG CỘNG 45 15 28 2 2
  9. CHƯƠNG I: GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH C Giới thiệu Mục tiêu - Trình bày sự ra đời và phát triển, vị trí và ứng dụng của ngôn ngữ lập trình C hiện nay; - Trình bày những thư viện thường dùng và các khái niệm về ngôn ngữ lập trình, khái niệm về giải thuật, khái niệm về kỹ thuật lập trình tuyến tính và nguyên lý hoạt động của ngôn ngữ lập trình C; - Trình bày và sử dụng được hệ thống trợ giúp công cụ (Tools) hỗ trợ lập trình C; - Tìm kiếm, download, lựa chọn và cài đặt môi trường làm việc của ngôn ngữ lập trình C trên máy tính cá nhân; - Chủ động tìm hiểu các tính năng của ngôn ngữ C; - Rèn luyện tính cẩn thận, tỉ mỉ, chính xác, sáng tạo, linh hoạt trong công việc. Nội dung 1.1. Giới thiệu ngôn ngữ C 1.1.1. Lịch sử phát triển Ngôn ngữ C là ngôn ngữ lập trình cấp cao, được sử dụng rất phổ biến để lập trình hệ thống cùng với Assembler và phát triển các ứng dụng. Vào những năm cuối thập kỷ 60 đầu thập kỷ 70 của thế kỷ XX, Dennish Ritchie (làm việc tại phòng thí nghiệm Bell) đã phát triển ngôn ngữ lập trình C dựa trên ngôn ngữ BCPL (do Martin Richards đưa ra vào năm 1967) và ngôn ngữ B (do Ken Thompson phát triển từ ngôn ngữ BCPL vào năm 1970 khi viết hệ điều hành UNIX đầu tiên trên máy PDP-7) và được cài đặt lần đầu tiên trên hệ điều hành UNIX của máy DEC PDP-11. Năm 1978, Dennish Ritchie và B.W Kernighan đã cho xuất bản quyển “Ngôn ngữ lập trình C” và được phổ biến rộng rãi đến nay. Lúc ban đầu, C được thiết kế nhằm lập trình trong môi trường của hệ điều hành Unix nhằm mục đích hỗ trợ cho các công việc lập trình phức tạp. Nhưng về sau, với những nhu cầu phát triển ngày một tăng của công việc lập trình, C đã vượt qua khuôn khổ của phòng thí nghiệm Bell và nhanh chóng hội nhập vào thế giới lập trình để rồi các công ty lập trình sử dụng một cách rộng rãi. Sau đó, các công ty sản xuất phần mềm lần lượt đưa ra các phiên bản hỗ trợ cho việc lập trình bằng ngôn ngữ C và chuẩn ANSI C cũng được khai sinh từ đó. Ngôn ngữ lập trình C là một ngôn ngữ lập trình hệ thống rất mạnh và rất “mềm dẻo”, có một thư viện gồm rất nhiều các hàm (function) đã được tạo sẵn. Người lập trình có thể tận dụng các hàm này để giải quyết các bài toán mà không cần phải tạo mới. Hơn thế nữa, ngôn ngữ C hỗ trợ rất nhiều phép toán nên phù hợp cho việc giải quyết các bài toán kỹ thuật có nhiều công thức phức tạp. Ngoài ra, C cũng cho phép người lập trình tự định nghĩa thêm các kiểu dữ liệu trừu tượng khác. Tuy nhiên, điều mà người mới vừa học lập trình C thường gặp “rắc rối” là “hơi khó hiểu” do sự “mềm 3
  10. dẻo” của C. Dù vậy, C được phổ biến khá rộng rãi và đã trở thành một công cụ lập trình khá mạnh, được sử dụng như là một ngôn ngữ lập trình chủ yếu trong việc xây dựng những phần mềm hiện nay. 1.1.2. Sự cần thiết a) Thuật ngữ căn bản Khi một máy tính được khởi động, tự động thực thi một số tiến trình và xuất kết quả ra màn hình. Ðiều này diễn ra thế nào? Câu trả lời đơn giản là nhờ vào Hệ điều hành cài đặt bên trong máy tính. Hệ điều hành (operating system) được xem như phần mềm hệ thống. Phần mềm này khởi động máy tính và thiết lập các thông số ban đầu trước khi trao quyền cho người dùng. Để làm được điều này, hệ điều hành phải được cấu tạo từ một tập hợp các chương trình. Mọi chương trình đều cố gắng đưa ra lời giải cho một hay nhiều bài toán nào đó Mọi chương trình cố gắng đưa ra giải pháp cho một hay nhiều vấn đề. Mỗi chương trình là tập hợp các câu lệnh giải quyết một bài toán cụ thể. Một nhóm lệnh tạo thành một chương trình và một nhóm các chương trình tạo thành một phần mềm. Phần này chúng ta sẽ tìm hiểu một số khái niệm căn bản về lệnh (Command), thuật toán, chương trình, ngôn ngữ lập trình. Thuật ngữ thuật giải, thuật toán và Phần mềm (Software). Ví dụ 1: Một người bạn đến nhà chơi và được mời món sữa dâu. Anh ta thấy ngon miệng và muốn xin công thức làm. Ta hướng dẫn cho anh ta các bước làm như sau: Bước 1: Lấy một ít sữa. Bước 2: Đổ nước ép dâu vào. Bước 3: Trộn hỗn hợp này và làm lạnh. Bây giờ nếu người bạn theo những chỉ dẫn này, họ cũng có thể tạo ra món sữa dâu tuyệt vời. Hãy phân tích chỉ thị (lệnh) ở trên.  Lệnh đầu tiên: Lệnh này hoàn chỉnh chưa? Nó có trả lời được câu hỏi lấy sữa ‘ở đâu’?.  Lệnh thứ hai: Một lần nữa, lệnh này không nói rõ nước ép dâu để ‘ở đâu’. May mắn là bạn của chúng ta đủ thông minh để hiểu được công thức pha chế nói trên, dù rằng còn nhiều điểm chưa rõ ràng. Do vậy nếu chúng ta muốn phổ biến cách làm, chúng ta cần bổ sung các bước như sau: Bước 1: Rót một ly sữa vào máy trộn. Bước 2: Đổ thêm vào một ít nước dâu ép. Bước 3: Ðóng nắp máy trộn Bước 4: Mở điện và bắt đầu trộn Bước 5: Dừng máy trộn lại Bước 6: Nếu đã trộn đều thì tắt máy, ngược lại thì trộn tiếp. Bước 7: Khi đã trộn xong, rót hỗn hợp vào tô và đặt vào tủ lạnh. Bước 8: Ðể lạnh một lúc rồi lấy ra dùng. 4
  11. So sánh hai cách hướng dẫn nêu trên, hướng dẫn thứ hai chắc chắn hoàn chỉnh, rõ ràng hơn, ai cũng có thể đọc và hiểu được. Tương tự, máy tính cũng xử lý dữ liệu dựa vào tập lệnh mà nó nhận được. Ðương nhiên các chỉ thị đưa cho máy vi tính cũng cần phải hoàn chỉnh và có ý nghĩa rõ ràng. Những chỉ thị này cần phải tuân thủ các quy tắc:  Tuần tự  Có giới hạn  Chính xác. Mỗi chỉ thị trong tập chỉ thị được gọi là “câu lệnh” và tập các câu lệnh được gọi là “chương trình”. Ví dụ 2: Xét trường hợp chương trình hướng dẫn máy tính cộng hai số. Các lệnh trong chương trình có thể là: Bước 1: Nhập số thứ nhất và nhớ nó. Bước 2: Nhập số thứ hai và nhớ nó. Bước 3: Thực hiện phép cộng giữa số thứ nhất và số thứ hai, nhớ kết quả phép cộng. Bước 4: Hiển thị kết quả. Bước 5: Kết thúc. Tập lệnh trên tuân thủ tất cả các quy tắc đã đề cập. Vì vậy, tập lệnh này là một chương trình và nó sẽ thực hiện thành công việc cộng hai số trên máy tính.  Thuật giải (Algorithm): Là một dãy các thao tác xác định trên một đối tượng, sao cho sau khi thực hiện một số hữu hạn các bước thì đạt được mục tiêu. Theo R.A.Kowalski thì bản chất của thuật giải: Thuật giải = Logic + Điều khiển Trong đó:  Logic: Đây là phần khá quan trọng, nó trả lời câu hỏi "Thuật giải làm gì, giải quyết vấn đề gì?", những yếu tố trong bài toán có quan hệ với nhau như thế nào v.v…Ở đây bao gồm những kiến thức chuyên môn mà bạn phải biết để có thể tiến hành giải bài toán. (Ví dụ 1: Để giải một bài toán tính diện tích hình cầu, mà bạn không còn nhớ công thức tính hình cầu thì bạn không thể viết chương trình cho máy để giải bài toán này được).  Điều khiển: Thành phần này trả lời câu hỏi: giải thuật phải làm như thế nào?. Chính là cách thức tiến hành áp dụng thành phần logic để giải quyết vấn đề.  Chương trình (Program): Là một tập hợp các mô tả, các phát biểu, nằm trong một hệ thống qui ước về ý nghĩa và thứ tự thực hiện, nhằm điều khiển máy tính làm việc. Theo Niklaus Wirth thì: Chương trình = Thuật toán + Cấu trúc dữ liệu 5
  12. Các thuật toán và chương trình đều có cấu trúc dựa trên 3 cấu trúc điều khiển cơ bản:  Tuần tự (Sequential): Các bước thực hiện tuần tự một cách chính xác từ trên xuống, mỗi bước chỉ thực hiện đúng một lần.  Chọn lọc (Selection): Chọn 1 trong 2 hay nhiều thao tác để thực hiện.  Lặp lại (Repetition): Một hay nhiều bước được thực hiện lặp lại một số lần. Muốn trở thành lập trình viên chuyên nghiệp hãy làm đúng trình tự để có thói quen tốt và thuận lợi sau này trên nhiều mặt của một người làm máy tính. Hãy làm theo các bước sau: Bước 1: Tìm, xây dựng thuật giải (trên giấy) Bước 2: Viết chương trình trên máy Bước 3: Dịch chương trình Bước 4: Chạy và thử chương trình  Ngôn ngữ lập trình (Programming language): Ngôn ngữ lập trình là hệ thống các ký hiệu tuân theo các qui ước về ngữ pháp và ngữ nghĩa, dùng để xây dựng thành các chương trình cho máy tính. Một chương trình được viết bằng một ngôn ngữ lập trình cụ thể (ví dụ Pascal, C…) gọi là chương trình nguồn, chương trình dịch làm nhiệm vụ dịch chương trình nguồn thành chương trình thực thi được trên máy tính.  Các bước lập trình: Bước 1: Phân tích vấn đề và xác định các đặc điểm. (xác định I-P-O) Bước 2: Lập ra giải pháp. (đưa ra thuật giải) Bước 3: Cài đặt. (viết chương trình) Bước 4: Chạy thử chương trình. (dịch chương trình) Bước 5: Kiểm chứng và hoàn thiện chương trình. (thử nghiệm bằng nhiều số liệu và đánh giá) b) Kỹ thuật lập trình  Quy trình nhập - xử lý - xuất (I-P-O): I-P-O Cycle (Input-Pprocess-Output Cycle) là quy trình xử lý cơ bản của máy tính như mô hình sau: Đầu vào Xử lý Đầu ra (Input) (Process) (output) Hình 1.2: Quy trình nhập – xử lý – xuất cơ bản của máy tính Ví dụ 3: Xác định Input, Process, Output của việc làm 1 ly nước chanh nóng Input: ly, đường, chanh, nước nóng, muỗng. Process: - cho hỗn hợp đường, chanh, nước nóng vào ly. - dùng muỗng khuấy đều. 6
  13. Output: ly chanh nóng đã sẵn sàng để dùng. Ví dụ 4: Xác định Input, Process, Output của chương trình tính tiền lương công nhân tháng 10/2002 biết rằng lương = lương căn bản * ngày công Input: Lương căn bản, ngày công Process: Nhân lương căn bản với ngày công Output: Lương Ví dụ 3: Xác định Input, Process, Output của chương trình giải phương trình bậc nhất một ẩn số ax + b = 0 Input: Hệ số a, b Process: Chia – b cho a Output: Nghiệm x Ví dụ 4: Xác định Input, Process, Output của chương trình tìm số lớn nhất của 2 số a và b. Input: a, b Process: Nếu a > b thì Output: = a lớn nhất. Ngược lại Output: = b lớn nhất Sử dụng lưu đồ (Flowchart) Để dễ hơn về quy trình xử lý, các nhà lập trình đưa ra dạng lưu đồ để minh họa từng bước quá trình xử lý một vấn đề (bài toán). Bảng 1.1: Hình ảnh minh họa lưu đồ TT Hình dạng (Symbol) Hành động (Activity) 1 Dữ liệu vào (Input) 2 Xử lý (Process) 3 Dữ liệu ra (Output) 4 Quyết định (Decision), sử dụng điều kiện 5 Luồng xử lý (Flow lines) 6 Gọi CT con, hàm… (Procedure, Function…) 7 Bắt đầu, kết thúc (Begin, End) 7
  14. 8 Điểm ghép nối (Connector)  Một số lưu đồ minh hoạ: Lưu đồ 2: Chương trình tính tiền lương công nhân Lưu đồ 3: Chương Lưu đồ 1: Chuẩn bị pha cà tháng 10/2015 biết rằng trình giải phương trình phê lương = lương căn bản * bậc nhất ax + b = 0 ngày công Lưu đồ 4: Cộng hai số Lưu đồ 5: So sánh hai số Ngôn ngữ C có những đặc điểm cơ bản sau:  Tính cô đọng (compact): C chỉ có 32 từ khóa chuẩn và 40 toán tử chuẩn, nhưng hầu hết đều được biểu diễn bằng những chuỗi ký tự ngắn gọn.  Tính cấu trúc (structured): C có một tập hợp những chỉ thị của lập trình như cấu trúc lựa chọn, lặp… Từ đó các chương trình viết bằng C được tổ chức rõ ràng, dễ hiểu.  Tính tương thích (compatible): C có bộ tiền xử lý và một thư viện chuẩn vô cùng phong phú nên khi chuyển từ máy tính này sang máy tính khác các chương trình viết bằng C vẫn hoàn toàn tương thích. 8
  15.  Tính linh động (flexible): C là một ngôn ngữ rất uyển chuyển và cú pháp, chấp nhận nhiều cách thể hiện, có thể thu gọn kích thước của các mã lệnh làm chương trình chạy nhanh hơn.  Biên dịch (compile): C cho phép biên dịch nhiều tập tin chương trình riêng rẽ thành các tập tin đối tượng (object) và liên kết (link) các đối tượng đó lại với nhau thành một chương trình có thể thực thi được (executable) thống nhất. 1.2. Các thao tác cơ bản 1.2.1. Khởi động C-Free là trình soạn thảo và biên dịch code mạnh mẽ dành cho các lập trình viên C/C++, nó có nhiều tính năng tương tự như Visual Studio nên rất phù hợp cho việc học. Một số tính năng cơ bản hỗ trợ soạn thảo của c-free:  Hỗ trợ các mẫu code thường sử dụng.  Hỗ trợ các màu sắc khác nhau với các dòng code có thuộc tính khác nhau như Class/Struct/Union hay Functions, Variables, Constants khi soạn thảo code.  Hỗ trợ các gợi ý các từ khoá giúp các lập trình viên có thể code nhanh và dễ dàng hơn.  C-Free cung cấp cho bạn khả năng tìm kiếm, tra cứu một đối tượng, hàm, biến… khi soạn thảo code giúp lập trình viên có thể dễ dàng tìm ra hàm này được khai báo ở đâu, thuộc class nào, thực thi trong hàm nào Cài đặt và sử dụng C-Free 5: Việc cài đặt C-Free giống như một phần mềm bình thường. Sau khi tải về chạy file setup và cài đặt chương trình, sau khi cài đặt xong khởi động chương trình ta sẽ nhận được hình như sau: Hình 1.1: Hộp thoại đăng nhập C-Free Tại đây C-Free cung cấp một số chương trình mẫu như CppHello.cpp. Chọn một chương trình để xem hoặc nhấn Close để vào màn hình chính, tại đây có những chức năng như sau: New (hoặc nhấn tổ hợp phím ctrl + N) để tạo mới một tập tin: 9
  16. Hình 1.2: Màn hình làm việc C-Free Dễ dàng tra cứu công dụng một lệnh nào đó bằng cách tô đen dòng lệnh và nhấn phím F1. Dễ dàng biên dịch chương trình (phím F9), nếu code bị lỗi, chỉ việc nhấp vào dòng thông báo, chương trình sẽ báo vị trí phát sinh lỗi. Dễ dàng biên dịch thông qua biểu tượng hoặc phím F5. Dễ dàng tạo và đưa file vào Project thông qua menu Project... Với phần mềm C-Free này dễ dàng học C/C++ mà không cần phải sử dụng Visual Studio. Tuy nhiên mỗi phần mềm lại có những ưu điểm và nhược điểm khác nhau, hoặc cũng có thể do sở thích của mỗi người mà chọn phần mềm khác nhau. 1.2.2. Thoát khỏi Chọn menu File, chọn Exit; Hoặc ấn tổ hợp phím Alt – F4. 1.2.3. Tạo mới, ghi một chương trình C Muốn soạn thảo một chương trình mới ta bấm biểu tượng New (hoặc dùng tổ hợp phím Ctrl+N) để tạo một tập tin mớ, tập tin này sẽ có định dạng là .cpp. Trong khung soạn thảo của chương trình, chỉ việc gõ những dòng code, nếu là từ khóa, chương trình sẽ tự động hiển thị giúp các phần còn lại. a) Quy trình gõ một chương trình trong C: Tại màn hình làm việc ngôn ngữ C, hãy gõ chương trình sau và lưu với tên VD1 sau đó dịch, quan sát kết quả Dòng Chương trình [1] /* Chuong trinh in ra cau: “bai hoc C dau tien” */ [2] #include [3] [4] void main(void) [5] { [6] printf("Bai hoc C dau tien."); 10
  17. [7] } Kết quả: Bài học C dau tien._ Ý nghĩa: [1]: Bắt đầu bằng /* và kết thúc bằng */ cho biết hàng này là hàng diễn giải (chú thích). Khi dịch và chạy chương trình, dòng này không được dịch và cũng không thi hành lệnh gì cả. Mục đích của việc ghi chú này giúp chương trình rõ ràng hơn. Sau này đọc lại chương trình biết chương trình làm gì. [2]: Chứa phát biểu tiền xử lý #include . Vì trong chương trình này ta sử dụng hàm thư viện của C là printf, do đó cần phải có khai báo của hàm thư viện này để báo cho trình biên dịch C biết. Nếu không khai báo chương trình sẽ báo lỗi. [3]: Hàng trắng viết ra với ý đồ làm cho bảng chương trình thoáng, dễ đọc. [4]: void main(void) là thành phần chính của mọi chương trình C (có thể viết main() hoặc void main() hoặc main(void)). Tuy nhiên, nên viết theo dạng void main(void) để chương trình rõ ràng hơn. Mọi chương trình C đều bắt đầu thi hành từ hàm main. Cặp dấu ngoặc () cho biết đây là khối hàm (function). Hàm void main(void) có từ khóa void đầu tiên cho biết hàm này không trả về giá trị, từ khóa void trong ngoặc đơn cho biết hàm này không nhận vào đối số. [5] và [7]: Cặp dấu ngoặc móc {} giới hạn thân của hàm. Thân hàm bắt đầu bằng dấu {và kết thúc bằng dấu}. [6]: Printf("Bai hoc C dau tien.");, chỉ thị cho máy in ra chuỗi ký tự nằm trong nháy kép (""). Hàng này được gọi là một câu lệnh, kết thúc một câu lệnh trong C phải là dấu chấm phẩy (;) Chú ý:  Các từ include, stdio.h, void, main, printf phải viết bằng chữ thường.  Chuỗi trong nháy kép cần in ra "Bạn có thể viết chữ HOA, thường tùy, ý".  Kết thúc câu lệnh phải có dấu chấm phẩy.  Kết thúc tên hàm không có dấu chấm phẩy hoặc bất cứ dấu gì.  Ghi chú phải đặt trong cặp /* …. */.  Thân hàm phải được bao bởi cặp { }.  Các câu lệnh trong thân hàm phải viết thụt vào. b) Ghi chương trình đang soạn thảo vào đĩa: Sử dụng File/Save hoặc gõ phím F2. Có hai trường hợp xảy ra:  Nếu chương trình chưa được ghi lần nào thì xuất hiện một hội thoại cho phép xác định tên tập tin (FileName). Tên tập tin phải tuân thủ quy cách đặt tên của DOS và không cần có phần mở rộng (chương trình sẽ tự động có phần mở rộng là .C hoặc .CPP sẽ nối thêm trong phần Option). Sau đó gõ phím Enter.  Nếu chương trình đã được ghi một lần rồi thì sẽ ghi những thay đổi bổ sung lên tập tin chương trình cũ. c) Thực hiện chương trình: 11
  18. Để thực hiện chương trình hãy dùng Ctrl-F9 (giữ phím Ctrl và gõ phím F9). Thực hiện chương trình vừa soạn thảo xong và quan sát trên màn hình để thấy kết quả của việc thực thi chương trình sau đó gõ phím bất kỳ để trở lại với Turbo. d) Mở một chương trình đã có trên đĩa: Với một chương trình đã có trên đĩa, ta có thể mở ra để thực hiện hoặc sửa chữa bổ sung. Để mở một chương trình dùng File/Open hoặc gõ phím F3. Sau đó gõ tên tập tin vào hộp File Name hoặc lựa chọn tập tin trong danh sách các tập tin rồi gõ Enter. Mở chương trình trên (VD1) và sửa lại dòng thứ 6 bằng câu lệnh printf("Bai hoc C dau tien.\n");, sau đó lưu lại, dịch và chạy lại chương trình, quan sát kết quả Kết quả: Bài học C dau tien_ Dòng vừa sửa có thêm \n, \n là ký hiệu xuống dòng sử dụng trong lệnh printf. Sau đây là một số ký hiệu khác: TT Ký hiệu Ý nghĩa Nhóm ký tự điều khiển 1 \n Nhảy xuống dòng kế tiếp canh về cột đầu tiên. 2 \t Canh cột tab ngang. 3 \r Nhảy về đầu hàng, không xuống hàng. 4 \a Tiếng kêu bip Nhóm ký tự đặc biệt 1 \\ In ra dấu \ 2 \” In ra dấu nháy đôi (”) 3 \’ In ra dấu nháy đôi (’) Ví dụ: Nhập đoạn chương trình trên vào máy. Dịch, chạy và quan sát kết quả Dòng Chương trình [1] /* Chuong trinh in ra cau bai hoc C dau tien */ [2] #include [3] #include [4] [5] void main(void) [6] { [7] printf("\t\tBai hoc C \rdau tien.\n"); [8] getch(); [9] } Kết quả: dau tien. Bai hoc C_ Ý nghĩa: 12
  19. [3]: Chứa phát biểu tiền xử lý #include . Vì trong chương trình này ta sử dụng hàm thư viện của C là getch, do đó cần phải có khai báo của hàm thư viện này để báo cho trình biên dịch C biết. Nếu không khai báo chương trình sẽ báo lỗi. [8]: getch() để chờ nhận 1 ký tự bất kỳ từ bàn phím, nhưng không in ra màn hình. Vì thế ta sử dụng hàm này để khi chạy chương trình xong sẽ dừng lại ở màn hình kết quả, sau đó ta ấn phím bất kỳ sẽ quay lại màn hình soạn thảo. 1.3. Sử dụng trợ giúp  Các phím xem thông tin trợ giúp:  F1: Xem toàn bộ thông tin trong phần trợ giúp.  Ctrl-F1: Trợ giúp theo ngữ cảnh (tức là khi con trỏ đang ở trong một từ nào đó, chẳng hạn int mà bạn gõ phím Ctrl-F1 thì bạn sẽ có được các thông tin về kiểu dữ liệu int) Các phím di chuyển con trỏ trong vùng soạn thảo chương trình: Bảng 1.2: Phím tắt và ý nghĩa của các phím di chuyển con trỏ trong ngôn ngữ C TT Phím Ý nghĩa Phím tắt (tổ hợp phím) 1 Enter Đưa con trỏ xuống dòng 2 Mũi tên đi lên Đưa con trỏ lên hàng trước Ctrl-E 3 Mũi tên đi xuống Đưa con trỏ xuống hàng sau Ctrl-X 4 Mũi tên sang trái Đưa con trỏ sang trái một ký tự Ctrl-S 5 Mũi tên sang phải Đưa con trỏ sang phải một ký tự Ctrl-D 6 End Đưa con trỏ đến cuối dòng 7 Home Đưa con trỏ đến đầu dòng 8 PgUp Đưa con trỏ lên trang trước Ctrl-R 9 PgDn Đưa con trỏ xuống trang sau Ctrl-C 10 Đưa con trỏ sang từ bên trái Ctrl-A 11 Đưa con trỏ sang từ bên phải Ctrl-F  Các phím xoá ký tự/ dòng: Bảng 1.3: Phím tắt và ý nghĩa của các phím xóa ký tự hoặc dòng trong ngôn ngữ C TT Phím Ý nghĩa Phím tắt (tổ hợp phím) 1 Delete Xoá ký tự tại ví trí con trỏ Ctrl-G Di chuyển sang trái đồng thời 2 BackSpace Ctrl-H xoá ký tự đứng trước con trỏ 3 Xoá một dòng chứa con trỏ Ctrl-Y Xóa từ vị trí con trỏ đến cuối 4 Ctrl-Q-Y dòng 5 Xóa ký tự bên phải con trỏ Ctrl-T  Các phím chèn ký tự/ dòng: 13
  20. Bảng 1.4: Phím tắt và ý nghĩa của các phím chèn ký tự hoặc dòng trong ngôn ngữ C TT Phím Ý nghĩa 1 Insert Thay đổi viết xen hay viết chồng 2 Ctrl-N Xen một dòng trống vào trước vị trí con trỏ  Sử dụng khối: Khối là một đoạn văn bản chương trình hình chữ nhật được xác định bởi đầu khối là góc trên bên trái và cuối khối là góc dưới bên phải của hình chữ nhật. Khi một khối đã được xác định (trên màn hình khối có màu sắc khác chỗ bình thường) thì ta có thể chép khối, di chuyển khối, xoá khối... Sử dụng khối cho phép chúng ta soạn thảo chương trình một cách nhanh chóng. sau đây là các thao tác trên khối: Bảng 1.5: Phím tắt và ý nghĩa của các phím sử dụng khối trong ngôn ngữ C TT Phím Ý nghĩa 1 Ctrl-K-B Đánh dấu đầu khối 2 Ctrl-K-K Đánh dấu cuối khối 3 Ctrl-K-C Chép khối vào sau vị trí con trỏ 4 Ctrl-K-V Chuyển khối tới sau vị trí con trỏ 5 Ctrl-K-Y Xoá khối 6 Ctrl-K-W Ghi khối vào đĩa như một tập tin 7 Ctrl-K-R Đọc khối (tập tin) từ đĩa vào sau vị trí con trỏ 8 Ctrl-K-H Tắt/mở khối 9 Ctrl-K-T Đánh dấu từ chứa chon trỏ 10 Ctrl-K-P In một khối Các phím, phím tắt thực hiện các thao tác khác: Bảng 1.6: Phím tắt và ý nghĩa của các phím sử dụng khác trong ngôn ngữ C Phím tắt (tổ hợp TT Phím Ý nghĩa phím) Kích hoạt menu chính Ctrl-K-D, Ctrl-K- 1 F10 Q 2 F2 Lưu chương trình đang soạn vào đĩa 3 F3 Tạo tập tin mới Di chuyển con trỏ một khoảng đồng thời đẩy Ctrl-I 1 Tab dòng văn bản 2 ESC Hủy bỏ thao tác lệnh Ctrl-U 3 Đóng tập tin hiện tại Alt-F3 4 Hiện hộp thoại tìm kiếm Ctrl-Q-F 5 Hiện hộp thoại tìm kiếm và thay thế Ctrl-Q-A 14
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
7=>1