Bài giảng Lập trình C - Nguyễn Thị Thúy Loan

 Kiến thức cơ bản  Tổng quan về lập trình C.  Biểu thức, toán tử, vào ra dữ liệu.  Cấu trúc điều kiển và lưu đồ thuật toán.  Hàm  Mảng – chuỗi kí tự.

pdf68 trang | Chia sẻ: lylyngoc | Lượt xem: 1654 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Bài giảng Lập trình C - Nguyễn Thị Thúy Loan, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1LẬP TRÌNH C ThS. Nguyễn Thị Thúy Loan BÀI GIẢNG 5/3/2013 Nguyễn Thị Thúy Loan 2 Tài liệu tham khảo  Trần Minh Thái, tập bài giảng KTLT, 2005  Phạm Văn Ất: “ỹ thuật lập trình C: cơ sở và nâng cao. NXB KHKT – 1996  Nguyễn Đình Tê – Hoàng Đức Hải: Giáo trình lý thuyết & Bài tập ngôn ngữ C. Nhà Xuất Bản Mũi Cà Mau.  Huỳnh Tấn Dũng – Hoàng Đức Hải, Bài tập ngôn ngữ C từ A đến Z, NXB Lao Động – Xã Hội. 5/3/2013 Nguyễn Thị Thúy Loan 3 Cách đánh giá  Lý thuyết: 50%  Thực hành: 30%  Bài tập: 20% 5/3/2013 Nguyễn Thị Thúy Loan 4 Nội dung chương trình  Kiến thức cơ bản  Tổng quan về lập trình C.  Biểu thức, toán tử, vào ra dữ liệu.  Cấu trúc điều kiển và lưu đồ thuật toán.  Hàm  Mảng – chuỗi kí tự. 2KIẾN THỨC CƠ BẢN ThS. Nguyễn Thị Thúy Loan Chương I: 5/3/2013 Nguyễn Thị Thúy Loan 6 NỘI DUNG  Chuyển đổi cơ số  Kỹ thuật để giải quyết bài toán  Các bước để viết chương trình.  Một chương trình đơn giản. 5/3/2013 Nguyễn Thị Thúy Loan 7 Biểu diễn thông tin  Đơn vị đo thông tin: bit- BInary digiT  Một bit tương ứng với một chỉ thị hoặc một thông báo nào đó về sự kiện, có 1 trong 2 trạng thái là Tắt (Off) / Mở (On) hay Đúng (True)/Sai (False). 5/3/2013 Nguyễn Thị Thúy Loan 8 Biểu diễn thông tin  Biểu diễn số trong các hệ đếm:  Hệ đếm là tập hợp các ký hiệu và qui tắc sử dụng tập ký hiệu đó. Mỗi hệ đếm có một số ký số (digits) hữu hạn. Tổng số ký số của mỗi hệ đếm gọi là cơ số (base hay radix), ký hiệu là b. 35/3/2013 Nguyễn Thị Thúy Loan 9 Biểu diễn thông tin  Hệ đếm cơ số b (b ≥ 2, b là số nguyên dương) mang tính chất sau: o Có b ký số để thể hiện giá trị số. Ký số nhỏ nhất là 0 và lớn nhất là b-1. o Giá trị vị trí thứ n của một số trong hệ đếm bằng cơ số b lũy thừa n: bn 5/3/2013 Nguyễn Thị Thúy Loan 10 Biểu diễn thông tin  Số N(b) trong hệ đếm cơ số (b) được biểu diễn bởi: o N(b)=anan-1an-2…a1a0a-1a-2…a-m 5/3/2013 Nguyễn Thị Thúy Loan 11 Biểu diễn thông tin o Trong đó, số N(b) có n+1 ký số biểu diễn cho phần nguyên và m ký số lẻ biểu diễn cho phần b_phân, và có giá trị là: o N(b) = an.bn + an-1.bn-1 + an-2.bn-2 + …+ a1.b1+a0.b0 + a-1.b-1+a-2.b-2+…+a-m.b-m 5/3/2013 Nguyễn Thị Thúy Loan 12 Biểu diễn thông tin  Hoặc dưới dạng công thức tổng quát:    n mi i ib baN .)( 45/3/2013 Nguyễn Thị Thúy Loan 13 Biểu diễn thông tin  Các hệ đếm: o Nhị phân o Bát phân o Thập phân o Thập lục phân 5/3/2013 Nguyễn Thị Thúy Loan 14 Hệ đếm thập phân (b = 10)  Hệ đếm thập phân b = 10 là một trong các phát minh của người Ả rập cổ, bao gồm 10 ký số theo ký hiệu sau: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 5/3/2013 Nguyễn Thị Thúy Loan 15 Hệ đếm thập phân (b = 10)  Bất kỳ số nguyên dương trong hệ thập phân có thể biểu diễn như là một tổng các số hạng, mỗi số hạng là tích của một số với 10 lũy thừa, trong đó số mũ lũy thừa được tăng thêm 1 đơn vị kể từ số mũ lũy thừa phía bên phải nó. Số mũ lũy thừa của hàng đơn vị trong hệ thập phân là 0. 5/3/2013 Nguyễn Thị Thúy Loan 16 Hệ đếm thập phân (b = 10)  Ví dụ:  Số 123 được biểu diễn như sau: 123 = 1 * 102 + 2 * 101 + 3*100  Số 5246 có thể được biểu diễn như sau: 5246 = 5 * 103 + 2 *102 + 4 * 101 + 6 * 100 = 5 * 1000 + 2 * 100 + 4 * 10 + 6 * 1 55/3/2013 Nguyễn Thị Thúy Loan 17 Hệ đếm thập phân (b = 10)  Phần thập phân trong hệ thập phân sau dấu chấm phân cách thập phân (theo qui ước của Mỹ) thể hiện trong ký hiệu mở rộng bởi 10 lũy thừa âm, tính từ phải sang trái kể từ dấu chấm phân cách.  Ví dụ: 254.68 = 2 * 102 + 5 * 101 + 4 * 100 + 6 * 10-1 + 8 * 10-2 5/3/2013 Nguyễn Thị Thúy Loan 18 Hệ đếm nhị phân (b = 2)  Với b = 2, là hệ đếm đơn giản nhất với 2 chữ số là 0 và 1. Mỗi chữ số nhị phân gọi là BIT.  Cách chuyển đổi hệ nhị phân sang hệ thập phân: 5/3/2013 Nguyễn Thị Thúy Loan 19 Hệ đếm nhị phân (b = 2)  Ví dụ: 10101(2) = ? (10)  Số nhị phân :1 1 1 0 1  Số vị trí : 4 3 2 1 0  Trị vị trí : 24 23 22 21 20  Hệ 10 là : 16 8 4 2 1 10101(2) = 1*24 + 0*23 + 1*22 + 0*21 + 1*20 = 16 + 0 + 4 + 0 + 1 = 21(10) 5/3/2013 Nguyễn Thị Thúy Loan 20 Hệ đếm nhị phân (b=2) 11101.11(2)= ? (10)  Số nhị phân 1 1 1 0 1. 1 1  Số vị trí 4 3 2 1 0 -1 -2  Trị vị trí 24 23 22 21 20 2-1 2-2  Hệ 10 là 16 8 4 2 1 0.5 0.25 11101.11(2) = 1*16 + 1*8 + 1*4 + 0*2 + 1*1 + 1*0.5 + 1*0.25 = 29.75 (10) 65/3/2013 Nguyễn Thị Thúy Loan 21 Hệ đếm bát phân (b = 8)  1 tập hợp 3 bit biểu diễn 8 trị : 000, 001, 010, 011, 100, 101, 110, 111 tương đương với 8 trị trong hệ thập phân là 0, 1, 2, 3, 4, 5, 6, 7. 5/3/2013 Nguyễn Thị Thúy Loan 22 Hệ đếm bát phân (b = 8)  Tập hợp các chữ số này gọi là hệ bát phân, là hệ đếm với b = 8 = 23. Trong hệ bát phân, trị vị trí là lũy thừa của 8.  Ví dụ: 235(8) = 2*82 + 3*81 + 5*80 = 157(10) 5/3/2013 Nguyễn Thị Thúy Loan 23 Hệ đếm thập lục phân(b=16)  Hệ đếm thập lục phân là hệ cơ số b =16= 24, tương đương với tập hợp 4 chữ số nhị phân (4 bit).  Hexa-decimal gồm 16 ký tự : từ 0 đến 9, và 6 chữ in A, B, C, D, E, F với A là 10, B là 11, C là 12, D là 13, E là 14, F là 15. Với hệ thập lục phân, trị vị trí là lũy thừa của 16. 5/3/2013 Nguyễn Thị Thúy Loan 24  Ví dụ: 34F5C(16) = 3*164 + 4*163 + 15*162 + 5*161 + 12*160 = 216294(10) Hệ đếm thập lục phân(b=16) 75/3/2013 Nguyễn Thị Thúy Loan 25 Bảng qui đổi tương đương 16 chữ số đầu tiên của 4 hệ Hệ 10 Hệ 2 Hệ 8 Hệ 16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 0 1 2 3 4 5 6 7 8 9 A B C D E F 5/3/2013 Nguyễn Thị Thúy Loan 26 Bài tập  Thực hiện các phép chuyển đổi sau:  100011011(2)= ? (10)  277(8) = ?(10)  19B116 (16) = ?(2)  0011011111011111(2) = ?(16) 5/3/2013 Nguyễn Thị Thúy Loan 27 Kỹ thuật để giải quyết bài toán  Một chương trình máy tính được thiết kế để giải quyết một bài toán nào đó. Vì vậy, những bước cần để tìm kiếm lời giải cho một bài toán cũng giống như những bước cần để viết một chương trình. 5/3/2013 Nguyễn Thị Thúy Loan 28 Kỹ thuật để giải quyết bài toán  Các bước gồm: o Xác định yêu cầu của bài toán o Nghĩ ra 1 thuật toán (algorithm) để tìm lời giải. o Thực hiện thuật toán đó. o Kiểm tra kết quả để lời giải đó có theo yêu cầu của bài không? 85/3/2013 Nguyễn Thị Thúy Loan 29  Viết 1 chương trình trên C, các bước đề nghị: o Xác định mục đích của chương trình o Nghĩ ra thuật toán để giải quyết bài toán (dùng mã giả, lưu đồ, ….) o Cài đặt (viết) thuật toán dùng ngôn ngữ lập trình C. o Thực thi chương trình và kiểm thử (testing) Kỹ thuật để giải quyết bài toán 5/3/2013 Nguyễn Thị Thúy Loan 30  Soạn thảo 1 văn bản được dùng nhập mã nguồn (source code)  Mã nguồn được biên dịch (compile) để tạo nên tập tin đối tượng (object file) Các bước trong chu trình phát triển chương trình 5/3/2013 Nguyễn Thị Thúy Loan 31  Các tập tin đối tượng được liên kết (link) để tạo nên tập tin có thể thực thi được (executable file).  Thực hiện (run) chương trình để chỉ ra chương trình có làm việc giống như kết quả đã định không? Các bước trong chu trình phát triển chương trình 5/3/2013 Nguyễn Thị Thúy Loan 32 Các bước trong chu trình phát triển chương trình 95/3/2013 Nguyễn Thị Thúy Loan 33  Nhập mã nguồn (source code) o Mã nguồn là tập lệnh dùng để chỉ dẫn máy tính thực hiện công việc do người lập trình đưa ra. o Tập tin mã nguồn có phần mở rộng .cpp (C++) Các bước trong chu trình phát triển chương trình 5/3/2013 Nguyễn Thị Thúy Loan 34  Biên dịch mã nguồn (compile) o Chương trình viết bằng ngôn ngữ cấp cao C/C++ được biên dịch sang mã máy (machine language) bằng một chương trình dịch (trình biên dịch -compiler) o Mã đối tuợng (object code) và tập tin chứa chúng gọi là tập tin đối tuợng .obj. Các bước trong chu trình phát triển chương trình 5/3/2013 Nguyễn Thị Thúy Loan 35  Liên kết các tập tin đối tượng tạo các tập tin thực thi (executable file). o C có một thư viện chứa mã đối tượng cho những hàm được tạo sẵn. Ví dụ: clrscr(), gets(), sqrt(), Các bước trong chu trình phát triển chương trình 5/3/2013 Nguyễn Thị Thúy Loan 36 o Tập tin đối tượng do trình biên dịch tạo ra kết hợp với mã đối tượng để tạo tập tin thực thi, quá trình này được tạo bởi bộ liên kết (Linker) Các bước trong chu trình phát triển chương trình 10 5/3/2013 Nguyễn Thị Thúy Loan 37  Thực hiện chương trình (run) o Chương trình nguồn được biên dịch và liên kết sẽ tạo nên tập tin thực thi và thực thi tại dấu nhắc hệ thống. o Nếu chương trình có lỗi phải được chỉnh sửa và biên dịch lại. Các bước trong chu trình phát triển chương trình 5/3/2013 Nguyễn Thị Thúy Loan 38 o Quá trình 4 bước sẽ được lập lại cho đến khi tập tin thực thi thực hiện đúng yêu cầu bài toán. Các bước trong chu trình phát triển chương trình 5/3/2013 Nguyễn Thị Thúy Loan 39 #include #include void main() { clrscr(); printf (“ Hello! ”); //cout<<“Hello!”; getch(); } Chương trình C đơn giản TỔNG QUAN VỀ LẬP TRÌNH C ThS. Nguyễn Thị Thúy Loan Chương II: 11 5/3/2013 Nguyễn Thị Thúy Loan 41 NỘI DUNG  Các khái niệm cơ bản.  Khảo sát một chương trình C đơn giản.  Từ khóa, quy tắc đặt tên trong C  Kiểu dữ liệu, hằng, biến.  Các thao tác trên Borland C. 5/3/2013 Nguyễn Thị Thúy Loan 42 Khái niệm cơ bản về lập trình Lập trình? Giải thuật Ngôn ngữ Lập trình 5/3/2013 Nguyễn Thị Thúy Loan 43 Ngôn ngữ lập trình là gì?  Khái niệm: Ngôn ngữ lập trình là ngôn ngữ dùng để trình bày các thuật toán trong máy tính mà máy tính có thể hiểu được. 5/3/2013 Nguyễn Thị Thúy Loan 44 Ngôn ngữ lập trình là gì?  Phân loại: o Ngôn ngữ máy: Ngôn ngữ riêng của từng máy và là loại ngôn ngữ mà máy tính có thể hiểu được một cách trực tiếp. 12 5/3/2013 Nguyễn Thị Thúy Loan 45 Ngôn ngữ lập trình là gì? o Hợp ngữ: Tương tự ngôn ngữ máy, nhưng hợp ngữ khác với ngôn ngữ máy ở chỗ, thay vì viết chương trình dưới dạng nhị phân, người ta sử dụng một số ký hiệu tượng trưng dễ nhớ. 5/3/2013 Nguyễn Thị Thúy Loan 46 Ngôn ngữ lập trình là gì? o Ngôn ngữ cấp cao: Chương trình thường dễ viết hơn so với Ngôn ngữ máy và Hợp ngữ. Mỗi lệnh của ngôn ngữ cấp cao tương đương với một lệnh của thuật toán. o Ví dụ: C, Pascal, Java, C++, Visual Basic, … 5/3/2013 Nguyễn Thị Thúy Loan 47 Ví dụ #include #include void main() { clrscr(); printf(“Hello!”);//cout<<“Hello!”; getch(); } 5/3/2013 Nguyễn Thị Thúy Loan 48  Đúng đắn, chính xác (correctness).  Chắc chắn (robustness).  Thân thiện (user friendliness).  Khả năng thích nghi (adapability): Chương trình có khả năng phát triển theo yêu cầu. Các đặc điểm của CT 13 5/3/2013 Nguyễn Thị Thúy Loan 49 Các đặc điểm của CT  Tính tái sử dụng (reuseability): Chương trình có thể dùng để làm một phần trong một chương trình lớn khác.  Tính hiệu quả (efficiency).  Tính khả chuyển (porability): Khả năng chuyển đổi giữa các môi trường.  Tính dừng (halt). 5/3/2013 Nguyễn Thị Thúy Loan 50 Tập ký tự dùng trong C Ngôn ngữ C được xây dựng trên bộ ký tự sau:  Ký tự chữ: 26 chữ cái hoa: A B C .. Z, 26 chữ cái thường: a b c .. z  Ký tự số: 0 1 2 .. 9  Ký tự gạch chân: _  Các ký tự đặc biệt: o Các ký hiệu toán học: + - * / = ( ) o Các ký tự khác: . , : ; [ ] {} ! \ & % # $ ... 5/3/2013 Nguyễn Thị Thúy Loan 51 Cấu trúc của một CT C Khối khai báo Hàm main() Các hàm con (nếu có) 5/3/2013 Nguyễn Thị Thúy Loan 52 Khảo sát chương trình C đơn giản 14 /*Tính tổng hai số*/ // Mô tả mục đích của chương trình #include // khai báo thư viện int Tong(int a, int b); // khai báo prototype void main() // hàm chính của chương trình { int a,b,t; printf(“nhap a, b”);//cout <<“Nhap a,b”; scanf(“%d%d”,&a,&b);cin>>a,b; t = Tong(a,b); printf(“Tong a +b = %d”, t);//cout<<“Tong a +b”<<t; } int Tong(int a, int b)// Hàm con { int t =0; t = a+b; return t; } 5/3/2013 Nguyễn Thị Thúy Loan 54 Chương trình C đơn giản  #include là tập tin header chuẩn của C, chứa các định nghĩa về nhập và xuất.  #include là tập tin header chuẩn của C, chứa các thư viện chuẩn. 5/3/2013 Nguyễn Thị Thúy Loan 55  Hàm main() là thành phần bắt buộc của chương trình.  Hàm main() là nơi chương trình C bắt đầu thực hiện.  Hàm main() không phụ thuộc vào vị trí của hàm. Chương trình C đơn giản 5/3/2013 Nguyễn Thị Thúy Loan 56  Chương trình C phải tồn tại một hàm main()  Nội dung của hàm main() được thực hiện đầu tiên và đặt trong cặp dấu ngoặc { }. Chương trình C đơn giản 15 5/3/2013 Nguyễn Thị Thúy Loan 57  Thư viện stdio.h: chứa các định nghĩa macro và các hàm nhập xuất như printf(), scanf(), gets(), fflush(), fwrite(), scanf()...  Thư viện conio.h: chứa các hàm màn hình như getch(), putch(), clrscr(), gotoxy(), ...  Thư viện math.h: chứa các hàm tính toán như: sin, cos, sqrt, … Các thư viện thông dụng 5/3/2013 Nguyễn Thị Thúy Loan 58 Các chú thích  Các chú thích được các lập trình viên sử dụng để ghi chú hay mô tả trong các phần của chương trình.  Trong C có hai cách để chú thích: o Chú thích trên 1 dòng: dùng cặp dấu //. o Chú thích khối (chú thích trên nhiều dòng) dùng cặp /* ... */. 5/3/2013 Nguyễn Thị Thúy Loan 59 Ví dụ #include "stdio.h" void main() { int x,y; x = 1; //Gán hằng số 1 cho biến x y = 3 + x; //Gán giá trị 3 + x cho y } 5/3/2013 Nguyễn Thị Thúy Loan 60 Từ khóa  Từ khoá là những từ được sử dụng để khai báo các kiểu dữ liệu, để viết các toán tử và các câu lệnh.  Không được dùng các từ khóa để đặt tên cho các hằng, biến, mảng, hàm... Các từ khóa được viết bằng chữ thường.  Bảng dưới đây liệt kê các từ khoá của C: 16 5/3/2013 Nguyễn Thị Thúy Loan 61 asm break case char const continue default do double else enum extern float for goto if int interrupt long register return short signed sizeof static struct switch typedef union unsigned void while Từ khóa 5/3/2013 Nguyễn Thị Thúy Loan 62 Quy tắc đặt tên trong C  Tên là một dãy các ký tự bao gồm chữ cái, số và gạch nối.  Ký tự đầu tiên của tên phải là chữ hoặc gạch nối (không bắt đầu bằng số).  Tên không được trùng với từ khoá.  Tên được dùng để đặt cho tên hằng, tên biến, tên mảng, tên hàm, tên con trỏ, tên tệp,... 5/3/2013 Nguyễn Thị Thúy Loan 63 Ví dụ  Các tên đúng: a_1, delta, x1, _step, GAMA  Các tên sai: 3MN Ký tự đầu tiên là số m#2 Sử dụng ký tự # f(x) Sử dụng các dấu ( ) do Trùng với từ khoá te ta Sử dụng dấu trắng Y-3 Sử dụng dấu gạch ngang - 5/3/2013 Nguyễn Thị Thúy Loan 64  Kiểu ký tự: Một giá trị kiểu char chiếm 1 byte (8 bit) và biểu diễn được một ký tự thông qua bảng mã ASCII Ký tự Mã ASCII Ký tự Mã ASCII 0 48 A 65 1 49 B 66 2 50 a 97 9 57 b 98 Kiểu dữ liệu 17 5/3/2013 Nguyễn Thị Thúy Loan 65 Kiểu dữ liệu  Có hai kiểu dữ liệu ký tự: kiểu char và unsigned char. Kiểu Phạm vi biểu diễn Số ký tự Kích thước Mã định dạng char -128 đến 127 256 1 byte %c or %d unsigned char 0 đến 255 256 1 byte %d 5/3/2013 Nguyễn Thị Thúy Loan 66  Kiểu số nguyên: Kiểu Phạm vi biểu diễn Kích thước Mã định dạng int -32768 đến 32767 2 byte %d unsigned int 0 đến 65535 2 byte %u long -2147483648 đến 2147483647 4 byte %ld unsigned long 0 đến 4294967295 4 byte %lu Kiểu dữ liệu 5/3/2013 Nguyễn Thị Thúy Loan 67  Kiểu số thực (dấu chấm động): Kiểu Phạm vi biểu diễn Số chữ số có nghĩa Kích thước Mã đinh dạng Float 3.4E-38 đến 3.4E+38 7 đến 8 4 byte %f Double 1.7E-308 đến 1.7E+308 15 đến 16 8 byte %lf long double 3.4E-4932 đến 1.1E4932 17 đến 18 10 byte %lf Kiểu dữ liệu 5/3/2013 Nguyễn Thị Thúy Loan 68 Hằng và biến  Hằng: là các đại lượng mà giá trị của nó không thay đổi trong quá trình tính toán. Cú pháp: #define  Ví dụ: #define MAX 1000 // MAX là tên hằng, MAX có giá trị 1000 18 5/3/2013 Nguyễn Thị Thúy Loan 69  Hằng int: là số nguyên có giá trị trong khoảng từ -32768 đến 32767.  Ví dụ: #define so -50// hằng so có giá trị là -50 #define so_ng 262// hằng so_ng có giá trị là 262 #define sothuc 262.0// hằng sothuc có giá trị là 262.0 (float) Hằng và biến 5/3/2013 Nguyễn Thị Thúy Loan 70  Hằng long: là số nguyên có giá trị trong khoảng từ -2,1 tỷ đến 2,1 tỷ.  Hằng long được viết theo cách: 14L hoặc 14l (thêm L hoặc l vào đuôi)  Một số nguyên vượt ra ngoài miền xác định của int cũng được xem là long. Hằng và biến 5/3/2013 Nguyễn Thị Thúy Loan 71  Ví dụ: #define n1 33000L // Định nghĩa hằng long n1 có giá trị là 33000 #define n2 33000 // Định nghĩa hằng long n2 có giá trị là 33000 Hằng và biến 5/3/2013 Nguyễn Thị Thúy Loan 72  Hằng ký tự: là một ký tự riêng biệt được viết trong hai dấu nháy đơn, ví dụ 'a'. Giá trị của 'a' chính là mã ASCII của chữ a. Như vậy giá trị của 'a' là 97.  Hằng ký tự có thể tham gia vào các phép toán như mọi số nguyên khác. Ví dụ: '9' - '0' = 57 – 48 = 9  #define kt 'a' // hằng ký tự kt có giá trị là 97 Hằng và biến 19 5/3/2013 Nguyễn Thị Thúy Loan 73  Hằng chuỗi ký tự: là một dãy ký tự bất kỳ đặt trong hai dấu nháy kép.  Ví dụ: #define s1 "Ha noi"  Chuỗi ký tự được lưu trữ trong máy dưới dạng một mảng có các phần tử là các ký tự riêng biệt. Trình biên dịch tự động thêm ký tự null (\0) vào cuối mỗi xâu (ký tự \0 được xem là dấu hiệu kết thúc của một xâu ký tự ). Hằng và biến 5/3/2013 Nguyễn Thị Thúy Loan 74  Biến: là tên tượng trưng trong một vùng nhớ mà dữ liệu có thể lưu trữ trên đó, mỗi biến cần phải được khai báo trước khi đưa vào sử dụng. Cú pháp: ; Hằng và biến 5/3/2013 Nguyễn Thị Thúy Loan 75  Ví dụ: int a = 10, b; // biến a, b chứa các số nguyên long m , n; // biến m, n chứa giá trị long Hằng và biến 5/3/2013 Nguyễn Thị Thúy Loan 76 Cách xây dựng chương trình B1: Phân tích bài toán và vẽ lưu đồ thuật toán. B2: Xây dựng thuật toán. B3: Viết chương trình. B4: Chạy và kiểm tra chương trình. B5: Bảo trì. 20 5/3/2013 Nguyễn Thị Thúy Loan 77 Môi trường hỗ trợ lập trình  C được tạo bởi Dennis Ritchie ở Bell Telephone Laboratories vào năm 1972.  Vào năm 1983, học viện chuẩn quốc gia Mỹ (American National Standards Institute - ANSI) thành lập một tiểu ban để chuẩn hóa C được biết đến như ANSI Standard C 5/3/2013 Nguyễn Thị Thúy Loan 78 Đặc điểm ngôn ngữ 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. 5/3/2013 Nguyễn Thị Thúy Loan 79 Các khái niệm  Lệnh Lệnh thực hiện một chức năng nào đó (khai báo, gán, xuất, nhập, …) và được kết thúc bằng dấu chấm phẩy (;)  Khối lệnh Khối lệnh gồm nhiều lệnh và được đặt trong cặp dấu ngoặc { } 5/3/2013 Nguyễn Thị Thúy Loan 80 Qui ước viết lệnh trong C  Mỗi lệnh nằm trên một dòng. Cuối dòng lệnh PHẢI có dấu chấm phẩy (;).  Lệnh quá dài có thể được viết thành nhiều dòng sao cho mỗi lệnh phải được quan sát trọn vẹn trong pham vi cửa sổ lệnh. 21 5/3/2013 Nguyễn Thị Thúy Loan 81  Không nên đặt nhiều lệnh trên cùng một dòng, ngay cả các khai báo biến, nếu các biến có khác kiểu cũng nên đặt trên các dòng khác nhau. Qui ước viết lệnh trong C 5/3/2013 Nguyễn Thị Thúy Loan 82 Các thao tác trên Borland C  Màn hình làm việc 5/3/2013 Nguyễn Thị Thúy Loan 83 Các phím chức năng chính:  F2: Lưu file  Chú ý: Chọn đường dẫn và đặt tên file cho đúng. Tên có tối đa 8 ký tự, phần mở rộng không cần nhập vào (mặc định là *.cpp). Các thao tác trên Borland C 5/3/2013 Nguyễn Thị Thúy Loan 84  F3: Mở file có sẵn.  F4: Chạy từng bước tại vị trí con trỏ hiện hành.  F5: Phóng to hoặc thu nhỏ màn hình soạn thảo.  F6: Chuyển qua lại các cửa sổ soạn thảo. Các thao tác trên Borland C 22 5/3/2013 Nguyễn Thị Thúy L
Tài liệu liên quan