• LÀM QUEN VỚI NGÔN NGỮ LẬP TRÌNH • LẬP TRÌNH MỘT SỐ BÀI ĐƠN GIẢN... CHƯƠNG 1: LÀM QUEN VỚI NGÔN NGỮ LẬP TRÌNHI.. GIỚI THIỆU VỀ NGÔN NGỮ LẬP TRÌNH.. CẤU TRÚC CỦA CHƯƠNG TRÌNH IV.. Thuật
Trang 1LẬP TRÌNH C CHO NGƯỜI MỚI HỌC
Giảng viên: Thạc sĩ Trần Thanh Sơn Trường Đại Học Khoa Học Tự Nhiên
Trang 2GIỚI THIỆU MÔN HỌC
• CUNG CẤP KIẾN THỨC NỀN CHO NGƯỜI MỚI BẮT ĐẦU
• LÀM QUEN VỚI NGÔN NGỮ LẬP TRÌNH
• LẬP TRÌNH MỘT SỐ BÀI ĐƠN GIẢN
Trang 3TÀI LIỆU THAM KHẢO
• GS Phạm Văn Ất, Giáo Trình Kỹ Thuật Lập Trình C - Căn Bản &
Trang 4CHƯƠNG 1: LÀM QUEN VỚI NGÔN NGỮ LẬP TRÌNH
I. GIỚI THIỆU VỀ NGÔN NGỮ LẬP TRÌNH
II. DEMO PROJECT MẪU (MÔI TRƯỜNG VISUAL STUDIO 2013)
III. CẤU TRÚC CỦA CHƯƠNG TRÌNH
IV. CÁC KIỂU DỮ LIỆU CƠ BẢN
V. CÁC BƯỚC LẬP TRÌNH
VI. CÁC HÀM NHẬP XUẤT CHUẨN
Trang 5I GIỚI THIỆU VỀ NGÔN NGỮ LẬP TRÌNH
1. Thuật toán
2. Chương trình
3. Ngôn ngữ lập trình
5
Trang 61 Thuật toán (Algorithm)
• Định nghĩa: Là một dãy các thao tác xác định trên một đối tượng, sao chosau khi thực hiện một số hữu hạn các bước thì đạt được mục tiêu TheoR.A Kowalski thì bản chất của thuật toán:
Thuật toán = Logic + Điều khiển
Trang 7Logic và điều khiển
• Logic: Để 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 …vv Gồm cả kiến thức chuyên môn
Ví dụ: tính diện tích hình cầu
• Điều khiển: Giải thuật phải làm như thế nào? Cách thức tiến hành áp
dụng phần logic
7
Trang 82 Chương trình (Program)
• Định nghĩa: 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ínhlàm việc Theo Niklaus Wirth thì:
Chương trình = Thuật toán + Cấu trúc dữ liệu
• Các thuật toán và chương trình có 3 cấu trúc điều khiển cơ bản: Tuần tự(Sequential), Chọn lọc (Selection), Lặp lại (repetition)
Trang 93 Ngôn ngữ lập trình (Programming language)
• Định nghĩa: 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
• Ngôn ngữ nào cũng có 3 thành phần: Tập ký tự, từ khóa và tên
9
Trang 10II DEMO PROJECT MẪU
• Xuất ra màn hình câu “This is my first project”
• Môi trường lập trình: Visual Studio 2013
Trang 11III CẤU TRÚC CHƯƠNG TRÌNH
Trang 12• Ký tự gạch nối: _ (phân biệt với dấu -)
• Các ký tự đặc biệt: ,:: []{}? ! \ & | % # $, dấu cách (space)
Trang 132 Từ khóa
13
Trang 14Độ dài tối đa là 32
Không trùng với từ khóa
Trang 15Ví dụ tên biến
Các tên đúng: delta, a_1, Num_ODD, Case
Các tên sai:
• 3a_1 (ký tự đầu là số)
• num-odd (sử dụng dấu gạch ngang)
• int (đặt tên trùng với từ khóa)
• del ta (có khoảng trắng)
• f(x) (có dấu ngoặc tròn)
15
Trang 16IV CÁC KIỂU DỮ LIỆU CƠ BẢN
Trang 17Kiểu logic (Kiểu nguyên đặc biệt)
• Nhận 2 giá trị: Đúng (True) hoặc 1 và Sai (False) hoặc 0
• Ta có thể sử dụng các phép logic and (&&), or (||), not (!)
17
a b a && b a||b
Khác 0 Khác 0 1 1Khác 0 0 0 1
Trang 182 Khai báo biến
<Kiểu dữ liệu> <Tên biến> [ = <Giá trị>];
Giá trị của biến có thể được khởi gán khi khai báo
Ví dụ:
• int i, j, k=10;
• float f;
• char ch, ch1 = ‘A’, ch2 = ‘\n’;
Trang 19const long MAX = 100L;
const char ECHO[30] = "DHKT TPHCM";
19
Trang 204 Biểu thức (1/4)
• Các phép toán số học: +, -, *, /, %
• Các phép toán quan hệ: >, <, >=, <=, ==, !=
• Các phép toán logic: &&, ||, !
• Các phép toán thao tác bit: &, |, ^, <<, >>, ~
• Phép toán tăng giảm: ++,
Phân biệt: ++n; và n++;
Trang 24Toán tử Thứ tự kết hợp
• ~, ++, , (type) Phải sang trái
• <<, >> Trái sang phải
• <, <=, >, >= Trái sang phải
•
Trang 25V 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á)
25
Trang 261 Xác định I-P-O
• Quy trình xử lý cơ bản của máy tính gồm:
• Ví dụ: Xác định lương của công nhân biết lương = lương cơ bản * ngày công
I: lương căn bản, ngày công
P: Lấy lương căn bản nhân với ngày công
P (Process)
I (Input) O (Output)
Trang 272 Demo project mẫu (tiếp theo)
Trang 28VI HÀM NHẬP XUẤT CHUẨN
• Các hàm nhập printf (), scanf () lấy từ thư viện stdio.h,
• Hàm getch (_getch) lấy từ thư viện conio.h
• Các hàm toán học được khai báo trong thư viên math.h
• Phải khai báo thư viện để sử dụng các hàm: #include
Trang 291 Hàm xuất chuẩn trong C
Hàm printf (<format>[, <argument>, …])