Nhận làm đồ án VĐK các loại ( 8051, AVR, PIC) Tư vấn - Hướng dẫn - lập trình

Thứ Năm, 19 tháng 3, 2015

Biểu thức toán tử Ngôn ngữ C

GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH C

Chào các bạn, chúng ta lại cùng nhau tiếp tục loạt bài 2 với ngôn ngữ lập trình C. Trong bài 2 này chúng ta sẽ cùng tìm hiểu về biểu thứctoán tử trong C. Ý nghĩa và cơ chế hoạt động của từng loại.
III. Biểu thức trong C
Là sự kết hợp giữa toán hạng và phép toán trong C để diễn đạt 1 công thức toán học nào đó.
v Toán hạng ở đây là : Hằng, biến, mảng, hàm, …
v Phép toán ở đây có 4 loại chính :
·        Phép toán số học
·        Phép toán thao tác bít
·        Phép toán quan hệ, phép toán logic
·        Phép tăng, giảm, gán, rút gọn
Chú ý : Một biểu thức thì sẽ có một giá trị nói chung và cái gì có giá trị đều được xem là biểu thức. Như vậy hằng, biến, phần tử mảng và hàm cũng được xem là biểu thức …
Sau đây chúng ta sẽ đi vào tìm hiểu các biểu thức trong C
3.1. Phép toán số học :
+   –  *  /  %

Biểu thức dùng trong trường hợp này tính được ra kết quả là giá trị số


3.2. Phép toán thao tác bít :
&(and),  | (or),  ^ (xor),  ~ (đảo), >>(shift right),  << (shift left)
Tác động lên các bít của toán hạng. Cho phép xử lí từng bít của số nguyên.
Ta có bảng chân lí :


Ví dụ :


3.3. Phép toán quan hệ và phép toán logic
Hai phép toán này sẽ cho ta giá trị đúng hoặc sai (True or False) đúng là 1 và sai là 0
3.3.1. Phép toán quan hệ
·        >       Lớn hơn
·        >=    Lớn hơn hoặc bằng
·        <       Nhỏ hơn
·        <=    Nhỏ hơn hoặc bằng
·        ==      Có bằng nhau không
·        !=       Có khác nhau không
Chú ý : Thứ tự ưu tiên từ trên xuống của các phép quan hệ.
VD : 3>7    => giá trị logic là false (sai) => giá trị nguyên trong C là 0.
         8>=8  => giá trị logic là true (đúng) => giá trị nguyên trong C là 1.
3.3.2. Phép toán logic :
&&  (and),  ||  (or),  !  (not)
Ta có bảng chân lí :


VD :

v Chú ý :
·        Phép toán quan hệ và logic thường được sử dụng để thiết lập điều kiện rẽ nhánh If và kết thúc chu trình trong toán tử For, while hay do – while.
·        Ta có bảng mức độ ưu tiên thực hiện của các phép toán



Thứ tự ưu tiên phép toán được thực hiện từ trên xuống. Với nhứng phép toán ngang bằng thì thứ tự thực hiện theo chiều mũi tên có thể là từ trong ra ngoài hoặc từ ngoài vào trong.

3.4. Phép tăng, giảm, gán, rút gọn …
·        Phép tăng : ++n , n++;
·        Phép giảm : --n, n--;
·        Phép gán : =;
·        Phép rút gọn hay còn gọi là phép gộp : += ; -= ; *=; &=, |=; ^=; ~=; >>=; <<=;

Như vậy chúng ta đã đi xong phần biểu thức với các phép toán chính trong C. Tiếp theo ta sẽ cùng nhau tìm hiểu về một số toán tử thông dụng không thể thiếu trong các chương trình lập trình C.
IV. Toán tử điều khiển trong C
v Nhảy không điều kiện
v Rẽ nhánh : If, switch, …
v Tổ chức chu trình : For, while, do – while …
v Một số toán tử bổ trợ : break, continue …
4.1. Toán tử If
Thuộc loại rẽ nhánh có 2 dạng với toán tử If, ta có sơ đồ biểu diễn chi tiết cách thức hoạt động của 2 dạng này :
·        Dạng 1 :Chỉ dùng If


