Lập trình C – Khái niệm cơ bản

67
Lập trình C - Khái niệm cơ bản - 02

Mục tiêu

  • Giới thiệu ngôn ngữ C
  • Khái niệm thuật toán (algorithms)
  • Thể hiện thuật toán:
    + Lưu đồ (flowchart)
    + Mã giả (Pseudocode)
  • Sử dụng được các ký hiệu dùng trong lưu đồ

1. Sự ra đời của C

Lập trình C - Khái niệm cơ bản 01

2. Các lĩnh vực ứng dụng của C

C được dùng để lập trình hệ thống

  • Một chương trình hệ thống làm thành một phần hệ điều hành hoặc các tiện ích hỗ trợ của hệ điều hành
  • Hệ điều hành (Operating Systems), trình thông dịch (Interpreters), trình Hợp Ngữ (Assembly) được gọi là chương trình hệ thống
  • Hệ điều hành UNIX được phát triển dựa vào C
  • Có các trình biên dịch dành cho hầu hết các loại hệ thống PC

​3. Ngôn ngữ cấp trung

Lập trình C - Khái niệm cơ bản - 02

4. Ngôn ngữ có cấu trúc

Lập trình C - Khái niệm cơ bản - 03

  • C cho phép tổng hợp mã lệnh và dữ liệu.
  • Nó có khả năng tập hợp và ẩn đi tất cả thông tin, lệnh khỏi phần còn lại của chương trình để dùng cho những tác vụ riêng.
  • Chương trình C có thể được chia nhỏ thành những hàm (functions) hay những khối mã (code blocks).

5. Đặc điểm của C

  • C có 32 từ khóa
  • Những từ khóa này kết hợp với cú pháp của C hình thành ngôn ngữ C
  • Các quy tắc được áp dụng cho các chương trình C
    + Tất cả từ khóa là chữ thường
    + Ðoạn mã trong chương trình C có phân biệt chữ thường, chữ hoa, do while khác DO WHILE
    + Từ khóa không thể dùng đặt tên biến (variable name) hoặc tên hàm (function name

    6. Cấu trúc chương trình C

main()

  • Chương trình C được chia nhỏ thành những đơn vị gọi là hàm
  • Không kể có bao nhiêu hàm trong chương trình, Hệ điều hành luôn trao quyền điều khiển cho hàm main() khi một chương trình C được thực thi.
  • Theo sau tên hàm là dấu ngoặc đơn
  • Dấu ngoặc đơn có thể có chứa hay không chứa những tham số

​Dấu phân cách {…}

  • Sau phần đầu hàm là dấu ngoặc xoắn mở {
  • Nó cho biết việc thi hành lệnh trong hàm bắt đầu
  • Tương tự, dấu ngoặc xoắn đóng } sau câu lệnh cuối cùng trong hàm chỉ ra điểm kết thúc của hàm

Dấu kết thúc câu lệnh … ;

  • Một câu lệnh trong C được kết thúc bằng dấu chấm phẩy ;
  • Trình biên dịch C không hiểu việc xuống dòng, khoảng trắng hay tab
  • Một câu lệnh không kết thúc bằng dấu chấm phẩy sẽ được xem như dòng lệnh lỗi trong C

/*Dòng chú thích*/

  • Những chú thích thường được viết để mô tả công việc của một lệnh đặc biệt, một hàm hay toàn bộ chương trình
  • Trình biên dịch sẽ bỏ qua phần chú thích
  • Trong trường hợp chú thích nhiều dòng, nó sẽ bắt đầu bằng ký hiệu /* và kết thúc là */

7. Thư viện C

Tất cả trình biên dịch C đều chứa một thư viện hàm chuẩn

  • Một hàm được viết bởi lập trình viên có thể được đặt trong thư viện và được dùng khi cần thiết
  • Một số trình biên dịch cho phép thêm hàm vào thư viện chuẩn
  • Một số trình biên dịch yêu cầu tạo một thư viện riêng

8. Biên dịch và thi hành chương trình

Lập trình C - Khái niệm cơ bản - 04

9. Giới thiệu thuật toán

Khái niệm

  • Thuật toán gồm một tập hợp các bước thực hiện nhằm giải quyết một vấn đề.
  • Ðây là các bước thực hiên khi một người muốn đi đến quán ăn tự phục vụ từ phòng học

Lập trình C - Khái niệm cơ bản - 05

Trình bày các bước thực hiện để giải phương trình bậc 2

ax2+bx+c=0

B1 : Nếu a=0 đến bước 8, ngược lại đến bước 2
B2 : Tính delta = b2 – 4ac
B3 : Kiểm tra delta
Nếu delta<0 sang bước 5
Nếu delta=0 sang bước 6
Nếu delta>0 sang bước 7​
B5 : Phương trình vô nghiệm – bước 8
B6 : Phương trình có nghiệm kép x = – b/(2a) bước 8
B7 : Phương trình có 2 nghiệm
X1 = (-b+sqrt(delta))/2a
X2 = (-b-sqrt(delta))/2a​
Sang bước 8
B8 : Kết thúc​

Thuật toán

Thuật toán thường được thể hiện qua 2 công cụ:

  • Lưu đồ (Flow-chart)
  • Mã giả (Pseudo-code)

​Mã giả (Pseudocode)

  • Không là mã thật. Một phương pháp viết giải thuật sử dụng một tập hợp các từ tương tự mã thật
  • Ví dụ: Đọan mã giả dùng để hiển thị dòng Hello World

Lập trình C - Khái niệm cơ bản - 06

  • Mỗi đoạn mã giả phải bắt đầu với một từ BEGIN hoặc START và kết thúc bằng END hoặc STOP
  • Ðể hiển thị giá trị nào đó, từ DISPLAY hoặc WRITE được dùng
  • Để nhận giá trị từ người dùng : INPUT hoặc READ được dùng

Lưu đồ (Flowcharts)

Lập trình C - Khái niệm cơ bản = 07
Biểu tượng trong lưu đồ

Lập trình C - Khái niệm cơ bản - 08
Lưu đồ cộng hai số

Lập trình C - Khái niệm cơ bản - 09

Cấu trúc IF

Lập trình C - Khái niệm cơ bản - 10

Cấu trúc IF…ELSE

Lập trình C - Khái niệm cơ bản - 11

Cấu trúc IF lồng nhau

Lập trình C - Khái niệm cơ bản - 12

Ða điều kiện sử dụng AND/OR

Lập trình C - Khái niệm cơ bản - 13

Lập trình C - Khái niệm cơ bản - 14

Vòng lặp

Lập trình C - Khái niệm cơ bản - 15