46
1 Chƣơng 1 TỔNG QUAN VỀ LẬP TRÌNH KỸ THUẬT LẬP TRÌNH C/C++ TRƢỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN Giảng Viên: ThS. Dƣơng Thành Phết Email: [email protected] Website: http://www.thayphet.net Tel: 0918158670 facebook.com/duongthanhphet

KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

Embed Size (px)

Citation preview

Page 1: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

1

Chƣơng 1

TỔNG QUAN VỀ LẬP TRÌNH

KỸ THUẬT LẬP TRÌNH C/C++

TRƢỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH

KHOA CÔNG NGHỆ THÔNG TIN

Giảng Viên: ThS. Dƣơng Thành Phết

Email: [email protected]

Website: http://www.thayphet.net

Tel: 0918158670 – facebook.com/duongthanhphet

Page 2: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

2

NỘI DUNG

2

1. Lập trình và Ngôn ngữ lập trình

2. Biên dịch và Thông dịch

3. Các phương pháp lập trình

4. Giới thiệu ngôn ngữ lập trình C

5. Chương trình C đầu tiên

Page 3: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

3

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

3

1.1. Lập trình là gì?

Máy tính?

- Làm theo “lệnh” của con người.

- Điểm mạnh là tính toán với tốc độ cao .

Làm thế nào để “ra lệnh” cho máy tính?

- Lập ra những chương trình cho máy tính

Chương trình?

- Chương trình (Phần mềm) là ra lệnh cho máy tính

biết phải làm gì, như thế nào,…

Page 4: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

4

4

Muốn “ra lệnh” cho máy tính:

- Sử dụng một “ngôn ngữ” chung ngôn ngữ lập

trình (programming language)

Ngôn ngữ lập trình(programming language )

- Là một hệ thống được ký hiệu hóa để miêu tả

những tính toán (qua máy tính) mà cả con người

và máy đều có thể đọc và hiểu được.

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

Tóm lại:

Lập trình (programming) là dùng ngôn ngữ lập trình lập

nên chương trình hoạt động cho máy tính.

Page 5: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

5

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

5

1.2. Ngôn ngữ lập trình

Là ngôn ngữ dùng để viết chương trình cho máy tính

hoạt động gồm:

Ngôn ngữ máy: Các chỉ thị dưới dạng nhị phân (0/1)

can thiệp trực tiếp vào các mạch điện tử.

Hợp ngữ: Các câu lệnh và quy tắc viết các câu lệnh

thực hiện mã lệnh là các phép toán trên địa chỉ

chứa các toán hạng và dùng trình dịch assembler

để dịch sang ngôn ngữ máy

Ngôn ngữ lập trình cấp cao: Gần với ngôn ngữ con

người nghỉ và làm (passcal, C/C++/C#, VB, . .) dùng

trình biên dịch để dịch chương trình nguồn sang

ngôn ngữ máy và thực thi

Page 6: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

6

1.3. Một số ngôn ngữ lập trình phổ biến hiện nay

Bảng xếp hạng của TIOBE Index cho tháng 7 năm 2013

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

Page 7: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

7

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

7

1.4. Từ bài toán đến chƣơng trình?

Để giải được phương trình bậc 2: AX2+BX+C=0,

Việc đầu tiên phải biết cách giải bằng lời giải của

người làm toán.

Để giải bài toán bằng máy tính (lập trình cho máy

tính giải) cần thức hiện qua các bước:

Phân tích bài toán xác định dữ liệu đầu vào, đầu

ra.

Mô tả các bước giải (Ngôn ngữ tự nhiên/Vẽ lưu

đồ / biểu diễn bằng ngôn ngữ giả)

Viết chương trình bằng ngôn ngữ lập trình

Thực thi chương trình nhập liệu và xem kết quả

Page 8: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

8

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

8

1.4. Lập trình viên

Bonus: "Lập trình là một nghệ thuật, và lập trình viên là một nghệ sĩ". Nữ bá

tước Ada Lovelace được xem như là lập trình viên đầu tiên trong lịch sử.

Là người viết ra các chương trình máy tính. Còn được

gọi là người phát triển phần mềm (software

developer).

Page 9: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

9

Khả năng suy nghĩ một cách Logic

Khả năng làm việc nhóm và một mình trong một

khoảng thời gian

Tính kiên nhẫn

Khả năng tự học cao

Các nhân tố cần thiết cho lập trình viên:

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

1.4. Lập trình viên

Page 10: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

10

Thu nhập cao

Niềm vui trong công việc

Tự mình quyết định

Các mặt tốt của nghề lập trình:

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

1.4. Lập trình viên

Page 11: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

11

Dễ lâm vào cảm giác chán nản, dễ bị áp lực

Làm thêm giờ là việc thường xuyên

Lập trình không phải là một việc dễ dàng

Các khó khăn của nghề lập trình:

1. LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH

1.4. Lập trình viên

Page 12: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

12

2. BIÊN DỊCH VÀ THÔNG DỊCH

Mọi chương trình được viết bằng các ngôn ngữ

không phải là ngôn ngữ máy cuối cùng đều phải

được chuyển đổi sang ngôn ngữ máy trước khi được

thi hành.

Chương trình ngôn ngữ cấp cao được dịch sang

ngôn ngữ máy bằng một trong hai cách :

Trình biên dịch (compiler)

Trình thông dịch (interpreter).

Page 13: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

13

2. BIÊN DỊCH VÀ THÔNG DỊCH

2.1. TRÌNH BIÊN DỊCH (COMPILER)

Sẽ chuyển đổi toàn bộ chương trình sang mã máy, kết

quả được đưa vào đĩa để có thể thi hành về sau.

Chương trình được chuyển đổi gọi là chương trình

nguồn (source program) và chương trình được tạo ra

được gọi là chương trình đối tượng (object program)

hoặc mã đối tượng (object code).

Page 14: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

14

2. BIÊN DỊCH VÀ THÔNG DỊCH

2.1. TRÌNH BIÊN DỊCH (COMPILER)

Khi người dùng muốn chạy chương trình, chương trình

đối tượng sẽ được nạp lên bộ nhớ chính của CPU và

các chỉ thị của chương trình sẽ được thi hành.

Khi được hướng dẫn bởi các chỉ thị của chương trình,

CPU sẽ truy xuất dữ liệu và tạo ra các kết quả.

Trình biên dịch sẽ kiểm tra cú pháp chương trình

Page 15: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

15

2. BIÊN DỊCH VÀ THÔNG DỊCH

2.1. TRÌNH BIÊN DỊCH (COMPILER)

Thực hiện các phép kiểm tra logic và đảm bảo các dữ

liệu sắp được sử dụng trong các phép so sánh, tính

toán đã được định nghĩa một cách hợp lý.

Trình biên dịch tạo ra một danh sách lỗi của tất cả

mệnh đề trong chương trình vi phạm cú pháp của ngôn

ngữ, giúp lập trình viên dễ dàng sửa đổi chương trình.

Do ngôn ngữ máy phụ thuộc vào bộ vi xử lý nên các

máy tính khác nhau sẽ cần có các trình biên dịch khác

nhau để biên dịch chương trình nguồn sang mã máy

của từng loại máy này.

Page 16: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

16

2. BIÊN DỊCH VÀ THÔNG DỊCH

2.2. TRÌNH THÔNG DỊCH (INTERPRETER)

Thay vì chuyển đổi toàn bộ chương trình nguồn như

trình biên dịch, trình thông dịch chỉ chuyển đổi một

mệnh đề của chương trình và thực hiện đoạn mã kết

quả ngay.

Sau đó nó tiếp tục chuyển đổi mệnh đề thứ 2 rồi thi

hành đoạn mã kết quả thứ 2 và cứ thế.

Khi sử dụng trình thông dịch, mỗi lần chạy chương

trình là mỗi lần chương trình nguồn được thông dịch

sang ngôn ngữ máy. Không có chương trình đối

tượng nào được tạo ra.

Page 17: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

17

2. BIÊN DỊCH VÀ THÔNG DỊCH

2.2. TRÌNH THÔNG DỊCH (INTERPRETER)

Các trình thông dịch thường được dùng trên các máy

tính cá nhân không có đủ bộ nhớ hoặc sức mạnh

tính toán cần thiết để dùng trình biên dịch.

Lợi điểm của trình thông dịch là lập trình viên vẫn có

thể chạy một chương trình vẫn còn lỗi cú pháp.

Chỉ đến khi gặp câu lệnh có lỗi cú pháp, chương

trình mới bị ngừng và trình thông dịch sẽ thông báo

lỗi.

Ðiểm bất lợi là các chương trình thông dịch chạy

không nhanh bằng các chương trình được biên dịch

vì quá trình chuyển đổi sang ngôn ngữ máy được

thực hiện cùng với quá trình thi hành chương trình.

Page 18: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

18

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

Học lập trình không chỉ học ngôn ngữ lập trình, mà

phương pháp lập trình cũng vô cùng quan trọng.

Có một số ngôn ngữ hỗ trợ nhiều phương pháp lập

trình, như: C++, PHP, . . .

Có ngôn ngữ tối ưu cho chỉ một phương pháp lập

trình như: C#, Java hỗ trợ thuần hướng đối tượng.

Ngôn ngữ lập trinh thì có rất nhiều, còn phương pháp

lập trình thì chúng ta bắt buộc phải nắm vững.

Page 19: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

19

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.1. Phƣơng pháp lập trình tuần tự

(Sequential Programming)

Một chương trình sẽ là một tập hợp các câu lệnh có

thứ tự chạy nối tiếp nhau.

Chương trình sẽ chạy từ câu lệnh đầu tiên, và kết

thúc ở câu lệnh cuối cùng.

Phương pháp lập trình này dễ viết, dễ hiểu nhưng

khi xử lý các bài toán lớn sẽ khó khăn, chương trình

chỉ viết theo một cấu trúc duy nhất là tuần tự.

Page 20: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

20

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.2. Phƣơng pháp lập trình cấu trúc

(Structured Programming)

Đây là một phần của phương pháp lập trình thủ tục

Ngoài cấu trúc tuần tự, có thể viết chương trình theo

các cấu trúc rẽ nhánh, cấu trúc vòng lặp và kết hợp

của các cấu trúc đó với nhau.

Ở phương pháp lập trình này xuất hiện khái niệm về

cấu trúc điều khiển (control structure) như if-

else, switch case.. để khiển rẽ nhánh, hay for,

while để điều khiển vòng lặp.

Page 21: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

21

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.2. Phƣơng pháp lập trình cấu trúc

(Structured Programming)

Phương pháp này đã khiến việc lập trình trở lên

linh hoạt hơn rất nhiều, nhưng nó vẫn thực sự hạn

chế khi lập trình các hệ thống lớn.

Hiện nay nó không còn là phương pháp lập trình

thông dụng. Nhưng nó vẫn tồn tại như là một phần

không thể thiếu trong các phương pháp lập trình

hiện đại hơn.

Page 22: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

22

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.3. Phƣơng pháp lập trình thủ tục

(Procedural Programming)

Phương pháp lập trình thủ tục hay còn gọi là hướng

chức năng.

Phương pháp này sẽ chia một chương trình thành các

khối thủ tục nhỏ, mỗi thủ tục sẽ có dữ liệu và logic

riêng.

Các thủ tục làm việc độc lập với nhau, dữ liệu sẽ

được trao đổi qua các đối số (arguments) và giá trị trả

về (returned value).

Việc chia thủ tục sẽ có nhiều lợi thế như: việc sử dụng

lại mã (reuse code), dễ dàng chia công việc cho nhiều

người..v.v.

Page 23: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

23

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.3. Phƣơng pháp lập trình thủ tục (tt)

(Procedural Programming)

Lập trình thủ tục đi liền với các khái niệm:

hàm (function), thủ tục (procedure), tham

số(paramenter), đối số (argument), trả về (return)...

Một số ngôn ngữ lập trình như C, C++ không phân

biệt hàm với thủ tục

Một số ngôn ngữ khác như pascal, visual basic

thì hàm sẽ có giá trị trả về và sử dụng từ khóa

function, còn thủ tục không có giá trị trả về và sử

dụng từ khóa procedure.

Page 24: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

24

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.3. Phƣơng pháp lập trình thủ tục (tt)

(Procedural Programming) Cách lập trình này đã trừu tượng công việc lập trình

hơn rất nhiều. Người lập trình có thể quan sát tổng

thể một chương trình qua các chức năng của nó mà

không cần quan tâm tới chi tiết.

Hiểu được đặc điểm này sẽ giúp giải quyết các bài

toán lớn một cách dễ dàng và chính xác hơn.

Phương pháp lập trình thủ tục là phương pháp lập

trình quan trọng. Nắm được phương pháp này bạn sẽ

dễ dàng tiếp cận được với những phương pháp lập

trình cao hơn

Các ngôn ngữ hỗ trợ lập trình hướng thủ tục thông

dụng như: C, C++, Pascal, PHP…

Page 25: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

25

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.4. Phƣơng pháp lập trình hƣớng đối tƣợng

(Object-Oriented Programming)

Lập trình hướng đối tượng - OOP (Object-Oriented

Programming)

Phương pháp lập trình hiện đại và phổ biến nhất hiện

nay.

Giúp cho công việc lập trình càng được trừu tượng

hóa và trở lên “gần với con người” hơn.

Page 26: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

26

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.4. Phƣơng pháp lập trình hƣớng đối tƣợng(tt)

(Object-Oriented Programming)

Việc lập trình không còn dừng ở việc thiết kế các thủ

tục khô khan

Phương pháp lập trình hướng đối tượng xây dựng

trên mô hình thế giới thực, khi mà mọi thứ đều là các

đối tượng.

Các đối tượng sẽ chứa đựng trong nó các thuộc tính,

các hành động của riêng nó.

Ví dụ như mỗi người có các thuộc tính: tên, tuổi, giới

tính và có các hành động, đi, chạy nhảy..

Phương pháp lập trình hướng đối tượng gắn liền với

các thuật ngữ Lớp (class), Đối tượng (object), Thuộc

tính (attribute), Phương thức (method)

Page 27: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

27

3. CÁC PHƢƠNG PHÁP LẬP TRÌNH

3.4. Phƣơng pháp lập trình hƣớng đối tƣợng(tt)

(Object-Oriented Programming)

Liên quan đến lập trình hướng đối tượng là:

Phần mềm hướng đối tượng (object-oriented

software): Là phần mềm sử dụng phương pháp

lập trình hướng đối tượng.

Hệ điều hành hướng đối tượng (object-oriented

operating system: Là hệ điều hành được thiết kế

đặc biệt để chạy các ứng dụng hướng đối tượng.

Có ngôn ngữ tối ưu dùng cho phương pháp lập trình

hướng đối tượng như: C++, C#, Java...

Page 28: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

28

4. NGÔN NGỮ LẬP TRÌNH C

28

C là ngôn ngữ lập trình rất mạnh và được sử dụng

rộng rãi khắp thế giới.

Ngôn ngữ C (Tiền thân là ngôn ngữ B) được được

phát triển từ đầu thập niên 1970 bởi Ken Thompson

và Dennis Ritchie tại phòng thí nghiệm Beel

Telephone (Mỹ) vào năm 1972.

Nhưng sau đó nhiều nhà lập trình tung ra rất nhiều

phiên bản C. cuối cùng viện định chuẩn quốc gia Mỹ đã

họp và định ra chuẩn cho ngôn ngữ C gọi là AnSi C.

C là ngôn ngữ lập trình cô động chỉ chứa các từ khóa.

4.1. Lịch sử ra đời

Page 29: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

29

4.2. Chu trình triển khai chƣơng trình C

29

Bƣớc 1: Tạo tập tin .C hoặc .CPP

Bƣớc 2: Tạo tập tin .OBJ

Bƣớc 3: Tạo tập tin .EXE

Bƣớc 4 : Chạy chương trình

4. NGÔN NGỮ LẬP TRÌNH C

Page 30: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

30

4.3. Đặc điểm ngôn ngữ lập trình C

Bộ lệnh phù hợp với phương pháp lập trình cấu trúc.

Kiểu dữ liệu phong phú, cho phép định nghĩa kiểu dữ

liệu mới.

Gồm một hoặc nhiều hàm rời nhau.

Linh động về cú pháp.

30

4. NGÔN NGỮ LẬP TRÌNH C

Page 31: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

31

31

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Bộ cài đặt gồm:

Microsoft Visual Studio 2005/2008/2010/2012/2013

5.1. CÀI ĐẶT VISUAL STUDIO

Page 32: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

32

5.2. Tạo mới Project

Bước 1: Khởi động Microsoft Visual Studio 2010

Bước 2: Chọn menu File/New…

1

2

3

32

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 33: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

33

Chọn ngôn ngữ C++

Chọn loại project Win32 Console Aplication

Name: Nhập tên của dự án (Ví dụ Baitap01)

Location: Vị trí lưu dự án (Ví dụ: C:\

1

2

3

33

VC++ sẽ tạo một thư mục với tên là tên Project tại vị trí

đã chỉ định. Bên trong thư mục này sẽ chứa toàn bộ các

file liên quan đến Project. Nếu muốn sao chép Project thì

chỉ việc chép thư mục này.

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 34: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

34

Bước 3: Chọn OK

Bước 4: Next

Bước 5: Chọn Empty Project, sau đó chọn Finish

34

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 35: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

35

Bước 5: Chọn OK, kết thúc việc tạo Project

35

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 36: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

36

Cửa sổ Solution Explorer: View/ Solution Explorer

2. Chọn để xem bên trong

36

Source Files (*.cpp): Chứa các file cài đặt các hàm

Header Files (*.h): Chứa các file khai báo (hàm, biến

toàn cục, kiểu cấu trúc, …)

Resource Files: Chứa các tài nguyên (icon, bitmap,

dialog, …). Đối với lập trình ứng dụng Console thì không

dùng đến.

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 37: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

37

5.3. Tạo mới File

Click phải thư mục Source File/ Add/ New Item . .

37 Để đơn giản khi bắt đầu tìm hiểu ngôn ngữ C, ta chỉ cần tạo một file

cài đặt (Baitap01.cpp) trong thư mục Source File

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 38: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

38

38

Nhập tên file

Nhập Baitap01.cpp vào ô File name, chọn OK, sau đó

chọn Add(Không thay đổi đường dẫn mặc định)

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 39: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

39

Sau khi tạo xong file Baitap01, cửa sổ Solution sẽ có dạng

sau (kiểm tra lại vị trí của file):

39

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 40: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

40

5.4. Viết lệnh

Double click vào file Baitap01.cpp trong thư mục Source File

40

#include <file chứa thư viện hàm>

using namespace std;

Khai báo hằng, biến toàn cục (nếu có)

void main(){

Các lệnh;

}

Cấu trúc file Chƣơng trình

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 41: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

41

5.5. Dịch, sửa lỗi và chạy chƣơng trình.

Chạy chương trình không debug lỗi: Ctrl + F5

Chạy chương trình có lỗi: F5

41

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 42: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

42

42

Cửa sổ báo lỗi Lỗi do thiếu dấu ; cuối

dòng lệnh

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Kết quả thực thi thành công

Page 43: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

43

5.6. Mở Project có sẳn

Cách 1: Mở từ menu VC

- Khởi động VC

- Vào menu File/ Open Project

- Chọn thư mục chứa Project, chọn tên Project, sau

đó chọn Open

43

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 44: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

44

Double click vào file có đánh dấu mũi tên

(Lưu ý: Khi chép Project có thể xóa thư mục Debug, vì

thư mục này sẽ được tạo khi chạy chương trình) 44

Cách 2: Mở trực tiếp từ Explore

Mở thư mục chứa Project

5. CHƢƠNG TRÌNH C ĐẦU TIÊN

Page 45: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

http://www.thayphet.net

45

BÀI TẬP

1. Lập trình là gì?

2. Ngôn ngữ lập trình là gì?

3. Ngôn ngữ lập trình được chia thành những loại

nào?

4. Phân biệt sự giống và khác nhau giữa trình biên

dịch và trình thông dịch.

5. Trình bày các phương pháp lập trình

6. Viết và thực thi môt chương trình C dùng công cụ

MS Visual studio.

7. Bằng ngôn ngữ tự nhiên hoặc vẽ lưu đồ mô tả giải

thuật giải các bài toán:

Giải và biện luận phương trình bậc 2: AX2+BX+C=0

Tính tổng : S= 12 + 22 + . . n2 45

Page 46: KỸ THUẬT LẬP TRÌNH C/ - thayphet.net · Là ngôn ngữ dùng để viết chương trình cho máy tính hoạt động gồm: Ngôn ngữ máy: Các chỉ thị dưới dạng

46

The End.