เครื่องหมายและการดำเนินการในภาษา C


เครื่องหมายและการดำเนินการในภาษา C
     การดำเนินการในการเขียนโปรแกรมภาษา C มีอยู่ 3 ประเภท  คือ  การคำนวณทางคณิตศาสตร์  การดำเนินการทางตรรกศาสตร์  และการเปรียบเทียบ  ซึ่งการดำเนินการแต่ละประเภทจะมีเครื่องหมายที่ต้องใช้เพื่อเขียนคำสั่งสำหรับการดำเนินการประเภทนั้น ๆ ดังรายละเอียด
เครื่องหมายการคำนวณทางคณิตศาสตร์
     เครื่องหมายที่ใช้สำหรับการคำนวณทางคณิตศาสตร์ใช้ภาษา สรุปดังนี้
เครื่องหมาย
ความหมาย
ตัวอย่าง
+
บวก
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 ค่าจะใช้เครื่องหมาย ==
เครื่องหมาย
ความหมาย
ตัวอย่าง
> 
มากกว่า
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 เป็นตัวสั่งงาน  ดังตัวอย่าง
คำอธิบาย: http://www.lks.ac.th/kuanjit/c01.jpg
ลำดับความสำคัญของเครื่องหมาย
          ส่วนใหญ่นิพจน์ที่เขียนขึ้นในโปรแกรมมักจะซับซ้อน  มีการดำเนินการหลายอย่างปะปนอยู่ภายในนิพจน์เดียวกัน 
ลำดับความสำคัญ
ลำดับความสำคัญจากสูงไปต่ำ
1
( )
2
!,++,- -
3
*,/,%
4
+,-
5
<,<=,>,>=
6
= =,!=
7
&&
8
||
9
*=,/=,%=,+=,-=

ตัวอย่างการทำงานของโอเปอเรเตอร์
จงหาค่าของนิพจน์  8 + 7 * 6

วิธีทำ
1.  ให้สังเกตที่ตัวโอเปอเรเตอร์ก่อนเสมอว่ามีโอเปอเรเตอร์อะไรบ้าง  ในที่นี้มี + และ *
2.  ทำการไล่ลำดับความสำคัญของโอเปอเรเตอร์ทั้งหมดเปรียบเทียบกัน จากตัวที่มีลำดับความสำคัญสูงสุดไปยังตัวที่มีลำดับสำคับต่ำสุด
ลำดับความสำคัญจากสูงไปต่ำ
โอเปอเรเตอร์
*
+
3.  จากข้อ  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)

ไม่มีความคิดเห็น: