เครื่องหมายและการดำเนินการในภาษา C
การดำเนินการในการเขียนโปรแกรมภาษา C มีอยู่ 3 ประเภท คือ การคำนวณทางคณิตศาสตร์ การดำเนินการทางตรรกศาสตร์ และการเปรียบเทียบ ซึ่งการดำเนินการแต่ละประเภทจะมีเครื่องหมายที่ต้องใช้เพื่อเขียนคำสั่ง สำหรับการดำเนินการประเภทนั้น ๆ ดังรายละเอียด
เครื่องหมายการคำนวณทางคณิตศาสตร์
เครื่องหมายที่ใช้สำหรับการคำนวณทางคณิตศาสตร์ใช้ภาษา C สรุปดังนี้
เครื่องหมาย | ความหมาย | ตัวอย่าง |
+ | บวก | 3+2 การบวกเลข 3 บวกกับ 2 ได้ผลลัพธ์คือ 5 |
- | ลบ | 3 - 2 การลบเลข 3 ลบกับ 2 ได้ผลลัพธ์คือ 1 |
* | คูณ | 2*3 การคูณเลข 3 บวกกับ 2 ได้ผลลัพธ์คือ 6 |
/ | หาร | 15/2 การหาร 15 หารกับ 2 ได้ผลลัพธ์คือ 7 |
% | หารเอาเศษ | 15%2การหารเอาเศษ 15 หารกับ 2 ได้ผลลัพธ์คือ 1 |
++ | เพิ่มค่าขึ้น 1 โดย a++ จะนำค่าของ a ไปใช้ก่อนแล้วจึงเพิ่มค่าของ a ขึ้น 1 ++a จะเพิ่มค่าของ a ขึ้น 1 ก่อนแล้วจึงนำค่าของ a ไปใช้ | b=a++; จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้ b=a; a=a+1; b=++a; จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้ a=a+1; b=a; |
-- | ลดค่า 1 โดย a-- จะนำค่าของ a ไปใช้ก่อน แล้วจึงลดค่าของ a ลง 1 --a จะลดค่าของ a ลง 1 ก่อน แล้วจึงนำค่าของ a ไปใช้ | ิb=a--; จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้ ิb=a; a=a-1; b=--a; จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้ a=a-1; b=a; |
ตัวดำเนินการเปรียบเทียบ
ใช้เปรียบเทียบค่า 2 ค่าเพื่อแสดงการเลือก ซึ่งโปรแกรมโดยทั่วไปใช้ในการทดสอบเงื่อนไขตามที่กำหนด
การเปรียบเทียบโดยการเท่ากันของ 2 ค่าจะใช้เครื่องหมาย ==
การเปรียบเทียบโดยการเท่ากันของ 2 ค่าจะใช้เครื่องหมาย ==
เครื่องหมาย | ความหมาย | ตัวอย่าง |
> | มากกว่า | a > b a มากกว่า b |
>== | มากกว่าหรือเท่ากับ | a >= b a มากกว่าหรือเท่ากับ b |
< | น้อยกว่า | a < b a น้อยกว่า b |
<== | น้อยกว่าหรือเท่ากับ | a <= b a น้อยกว่าหรือเท่ากับ b |
== | เท่ากับ | a == b a เท่ากับ b |
!= | ไม่เท่ากับ | a != b a ไม่เท่ากับ b |
ตัวดำเนินการตรรกะ
ความหมาย
การดำเนินการเปรียบเทียบค่าทางตรรกะ( และ หรือ ไม่)
การดำเนินการเปรียบเทียบค่าทางตรรกะ( และ หรือ ไม่)
เครื่องหมาย | ความหมาย | ตัวอย่าง |
&& | และ | x < 60 && x > 50 กำหนดให้ x มีค่าในช่วง 50 ถึง 60 |
|| | หรือ | x == 10 || x == 15 กำหนดให้ x มีค่าเท่ากับตัวเลข 2 ค่า คือ 10 หรือ 15 |
! | ไม่ | x = 10 !x กำหนดให้ x ไม่เท่ากับ 10 |
การเขียนนิพจน์ในภาษา C
นิพจน์ในภาษา C ก็คือ การนำข้อมูลและตัวแปรในภาษา C มาดำเนินการด้วยเครื่องหมายทางคณิตศาสตร์ ตรรกศาสตร์ หรือเครื่องหมายเปรียบเทียบในภาษา C เป็นตัวสั่งงาน ดังตัวอย่าง

ลำดับความสำคัญของเครื่องหมาย
ส่วนใหญ่นิพจน์ที่เขียนขึ้นในโปรแกรมมักจะซับซ้อน มีการดำเนินการหลายอย่างปะปนอยู่ภายในนิพจน์เดียวกัน
ลำดับความสำคัญ | ลำดับความสำคัญจากสูงไปต่ำ |
1 | ( ) |
2 | !,++,- - |
3 | *,/,% |
4 | +,- |
5 | <,<=,>,>= |
6 | = =,!= |
7 | && |
8 | || |
9 | *=,/=,%=,+=,-= |
ตัวอย่างการทำงานของโอเปอเรเตอร์
จงหาค่าของนิพจน์ 8 + 7 * 6
วิธีทำ
1. ให้สังเกตที่ตัวโอเปอเรเตอร์ก่อนเสมอว่ามีโอเปอเรเตอร์อะไรบ้าง ในที่นี้มี + และ *
2. ทำการไล่ลำดับความสำคัญของโอเปอเรเตอร์ทั้งหมดเปรียบเทียบกัน จากตัวที่มีลำดับความสำคัญสูงสุดไปยังตัวที่มีลำดับสำคับต่ำสุด
วิธีทำ
1. ให้สังเกตที่ตัวโอเปอเรเตอร์ก่อนเสมอว่ามีโอเปอเรเตอร์อะไรบ้าง ในที่นี้มี + และ *
2. ทำการไล่ลำดับความสำคัญของโอเปอเรเตอร์ทั้งหมดเปรียบเทียบกัน จากตัวที่มีลำดับความสำคัญสูงสุดไปยังตัวที่มีลำดับสำคับต่ำสุด
ลำดับความสำคัญจากสูงไปต่ำ | โอเปอเรเตอร์ |
* | |
+ |
ขั้นที่ 1 7 * 6 = 42
ื ขั้นที่ 2 8 + ค่าที่ได้จากขั้นที่ 1
= 8 + 42
= 50
ดังนั้น 8 + 7 * 6 = 50
จงหานิพจน์ต่อไปนี้
x*y - 20%z | |
1) | x * y |
2) | 20%z |
3) | 1) - 2) |
(a - b)*10/c && d + 5 | |
1) | a - b |
2) | 1)*10 |
3) | 2)/c |
4) | d+5 |
5) | 3) && 4) |
(a + b) * 4 = = c%d(e+10) | |
1) | a + b |
2) | e + 10 |
3) | 1) * 4 |
4) | d * 2) |
5) | c %4) |
6) | 3) = = 5) |
ไม่มีความคิดเห็น:
แสดงความคิดเห็น