·        Dạng 2 : Dùng If – else




v Chú ý :
·        Toán tửIfIf – elselà một câu lệnh đơn
·        If có thể lồng nhau và else sẽ tương ứng với If gần nó nhất
·        Nên dùng else để loại trừ trường hợp
4.2. Toán tử switch
Cũng thuộc loại rẽ nhánh và có thể xét nhiều trường hợp. Cũng tương tự như If, switchcũng có 2 dạng :
v Dạng 1 : Không có lệnh default

v Dạng 2 : Có lệnh default

v Một số chú ý với toán tửswitch
·        Toán tử switch là một câu lệnh đơn và có thể được lồng với nhau
·        Các giá trị trong mỗi trường hợp case phải khác nhau
·        Switch sẽ nhảy đến case tương ứng và thực hiện cho đến khi nào gặp break hoặc cuối switch sẽ kết thúc.
4.3. Toán tử FOR


Từ sơ đồ trên ta dễ dàng thấy được cách thức hoạt động của vòng lặp FOR
v Chú ý :
·        Toán tử For cũng là một câu lệnh đơn và có thể lồng nhau
·        Nếu không có điều kiện lặp thì vòng lặp For luôn xem nó là đúng, do đó muốn thoát khỏi vòng lặp For phải dùng Break, goto, return … viết trong thân chu trình.
·        Vòng lặp For cũng có thể không có cả phần khởi đầu.
·        Không được thêm ; ngay sau lệnh For nếu chưa hiểu cách sử dụng. Việc thêm như vậy tương đương câu lệnh rỗng.
·        Nếu có nhiều thành phần trong mỗi phần ( khởi đầu, Đ/K lặp, Bước nhảy) thì được cách nhau bằng dấu ,
4.4. Toán tử while

v Chú ý :
·        Toán tửwhile là một câu lệnh đơn và có thể lồng nhau
·        Toán tử while có thể không thực hiện lần nào do điều kiện lặp ngay từ đầu đã không thỏa mãn
·        Thêm ; sau lệnh while() tương đương với lệnh rỗng, dù điều kiện có đúng hay không
·        While có thể bị lặp vô tận
4.5. Toán tử do – while

v Chú ý :
·        Toán tử do – while là một câu lệnh đơn và có thể lồng nhau
·        Toán tử do – while sẽ được thực hiện ít nhất 1 lần do điều kiện lặp được kiểm tra ở cuối
·        Toán tử do – while có thể bị lặp vô tận.
4.6. Một số toán tử bổ trợ
v Lệnh break dùng để thoát khỏi chu trình
v Continue dùng để bắt đầu 1 vòng mới của chu trình bên trong nhất chứa nó
v Goto : goto  nhãn ; Khi gặp toán tử này máy sẽ nhảy tới câu lệnh có nhãn viết sau từ khóa goto, chú ý : gotonhãn cần nằm trong 1 hàm. Trong một hàm cho phép goto nhảy từ ngoài vào trong 1 khối lệnh nhưng điều ngược lại không hợp lệ.
Như vậy chúng ta vừa trải qua bài viết số 2 với nội dung về biểu thức và toán tử trong C. Trong bài 3 tiếp theo, tôi sẽ giới thiệu đến các bạn Con trỏ và mảng trong C. Cám ơn các bạn đã đón xem!
Mọi ý kiến thắc mắc các bạn có thể gửi qua địa chỉ gmail, hoặc số điện thoại cung cấp từ trang chủ của Blog hoặc comment trực tiếp phía dưới.

Nếu copy bài mong bạn đọc để lại nguồn, xin cảm ơn !





Next previous home

0 nhận xét:

Đăng nhận xét