ใบความรู้ที่ 12

Page 1

ใบความรู้ที่ 12 เครื่องหมายและการดาเนินการในภาษา C และการเขียนนิพจน์ในภาษา C


เครื่องหมายและการดาเนินการในภาษา C การดาเนิน การในการเขีย นโปรแกรมภาษา C มีอยู่ 3 ประเภท คือ การคานวณทาง คณิตศาสตร์ การดาเนินการทางตรรกศาสตร์ และการเปรียบเทียบ ซึ่งการดาเนินการแต่ละประเภทจะมี เครื่องหมายที่ต้องใช้เพื่อเขียนคาสั่งสาหรับการดาเนินการประเภทนั้น ๆ ดังรายละเอียด เครื่องหมายการคานวณทางคณิตศาสตร์ เครื่องหมายที่ใช้สาหรับการคานวณทางคณิตศาสตร์ใช้ภาษา C สรุปดังนี้ เครื่องหมาย + * / %

ความหมาย บวก ลบ คูณ หาร หารเอาเศษ

++

เพิ่มค่าขึ้น 1 โดย a++ จะนาค่าของ a ไปใช้ก่อนแล้วจึง เพิ่มค่าของ a ขึ้น 1 ++a จะเพิ่มค่าของ a ขึ้น 1 ก่อนแล้ว จึงนาค่าของ a ไปใช้

--

ลดค่า 1 โดย a-- จะนาค่าของ a ไปใช้ก่อน แล้วจึง ลดค่าของ a ลง 1 --a จะลดค่าของ a ลง 1 ก่อน แล้วจึง นาค่าของ a ไปใช้

ตัวอย่าง 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 b=a++; จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้ b=a; a=a+1; b=++a; จะมีความหมายเทียบเท่ากับ 2 บรรทัดต่อไปนี้ a=a+1; b=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 เป็นตัวสั่งงาน ดังตัวอย่าง

Z

ลาดับความสาคัญของเครื่องหมาย ส่วนใหญ่นิพจน์ที่เขียนขึ้นในโปรแกรมมักจะซับซ้อน มีการดาเนินการหลายอย่างปะปนอยู่ภายใน นิพจน์เดียวกัน ลาดับความสาคัญ 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)



Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.