Mục tiêu của bài giảng là giới thiệu ngôn ngữ lập trình, sử dụng công cụ hỗ trợ lập trình, cấu trúc và cách thực thi chương trình, các khái niệm, ký hiệu, quy tắc trong, kiểu dữ liệu cơ sở, các toán tử, các hàm thư viện C cơ bản,... Mời các bạn cùng tham khảo.
Lập trình C Bài Giới thiệu ngơn ngữ C Võ Đức Hoàng Email: hoangvd.it@dut.udn.vn Website: http://bkcit.dut.udn.vn/ Cập nhật: 8/2018 Mục tiêu • Giới thiệu ngơn ngữ lập trình C • Sử dụng cơng cụ hỗ trợ lập trình • Cấu trúc cách thực thi chương trình • Các khái niệm, ký hiệu, quy tắc C • Kiểu liệu sở • Các tốn tử • Các hàm thư viện C • Bài tập Lịch sử đời • Ngơn ngữ C Dennis Ritchie xây dựng từ năm 1972 Bell Labs (AT&T) với mục đích tạo ngơn ngữ để viết HĐH UNIX • “The C programming language” Kernighan Ritchie viết năm 1978 • Năm 1983, viện chuẩn quốc gia Mỹ (American National Standards Institute - ANSI) thành lập tiểu ban để chuẩn hóa C - ANSI Standard C Đặc điểm • Bộ lệnh phù hợp với PP LT có cấu trúc • KDL phong phú, cho phép định nghĩa thêm kiểu liệu • Linh động cú pháp, từ khóa • Ngơn ngữ mạnh mềm dẻo, dùng để viết OS, chương trình điều khiển, soạn thảo văn bản, đồ hoạ, bảng tính… chương trình dịch cho ngơn ngữ lập trình khác Khuyết điểm • Cú pháp thuộc loại lạ khó học Nếu người lập trình học qua ngơn ngữ khác dễ dàng tiếp cận • Một số ký hiệu có nhiều nghĩa khác (dấu “*” toán tử nhân, khai báo trỏ, …), việc sử dụng nghĩa toán tử phụ thuộc vào ngữ cảnh sử dụng • Việc truy nhập tự vào liệu, việc trộn lẫn kiểu liệu… làm cho chương trình có phần bất ổn Các bước thực thi chương trình C Ví dụ viết chương trình xuất hình dịng chữ “Hello World” dùng Dev-C Ví dụ viết chương trình xuất hình dịng chữ “Hello World” Bước Khởi động Dev-C Bước Chọn File\ New\ Source File (hoặc nhấn Ctrl+N) Bước Nhập vào nội dung sau Ví dụ viết chương trình xuất hình dịng chữ “Hello World” dùng Dev-C Bước Chọn File\ Save với File Name ViDu Bước Chọn Execute\ Compile để biên dịch kiểm tra lỗi cú pháp Quan sát sổ Compile log phía hình Ví dụ viết chương trình xuất hình dịng chữ “Hello World” dùng Dev-C Bước Nếu khơng có Errors Chọn Execute\ Run để thực thi chương trình 10 Xuất ký tự điều khiển 61 Ví dụ printf(("xyz\tzyx”); \t Tab vào đoạn ký tự trắng Kết quả: xyz zyx printf("xyz\t\bzyx”); \b Xuất lùi sau Kết quả: xyzzyx printf("xyz\nzyx”); \n Kết quả: xyz Xuống dòng endl zyx printf("xyz\rzyx”); \r Về đầu dịng Kết quả: zyx Ký tự Ý nghĩa 61 Ví dụ hàm nhập xuất – Cách #include #include int main() { int a, b, tong; float thuong; printf("Nhap vao so nguyen a: "); scanf("%d", &a); printf("Nhap vao so nguyen b: "); scanf("%d", &b); tong = a + b; thuong = (float)a / b; printf("Tong %d + %d = %d", a, b, tong); printf("\nThuong %d : %d = %f", a, b, thuong); getch(); return 0; } 62 Ví dụ hàm nhập xuất – Cách #include #include int main() { int a, b; printf("Nhap vao so nguyen a: "); scanf("%d", &a); printf("Nhap vao so nguyen b: "); scanf("%d", &b); printf("Tong %d + %d = %d", a, b, a + b); printf("\nThuong %d : %d = %f", a, b, (float)a / b); getch(); return 0; } 63 Kết chương trình 64 Cần hiển thị kết chia gồm số phần lẻ 65 Thay đổi tham số printf() #include #include int main() { int a, b; printf("Nhap vao so nguyen a: "); scanf("%d", &a); printf("Nhap vao so nguyen b: "); scanf("%d", &b); printf("Tong %d + %d = %d\n", a, b, a + b); printf("Thuong %d : %d = %.2f\n", a, b, (float)a / b); getch(); return 0; } 66 Có thể áp dụng cho số nguyên #include #include int main() { printf("Thoi gian: %d:%d:%d\n", 2, 5, 30); getch(); return 0; } #include #include int main() { printf("Thoi gian: %02d:%02d:%02d\n", 2, 5, 30); getch(); return 0; } 67 Bài tập 68 • Viết chương trình in hình thơng tin cá nhân theo mẫu sau: * * * Thong tin ca nhan * * * Ho ten: Lop: Thong tin lien lac: - Dia chi: - So dien thoai: 68 Cách trình bày chương trình 69 •Mỗi lệnh nằm dịng Cuối dịng lệnh PHẢI có dấu chấm phẩy (;) •Lệnh q dài viết thành nhiều dòng cho lệnh phải quan sát trọn vẹn pham vi cửa sổ lệnh 69 Cách trình bày chương trình (tt) •Khơng nên đặt nhiều lệnh dòng, khai báo biến, biến có khác kiểu nên đặt dịng khác •Có thích, ghi đầy đủ •Chương trình phân cấp khối lệnh theo cột 70 Bài tập – Viết chương trình sau Nhập vào phút giây, đổi giây xuất kết hình Nhập vào số nguyên a, b c, tính giá trị trung bình cộng số xuất kết hình Nhập vào số nguyên dương n gồm chữ số, in chữ số hàng trăm, hàng chục hàng đơn vị Nhập vào số thực x y, in hình số lớn (nếu x = y xuất giá trị x) 71 Bài tập (tt) Làm tròn số thực x nhập từ bàn phím thành số ngun (Nếu phần lẻ