Bài giảng ngôn ngữ lập trình C/C++

26 639 2
Bài giảng ngôn ngữ lập trình C/C++

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BÀI GIẢNG NGÔN NG Ữ L Ậ P TRÌNH C/C++ TS. T r ần Đăn g Hưn g NGÔN NG Ữ L Ậ P TRÌNH C/C++ g g Khoa Công Nghệ Thông Tin Email: hungtd@hnue.edu.vn N ộ i Dung N ộ i Dung  Chương 1: Giới thiệu  Chương 2: Các cấu trúc điều khiển  Chương 3: Hàm (functions)  Chương 4: Mảng (arrays)  Chương 5: Con t r ỏ (pointers)  Chương 6: Kí tự và xâu (characters and strings) Ch ươ ng 7: C ấ u trúc và file (structures and files)  Ch ươ ng 7: C ấ u trúc và file (structures and files)  Chương 8: Tiền xử lý (preprocessors) Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Hình thức đánh giá  Dự lớp 30 %  Bài thi cuối khóa 70%  Trắc nghiệm 40%  Thực hành trên máy 60% Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Tài liệu tham khảo và trình biên dịch  Sách  Ngôn ngữ lập trình C – Quách Tuấn Ngọc Ấ  Kỹ thuật lập trình C – Phạm Văn Ấ t  http://www.cprogramming.com/  Trình biên d ị ch  Trình biên d ị ch  TC 3.0 (giao diện giống Pascal)  Visual C++ (windows) (li )  gcc (li nux )  Dev-C++ (windows) Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Chương 1: Giới thiệu Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN L ị ch s ử ngôn ng ữ l ậ p trình C L ị ch s ử ngôn ng ữ l ậ p trình C  Ra đời vào khoảng năm 1970, viết bởi Dennis Ritchie tại phòng thí nghiệm Bell.  Ra đời dưới sựảnh hưởng của các ngôn ngữ t r ước đó: BCPL (1967) và B (1970).  Đ ượ c dùng đ ể vi ế t h ệ đi ề u hành Unix  Đ ượ c dùng đ ể vi ế t h ệ đi ề u hành Unix  Độc lập với phần cứng (khả chuyển) Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Chu ẩ n C (standard C) Chu ẩ n C (standard C)  Có rất nhiều phiên bản C  ANSI C (American National Standards Institute): 1989  Các phiên bản update vào năm 1995 (C95), 1999 (C99)  C và C++ C là b ả ở ộ ủ C đ ể h ỗ l ậ ìh h ớ đ ố i  C ++ là b ả n m ở r ộ ng c ủ a C đ ể h ỗ t r ợ l ậ p tr ì n h h ư ớ ng đ ố i tượng và thiết kế các phần mềm lớn.  C không hẳn là một phần của C++, nhưng có thể sử dụng cả C à C h ằ hi ế k ế h ìh lih h v à C ++ n h ằ m t hi ế t k ế c h ương tr ì n h li n h h ọat.  Nên thành thạo C trước khi học C++. Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Th ư vi ệ n chu ẩ n C Th ư vi ệ n chu ẩ n C  Chương trình C chỉ bao gồm các modules được gọi là hàm (function) ể ế  Có th ể tự vi ế t các hàm  Sử dụng các hàm trong thư viện chuẩn Tránh phát minh l ạ i bánh xe (avoid re inventing the wheel) ☺  Tránh phát minh l ạ i bánh xe (avoid re - inventing the wheel) ☺  Tránh việc tự viết các hàm đã có trong thư viện  Các hàm trong thư viện chuẩn thường được viết cẩn thận và hiệu quả Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Các pha của chương trình C  Soạn thảo chương trình (edit)  Đặt tên file có đuôi là .c (vidu.c, bi1 ) b a i1 .c,… )  Tiền xử lý (preprocess)  Biên d ị ch (compile)  Biên d ị ch (compile)  Link  Load  Excute Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Một chương trình C đơn giản -Ví dụ 1: In một dòng chữ ra màn hình-  Lời giải thích  Đặt trong cặp dấu /* …. */ Trình biên d ị ch s ẽ b ỏ qua  Trình biên d ị ch s ẽ b ỏ qua  Được dùng để chú thích cho các dòng lệnh  Chỉ dẫn tiền biên dịch  #include <stdio h> - s ử d ụ ng các hàm vào/ra Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN  #include <stdio . h> s ử d ụ ng các hàm vào/ra .  Cần biết hàm nào nằm trong thư viện chuẩn nào [...]... Cộng và trừ được tính cuối cùng à í ố ù Các phép toán được tính từ trái sang phải Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Ví dụ: thứ tự ưu tiên các p p phép toán Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Các phép toán logic Toán tử “và”: && Toán tử “hoặc”: || Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Các phép toán trên bit Toán... trong thư viện , nên đầu chương trình phải khai báo thư viện bằng lệnh: #include Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Bài tập tại lớp Bài 1.1: Viết chương trình in ra màn hình các câu chào khác nhau, mỗi câu trên một dòng Bài 1.2: Viết chương trình nhập vào 2 số nguyên dương ế ố rồi đưa ra: tổng, tích, hiệu của 2 số đó Bài 1.3: Giả sử ta có x = 10; y = 20;... trỏ đến vị trí tab tiếp theo \a – bật 1 tiếng chuông \\ - đ ra kí t \ đưa tự \” – đưa ra kí tự “ Ví dụ: thay đổi hàm printf() trong ví dụ 1 ụ y p () g ụ Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Ví dụ 2: Cộng hai số Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Nhập dữ liệu – scanf() scanf(“%d”, &integer1) Đợi người dùng nhập giá trị, rồi gõ phím Enter Lưu... phép đảo ngược bit > - dịch bit sang phải Ví dụ: x = 10; y = x > 2; x = 9; y = 7; z = x % y; Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN => y = 24 => y = 3 => z = 2 Wednesday, April 04, 2012 Các phép toán rút gọn Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Các phép toán rút gọn Ví dụ x = 10; y = 20; x += y; x = 4; x *= 2; = => x = 30 =>... hữ hoa hữ thường Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Khai báo biến Trước khi sử dụng các biến thì phải khai báo nó Cách khai báo: Kiểu_dữ_liệu tên_biến; hoặc Kiểu_dữ Kiểu dữ liệu tên biến = giá_trị_đầu; tên_biến giá trị đầu; Khai báo nhiều biến cùng kiểu thì các biến cách nhau bởi dấu phẩy Ví dụ: int a; double n = 10; float m = 10, p = 20; Ngôn ngữ lập trình C © T.Đ.Hưng... ở bên phải toán tử ế Đổi giá trị được nhập sang kiểu dữ liệu của biến = (toán tử gán) Gán giá trị cho biến Toán T á tử h i ngôi - Bi hai ôi Binary operator t Ví dụ: sum = variable1 + variable2; Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Biến và cách đặt tên biến Biến (variables) Tương ứng với các vùng trong bộ nhớ máy tính Mỗi biến có tên, kiểu, kích thước, và giá trị ỗ ế ể... trong cặp {} Lệnh printf() đưa nội dung ra màn hình Kí tự \n đưa con trỏ xuống 1 dòng mới Hàm int main(), nên p (), phải có lệnh return trả về một số ệ ộ nguyên, return 0; - hàm kết thúc bình thường Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Hàm printf() và các kí tự điều khiển Hàm printf(s): đưa nội dung của s ra màn hình, s có thể là hằng xâu kí tự, biến, hoặc biểu thức Một số... đơn vị SAU khi thực hiện biểu thức có mặt của x Ví dụ: x = 10; y = ++x + 2; => x = 11; y = 13 x = 10; y = x++ + 2; => x = 11; y = 12 x = 10; y = 20; z = 2 * (++x – y++); => x = 11; y = 21; z = -18 Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Các đặc tả của hàm printf() Để đưa nội dung của các biến (hoặc biểu thức) ra màn hình phải có các chỉ dẫn cụ thể cho từng loại dữ liệu Ví dụ:... %f , float x = 10; printf(“x = %6.2f”, x); int x = 10; y = 15.5; printf(“x = %6d, y = %6.2f”,x,y); Các Cá kí tự đặ tả đặc ả %d (hoặc %i) int %c char %f float %lf double %s string %x hexadecimal Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Các đặc tả của hàm scanf() Để nhập các giá trị vào cho các biến cần phải có chỉ dẫn kiểu dữ liệu cho từng biến Ví dụ: Nhập hai số nguyên int... nhiều biến cùng kiểu thì các biến cách nhau bởi dấu phẩy Ví dụ: int a; double n = 10; float m = 10, p = 20; Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Các kiểu dữ liệu chuẩn Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN Wednesday, April 04, 2012 Các phép toán Các phép toán số học Cộng/trừ: + Phép nhân: * Phép chia: / Phép chia lấy dư: % Ví dụ x = x + 2; y = x / 4; x = x % 10; Quy tắ . t ắ c ưu tiê n  C c phép toán trong ngo c đư c tính trư c  C c ngo c lồng nhau, c c phép toán ở bên trong nhất đư c tính t ớ h ấ t tr ư ớ c n h ấ t  Tiếp theo là c c phép nhân, chia,. Một chương trình C có thể c 1 ho c nhiều hàm, nhưng bu c phải c hàm main() ấ ể ố  C p d ấ u {} th ể hiện c c kh ố i (block) chương trình, thân c c hàm luôn đư c đặt trong c p {}  L ệ nh. vi c tự viết c c hàm đã c trong thư viện  C c hàm trong thư viện chuẩn thường đư c viết c n thận và hiệu quả Wednesday, April 04, 2012Ngôn ngữ lập trình C © T.Đ.Hưng – ĐHSPHN C c pha c a chương

Ngày đăng: 08/05/2014, 16:55

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan