Penporn Duangkaew (Qookratai)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Lecture no. 2: Overview of C Programming
Advertisements

Overview of C Programming
อสมการเชิงเส้นตัวแปรเดียว
Array ธนวัฒน์ แซ่ เอียบ. The concept of array อาเรย์ : กลุ่มของข้อมูลที่มีชนิดเดียวกันและถูก จัดเก็บเรียงลำดับต่อเนื่องกัน ตัวแปร x สามารถจัดเก็บค่ามากกว่า.
การเขียนคำสั่งควบคุม การทำงานขั้นพื้นฐาน
การเขียนโปรแกรมคอมพิวเตอร์ Computer programming
หลักการโปรแกรม 1 Lecture 14: โปรแกรมย่อย ( การส่งพารามิเตอร์ แบบ pass by reference)
Operator of String Data Type
LAB ตัวแปร : Variables ในการเขียนโปรแกรมเราต้องการให้โปรแกรม จดจำค่าต่างๆ ไว้ เช่นเมื่อรับค่าข้อมูลจาก ผู้ใช้ หรือค่าที่ได้จากการคำนวณใดๆ ค่า.
ชนิดของข้อมูล และการคำนวณทางคณิตศาสตร์
กาญจนา ทองบุญนาค สาขาวิชาคอมพิวเตอร์ คณะวิทยาศาสตร์และเทคโนโลยี
ซอฟต์แวร์และการเลือกใช้
หน่วยที่ 6 แถวลำดับ (Array)
การใช้งาน Microsoft Excel
ตัวแปร และชนิด ข้อมูล. ตัวแปร การกำหนดตัวแปรเป็นการใช้ ชื่อตัวแปรแทน ตำแหน่งบนหน่วยความจำ สำหรับเก็บ ข้อมูลระหว่างการ ประมวลผล ซึ่งอาจเป็นข้อมูลนำเข้า.
ครั้งที่ 7 รีจิสเตอร์ (REGISTER). รีจิสเตอร์ (Register) รีจิสเตอร์เป็นวงจรความจำที่ใช้ในการเก็บค่า ทางไบนารี่ ใช้ในการเก็บค่าในระหว่างการ ประมวลผลโดยใช้ฟลิป.
MEE 231 Computer Programming สัปดาห์ที่ 6 ภาษา C หลักการของโปรแกรม ชนิดของตัวแปร การดำเนินการ คำสั่งการรับค่าตัวแปร และการแสดงผล.
ARRAY & PRINTF สาขางานคอมพิวเตอร์ธุรกิจอาจารย์จิรา ภรณ์ เขตกุฎี
Intro Excel 2010 ข้อมูลจาก... ellession1.htm.
การใช้งาน Microsoft Word กลุ่ม 2T_PUK. โปรแกรม Microsoft Word เป็นโปรแกรมสำเร็จรูปที่เหมาะกับ งานพิมพ์ต่าง ๆ แทนเครื่องพิมพ์ดีดในสมัยก่อน ที่เวลาแก้ไข.
การพัฒนาบทเรียนคอมพิวเตอร์ช่วยสอน เรื่อง หลักการทำงานของคอมพิวเตอร์ วิชาคอมพิวเตอร์พื้นฐาน สำหรับนักเรียนชั้นมัธยมศึกษาปีที่ 1 โรงเรียนเฉลิมราชประชาอุทิศ.
LOGO ภาษาซี 1.1 อ. กฤติเดช จินดาภัทร์. LOGO ตัวอย่างโค้ดภาษาซี
ตอนที่ 2 โครงสร้างภาษา C Arduino เบื้องต้น
คำสั่งควบคุมการทำงาน
เกม คณิตคิดเร็ว.
โครงสร้างโปรแกรมภาษา C
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
ข้อมูลและการดำเนินการกับข้อมูล
บทที่ 5 อินพุตและเอาต์พุต
โปรแกรมย่อย อาจารย์สมเกียรติ ช่อเหมือน
ครูวีรธรรม เทศประสิทธิ์ แผนกวิชาคอมพิวเตอร์ธุรกิจ
การประยุกต์ Logic Gates ภาค 2
Principles of Problem Solving and Basic Programming หลักการแก้ปัญหาและการเขียนโปรแกรมเบื้องต้น2(1-2-3) สัปดาห์ที่ 4 เครื่องหมาย ตรรกะศาสตร์ และการดำเนินการทางตรรกะศาสตร์
บทที่ 1 สถาปัตยกรรมของระบบฐานข้อมูล (Database Architecture)
บริษัท พัฒนาวิชาการ (2535) จำกัด
STACK สแตก(stack) เป็นโครงสร้างข้อมูลแบบเชิงเส้น ที่มีการใส่ข้อมูลเข้า และนำข้อมูลออกเพียงด้านเดียว ดังนั้น ข้อมูลที่เข้าไปอยู่ใน stack ก่อนจะออกจาก stack.
ตัวแปรและชนิดของข้อมูล
BC320 Introduction to Computer Programming
โครงสร้างภาษา C Arduino
บทที่ 1 ความรู้ทั่วไปเกี่ยวกับคอมพิวเตอร์
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop)
ตัวแปรกับชนิดของข้อมูล
กรณีศึกษา : นักเรียน ระดับ ปวช.2 สาขาวิชาการบัญชี
ขั้นตอนการออกแบบ ผังงาน (Flow Chart)
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
การสร้างโมเดลจำลองความสัมพันธ์ ระหว่างข้อมูล E-R Model
Data storage II Introduction to Computer Science ( )
บริษัท พัฒนาวิชาการ (2535) จำกัด
บทที่ 9 การทำซ้ำ (Loop).
การเขียนภาษาจาวาเบื้องต้น
Week 5 C Programming.
อาจารย์อภิพงศ์ ปิงยศ Lab 06 : Microsoft Excel (Part2) ทท101 เทคโนโลยีสารสนเทศและนวัตกรรมการสื่อสารทางการท่องเที่ยว อาจารย์อภิพงศ์
ผู้ช่วยศาสตราจารย์จุฑาวุฒิ จันทรมาลี
การสร้างแบบสอบถาม และ การกำหนดเงื่อนไข.
Data storage II Introduction to Computer Science ( )
หน่วยการเรียนรู้ การเขียนโปรแกรมภาษาขั้นพื้นฐาน เรื่อง โครงสร้างพื้นฐาน HTML 5 รหัส รายวิชา ง23102 การงานอาชีพและเทคโนโลยี 6 กลุ่มสาระ การงานอาชีพและเทคโนโลยี
หน่วยที่ 6 อะเรย์ของอักขระ
บทที่ 7 การประมวลผลอาร์เรย์
OPERATOR ภาษาปาสคาล (Pascal)
2 โครงสร้างข้อมูลแบบสแตก (STACK).
กิจกรรมที่ 7 นายปรีชา ขอวางกลาง
บทที่ 2 โครงสร้างข้อมูลแบบแถวลำดับหรืออาร์เรย์ (Array)
Chapter 3 : Array.
Array: One Dimension Programming I 9.
ฟังก์ชันของโปรแกรม Computer Game Programming
การประเมินผลโครงการ บทที่ 9 ผศ.ญาลดา พรประเสริฐ yalada.
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
Decision: Single and Double Selection (if and if-else statement)
พอยเตอร์ #include <stdio.h> void main() { int age; int *pointer;
Computer Game Programming
ใบสำเนางานนำเสนอ:

Penporn Duangkaew (Qookratai) C Pragramming ทบทวนภาษาซี ให้นักเรียนดาวน์โหลดและศึกษาเอกสารดังกล่าวแล้วเขียนโปรแกรม 6 โปรแกรมเริ่มสไลด์ที่ 37-43 ให้ลอก Code ของโปรแกรมลงสมุด พร้อมบันทึกผลลัพธ์ที่ได้ลงสมุด กราบเรียนท่านอาจารย์ และสวัสดีเพื่อนๆ Penporn Duangkaew (Qookratai) Faculty of Informatics

ประวัติความเป็นมา ภาษา BCPL Basic Combined Programming Language บนเครื่อง PDP-7 (UNIX) พ.ศ. 2513 พ.ศ. 2515 โดย เดนนิช ริทชี่ Faculty of Informatics

ภาษาซี (C Language) คุณสมบัติ เป็นภาษาระดับสูง ไม่ขึ้นกับระบบปฏิบัติการ (OS) ไม่ขึ้นกับชนิดของเครื่องคอมพิวเตอร์ เป็นภาษาโครงสร้าง (Structure Language) กราบเรียนท่านอาจารย์ และสวัสดีเพื่อนๆ Faculty of Informatics

โครงสร้างของโปรแกรมภาษาซี โครงสร้างประกอบด้วย ส่วนประมวลผลก่อน ส่วนประกาศส่วนกลาง ส่วนของฟังก์ชัน ส่วนต้นแบบฟังก์ชัน 1. ส่วนประมวลผลก่อน 2. ส่วนประกาศส่วนกลาง 3. ส่วนต้นแบบฟังก์ชั่น 4. ส่วนของฟังก์ชั่น กราบเรียนท่านอาจารย์ และสวัสดีเพื่อนๆ Faculty of Informatics

ส่วนประมวลผลก่อน # include <stdio.h> # define START 0 ส่วนที่ 1 เป็นส่วนที่ระบุให้ซีคอมไพเลอร์เตรียมการทำงานที่ กำหนดในส่วนนี้ไว้ โดยหน้าคำสั่งจะมีเครื่องหมาย # เช่น เป็นการระบุให้นำไฟล์ stdio.h มารวมกับไฟล์นี้ เพื่อที่จะสามารถใช้คำสั่งที่อยู่ในไฟล์นี้มาใช้งานได้ หรือ เป็นการกำหนดค่าคงที่ให้กับตัวแปร START โดยให้มีค่าเป็น 0 เป็นการกำหนดให้ตัวแปร temp มีค่าเท่ากับ 37 # include <stdio.h> # define START 0 # define temp 37 Faculty of Informatics

ส่วนประกาศส่วนกลาง int stdno; float score; ส่วนที่ 2 declaration เป็นการกำหนดชนิดข้อมูลที่จะใช้ใน โปรแกรมซึ่งตัวแปรหรือข้อมูลต่าง ๆ นั้นจะต้องถูกประกาศ ในส่วนนี้ก่อน จึงจะสามารถนำไปใช้ในโปรแกรมได้ เช่น เป็นการกำหนดว่าตัวแปร stdno เป็นข้อมูลชนิดจำนวนเต็ม หรือ interger ซึ่งอาจได้แก่ค่า 0,4,-1,-3,…. เป็นต้น เป็นการกำหนดว่าตัวแปร score เป็นข้อมูลชนิดเลขมีจุด ทศนิยม (floating point)ซึ่งอาจมีค่า 0.23, 1.34 เป็นต้น int stdno; float score; Faculty of Informatics

ส่วนประกาศต้นแบบฟังก์ชั่น ส่วนที่ 3 เป็นส่วนที่ใช้กำหนดว่ามีฟังก์ชั่นอะไรบ้าง และมีการประกาศพารามิเตอร์อย่างไร เช่น เป็นการประกาศฟังก์ชั่นต้นแบบสำหรับพังก์ชั่นชื่อ main โดยมีค่าที่ส่งกลับเป็นชนิด interger และไม่มีการส่งค่าเข้าไปในฟังก์ชั่นนี้ int main ( void ); Faculty of Informatics

ส่วนประกาศฟังก์ชั่น int main ( void ) { printf ( “Hello World \n” ); ส่วนที่ 4 เป็นส่วนที่ใช้กำหนดรายละเอียดของแต่ละฟังก์ชั่น ว่ามีลักษณะการทำงานเป็นอย่างไรบ้าง รับค่าใดเข้าไปในฟังก์ชั่นบ้าง และส่งค่ากลับเป็นอะไร เช่น เป็นการประกาศฟังก์ชั่นชื่อ main ตามฟังก์ชั่นต้นแบบ สำหรับพังก์ชั่น main นี้ไม่มีการรับค่าเข้าในฟังก์ชั่น แต่เมื่อทำงานเสร็จแล้วจะส่งค่ากลับมาเป็น 0 int main ( void ) { printf ( “Hello World \n” ); return (0); } Faculty of Informatics

กฎเกณฑ์ของโปรแกรมภาษาซี กฎเกณฑ์ (Rules) ประกอบด้วยส่วนย่อย ๆ โดยใช้ปีกกา ({ }) เป็นตัวกำหนดขอบเขต ฟังก์ชั่นแรกต้องเป็น main() เสมอ ใช้เครื่องหมาย ; (semi colon) เป็นตัวกำหนดการ สิ้นสุดของคำสั่ง ใช้อักษรตัวเล็กในการเขียนโปรแกรม ใช้เครื่องหมาย , (comma) เป็นตัวคั่นตัวแปรและ พารามิเตอร์ ใช้เครื่องหมาย /* */ เป็นการกำหนดข้อความ ที่ไม่ ต้องการให้คอมไพเลอร์ปฏิบัติงาน กราบเรียนท่านอาจารย์ และสวัสดีเพื่อนๆ Faculty of Informatics

# include <stdio.h> int main ( void ) { ตัวอย่างโปรแกรม # include <stdio.h> int main ( void ) { printf(“Hello, Good morning. \n”); return ( 0 ); } เป็นโปรแกรมสั่งพิมพ์ข้อความ Hello, Good morning. Faculty of Informatics

ชนิดและแบบของข้อมูลในภาษาซี แบบข้อมูลหรือชนิดของตัวแปรต่าง ๆ ที่กำหนดไว้ในภาษาซีประกอบด้วย char ชนิดของตัวอักษรหรืออักขระ int ชนิดจำนวนเต็มปกติ short ชนิดจำนวนเต็มปกติ long ชนิดจำนวนเต็มที่มีความยาวเป็น 2 เท่า unsigned ชนิดของเลขที่ไม่คิดเครื่องหมาย float ชนิดเลขมีจุดทศนิยม double ชนิดเลขที่มีจุดทศนิยมความยาว เป็น 2 เท่า Faculty of Informatics

ตารางแสดงเนื้อที่ในหน่วยความจำของชนิดข้อมูล Faculty of Informatics

ชนิดและแบบของข้อมูลในภาษาซี ในการเขียนโปรแกรม แบบข้อมูลที่ใช้จะแบ่งออกเป็น 4 กลุ่มใหญ่ ๆ ดังนี้ ข้อมูลและตัวแปรชนิดอักขระ ข้อมูลและตัวแปรชนิดจำนวนเต็ม ข้อมูลและตัวแปรชนิดเลขมีจุดทศนิยม ข้อมูลและตัวแปรแบบสตริง Faculty of Informatics

ชนิดข้อมูลชนิดอักขระ อักขระแทนด้วย char โดยอยู่ภายในเครื่องหมาย ‘ ’ เช่น ‘a’ , ‘A’ , ‘9’ อักขระพิเศษบางตัวไม่สามารถให้ค่าได้โดยตรง แต่ จะให้ค่าเป็นรหัส ASCII ซึ่งจะเขียนในรูปของเลข ฐานแปด เช่น รหัส BELL แทนด้วย ASCII 007 เขียนแทนด้วย BELL=‘\007’ หรือรหัสควบคุมการ ขึ้นบรรทัดใหม่ ตัวอักขระที่กำหนดให้กับรหัส คือ n สามารถกำหนดเป็น newline = ‘\n’; Faculty of Informatics

ชนิดข้อมูลของเลขจำนวนเต็ม จำนวนเต็มในภาษาซีสามารถใช้แทนได้ 4 รูปแบบ คือ int, short, long และ unsigned การกำหนดตัวแปรแบบ unsigned คือจำนวนเต็ม ที่ไม่คิดเครื่องหมาย ซึ่งจะต้องใช้ควบคู่กับรูปแบบ ข้อมูลจำนวนเต็มชนิดอื่น คือ int , short หรือ long เช่น unsigned int unsigned short Faculty of Informatics

ชนิดข้อมูลของเลขมีจุดทศนิยม การกำหนดขนิดข้อมูลเลขจุดทศนิยมสามารถ กำหนดได้ 2 แบบ คือ float , double โดย double เก็บค่าได้เป็น 2 เท่าของ float ตัวเลข แบบนี้นิยมใช้กับงานทางวิทยาศาสตร์ที่ต้องการ ความละเอียดในการเก็บค่า การเก็บข้อมูลในรูปแบบนี้ คือเก็บแบบเอ็กโพเนนซ์ ดังตัวอย่างต่อไปนี้ ตัวเลข แสดงแบบวิทยาศาสตร์ แบบเอ็กโพเนนซ์ 9,000,000,000 9.0*109 9.0e9 345,000 3.45*105 3.45e5 0.00063 6.3*10-4 6.3e-4 0.00000924 9.24*10-6 9.24e-6 Faculty of Informatics

ชนิดข้อมูลแบบสตริง สตริงหมายถึงการนำตัวอักขระหลายตัวมาประกอบ กันเป็นข้อความ จะเรียกว่า array หรือแถวลำดับของตัวอักขระ นั่นเอง ในการใช้งานชนิดข้อมูลแบบสตริงนั้นอักขระตัว สุดท้ายจะเก็บรหัส null คือ \0 หมายถึงจุดจบของ ข้อความ เช่น H e l o \0 1 2 3 4 5 6 Faculty of Informatics

การประกาศตัวแปรในภาษาซี การประกาศตัวแปร คือ การจองเนื้อที่ในหน่วยความจำและตั้งชื่อไว้ เพื่อเรียกใช้งานในขณะปฏิบัติงาน การตั้งชื่อตัวแปร มีหลักการดังนี้ 1. ต้องขึ้นต้นด้วยตัวอักษร 2. ห้ามใช้เครื่องหมายทางคณิตศาสตร์ในชื่อ ตัวแปร 3. สามารถใช้เครื่องหมาย underline ‘_’ ได้ 4. ห้ามใช้อักขระพิเศษเหล่านี้ คือ !@#$%^&*()- 5. ห้ามตั้งชื่อซ้ำกับคำสงวน (Reserved Word) Faculty of Informatics

คำสงวนในภาษาซี คำสงวนได้แก่ auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while Faculty of Informatics

การประกาศตัวแปรในภาษาซี การประกาศชื่อตัวแปรในภาษาซีสามารถทำได้ดังนี้ <ชนิดข้อมูล> <ชื่อตัวแปร>; ตัวอย่างเช่น char ch; double height; int num; unsigned int a; float width; long int b; Faculty of Informatics

การเขียนประโยคคำสั่ง การเขียนประโยคคำสั่งในภาษาซี แต่ละคำสั่งจะ ประกอบด้วย ตัวระบุ (Identifier) คำสงวน ตัวแปร ชื่อฟังก์ชั่น และตัวดำเนินการ (operator) ต่าง ๆ แต่ละคำสั่งจบลงด้วยเครื่องหมายอัฒภาค (;) เช่น printf ( “Hello” ); printf ( “ C \n” ); อาจเขียนในบรรทัดเดียวกันก็ได้ เช่น printf ( “Hello” );printf ( “ C \n” ); ทั้งสองแบบให้ผลลัพธ์เหมือนกัน Faculty of Informatics

การแสดงผลลัพธ์ในภาษาซี การแสดงผลลัพธ์ในภาษาซีจะใช้ฟังก์ชั่น printf โดยที่ฟังก์ชั่น printf มีรูปแบบดังนี้ ส่วนควบคุมการพิมพ์ จะเป็นข้อความและรูปแบบ ของการพิมพ์โดยอยู่ในเครื่องหมาย “ ” อาร์กิวเมนต์ เป็นส่วนที่จะนำข้อมูลมาพิมพ์ ตามรูปแบบที่กำหนดมาในส่วนควบคุมการพิมพ์ printf( ส่วนควบคุมการพิมพ์, อาร์กิวเมนต์, …) Faculty of Informatics

รูปแบบที่ใช้กำหนดการพิมพ์ใน printf รูปแบบการพิมพ์สำหรับตัวเลขมีดังนี้ %d พิมพ์ข้อมูลจำนวนเต็มด้วยเลขฐานสิบ %o พิมพ์ข้อมูลด้วยเลขฐานแปด %x พิมพ์ข้อมูลด้วยเลขฐานสิบหก %u พิมพ์ข้อมูลด้วยเลขฐานสิบแบบไม่คิด เครื่องหมาย %e พิมพ์ข้อมูลด้วยตัวเลขแบบวิทยาศาสตร์ เช่น 2.13e45 %f พิมพ์ข้อมูลด้วยตัวเลขมีจุดทศนิยม %g พิมพ์ข้อมูลด้วยรูปแบบ %e หรือ %f โดยเลือกแบบที่สั้นที่สุด Faculty of Informatics

รูปแบบที่ใช้กำหนดการพิมพ์ใน printf รูปแบบการพิมพ์สำหรับสตริงมีดังนี้ %c พิมพ์ด้วยตัวอักษรตัวเดียว %s พิมพ์ด้วยข้อความ ตัวอย่างการคำสั่ง printf เช่น printf ( “%d %f %s“ , 20 , 25.5 , “Hello” ); คู่ที่ 1 คู่ที่ 2 คู่ที่ 3 Faculty of Informatics

เครื่องหมายปรับเปลี่ยนรูปแบบข้อมูล เครื่องหมายสำหรับปรับเปลี่ยนรูปแบบของข้อมูล ในการแสดงผล เครื่องหมายลบ ให้พิมพ์ข้อมูลชิดขอบซ้าย (ปกติข้อมูลทั้งหมดจะพิมพ์ชิดขวา) สตริงตัวเลข ระบุความกว้างของฟิลด์ จุดทศนิยม เป็นการกำหนดความกว้างของ จุดทศนิยม ตัวอย่างการใช้เครื่องหมายปรับเปลี่ยนรูปแบบของ การแสดงผล printf ( “%3d %-6.0f “ , 20 , 25.5 ); Faculty of Informatics

การรับข้อมูลเข้าในภาษาซี การรับข้อมูลเข้ามาใช้งานในภาษาซีจะใช้ฟังก์ชั่น scanf รูปแบบของฟังก์ชั่น scanf ( ) มีดังนี้ ส่วนควบคุมข้อมูล เป็นการกำหนดรูปแบบ ข้อมูลในเครื่องหมาย “ ” อาร์กิวเมนต์ เป็นส่วนที่จะนำข้อมูลมาเก็บ (ในตัวแปร) ซึ่งชนิดของข้อมูลต้องตรงตาม รูปแบบที่กำหนดในส่วนควบคุมข้อมูล scanf( ส่วนควบคุมข้อมูล, อาร์กิวเมนต์,...) Faculty of Informatics

การรับข้อมูลเข้าในภาษาซี การกำหนดลักษณะอาร์กิวเมนต์มีได้ 2 แบบดังนี้ ถ้าข้อมูลนั้นอาจจะนำไปใช้ในการคำนวณ จะใส่เครื่องหมาย & หน้าตัวแปร ถ้าข้อมูลนั้นเป็นข้อความที่จะนำไปเก็บไว้ในตัว แปรเลยไม่จำเป็นต้องใส่เครื่องหมาย & หน้า ตัวแปร ตัวอย่างการใช้ฟังก์ชั่น scanf scanf ( “%d “,&num); scanf ( “%s “,str); Faculty of Informatics

การเปลี่ยนชนิดของข้อมูล ทำได้โดยระบุชนิดที่ต้องการเปลี่ยนภายใน เครื่องหมาย ( ) แล้ววางหน้าตัวแปรหรือข้อมูล ที่ต้องการเปลี่ยนแปลงชนิด ตัวอย่าง ถ้าในโปรแกรมภาษาซีมีการประกาศ ตัวแปรเป็น ต้องการเปลี่ยนตัวแปร float ไปเป็น integer ทำได้ดังนี้ float money; (int) money; Faculty of Informatics

เครื่องหมายที่ใช้คำนวณในภาษาซี เครื่องหมายที่ใช้คำนวณในภาษาซีเรียกว่า ตัวดำเนินการ (Operator) มีดังนี้ ตัวดำเนินการ ความหมาย ตัวอย่าง ผลลัพธ์ + การบวก 6 + 8 14 - การลบ 7 – 5 2 * การคูณ 3 * 4 12 / การหาร 8/2 4 ลบ (ยูนารีเครื่องหมายลบ) -5 % โมดูลัส (หาเศษเหลือจากการหาร) 7 % 2 1 4 % 2 Faculty of Informatics

เครื่องหมายเปรียบเทียบ สัญลักษณ์ ความหมาย > มากกว่า < น้อยกว่า >= มากกว่าหรือเท่ากับ <= น้อยกว่าหรือเท่ากับ == เท่ากับ != ไม่เท่ากับ Faculty of Informatics

นิพจน์กำหนดค่า นิพจน์กำหนดค่า (Assignment expression) เครื่องหมายที่ใช้กำหนดค่าคือ = โดยเป็นการ กำหนดค่าทางขวาของเครื่องหมาย ให้กับตัวแปร ที่อยู่ทางซ้าย เช่น j = 7+2; หรือ k = k + 4; Faculty of Informatics

นิพจน์กำหนดค่า ความแตกต่างของเครื่องหมาย = และ == เครื่องหมาย = เป็นตัวกำหนดค่า เครื่องหมาย == เป็นเครื่องหมายเปรียบเทียบ ตัวอย่างเช่น หมายถึง เป็นการกำหนดค่าให้กับตัวแปร point ให้มีค่าเท่ากับ 44 หมายถึง เป็นการตรวจสอบว่าค่า point มีค่าเท่ากับ 44 หรือไม่ point = 44; point == 44; Faculty of Informatics

เครื่องหมายและนิพจน์แบบตรรกศาสตร์ เครื่องหมายและนิพจน์เปรียบเทียบแบบ ตรรกศาสตร์ && หมายถึง และ (and) | | หมายถึง หรือ (or) ! หมายถึง ไม่ (not) ตัวอย่างเช่น จะได้ค่าความจริงเป็นจริงก็ต่อเมื่อ a และ b เป็นจริงทั้งคู่ จะได้ค่าความจริงเป็นเท็จก็ต่อเมื่อ a และ b เป็นเท็จทั้งคู่ a && b a || b Faculty of Informatics

ลำดับการประมวลผลนิพจน์พีชคณิต ลำดับของการประมวลผลนิพจน์ทางพีชคณิตยึด หลักการตามตารางต่อไปนี้ ลำดับ ตัวดำเนินการ การใช้ ทิศทางการประมวลผล 1 ( ) วงเล็บ ซ้ายไปขวา 2 - เครื่องหมายลบ 3 ++ , -- การเพิ่มค่า , การลดค่า ขวาไปซ้าย 4 * , / , % การคูณ , การหาร , โมดูลัส 5 + , - การบวก , การลบ 6 = , += , *= , /= , %= การกำหนดค่า Faculty of Informatics

ลำดับการประมวลผลนิพจน์พีชคณิต หากมีนิพจน์ 4.5 * 2.0 + 4.0 * 5.0 มีลำดับการประมวลผลดังนี้ 4.5 * 2.0 + 4.0 * 5.0 1 9.0 + 4.0 * 5.0 2 9.0 + 20.0 3 Faculty of Informatics

การเพิ่มค่าและลดค่าตัวแปร สามารถใช้เครื่องหมายต่อไปนี้แทนการเพิ่มหรือ ลดค่าของตัวแปร ++ เป็นการเพิ่มค่าให้กับตัวแปรทีละ 1 -- เป็นการลดค่าตัวแปรทีละ 1 ตัวอย่างเช่น ++n เป็นการเพิ่มค่า n อีก 1 --n เป็นการลดค่า n ลง 1 ความแตกต่างระหว่าง n++ และ ++n เช่น n = 5; x = n++; จะได้ค่า x เท่ากับ 5 แล้วค่า n เท่ากับ 6 แต่ถ้า x = ++n; จะได้ค่า x เท่ากับ 6 Faculty of Informatics

โปรแกรม1 #include <stdio.h> #include <stdlib.h> #include <limits.h> int main ( void ) { printf ("Size of int = %d \n",sizeof(int)); printf ("Size of float = %d \n",sizeof(float)); printf ("Size of char = %d \n",sizeof(char)); printf ("MAX integer = %d \n",INT_MAX); printf ("MIN integer = %d \n",INT_MIN); printf ("LONG integer max = %ld \n",LONG_MAX); return (0); } Faculty of Informatics

โปรแกรม2 #include <stdio.h> #include <stdlib.h> int main ( void ) { int a=10; int b,c,d; int res; b=5; c=6; d=12; res = b*c+d/c; printf ("res = %d \n",res); return (0); } Faculty of Informatics

โปรแกรม 3 #include <stdio.h> #include <stdlib.h> #define APPLE 5 #define ORANGE 10 #define RES APPLE*ORANGE int main ( void ) { printf ("Value of APPLE = %d \n",APPLE); printf ("Value of ORANGE = %d \n",ORANGE); printf ("Value of RES = %d \n",RES); return (0); } Faculty of Informatics

โปรแกรม 4 #include <stdio.h> #include <stdlib.h> int main ( void ) { int num1,num2,res; scanf ("%d",&num1); scanf ("%d",&num2); res = num1 + num2; printf ("Res = %d \n",res); res = num1 * num2; printf ("Res = %d \n",res); res = num1/num2; printf ("Res = %d \n",res); res = num1%num2; printf ("Res = %d \n",res); return (0); } Faculty of Informatics

โปรแกรม 5 #include <stdio.h> #include <stdlib.h> int main ( void ) { int a = 3 , b = 7 , c = 6 , d = 8; int res1; float res2; res1 = a+b/c*d; res2 = a+b/c*d; printf ("Res1 = %d \n",res1); printf ("Res2 = %f \n",res2); ++a; ++b; c--; --d; res1 = a+b*c+d; res2 = a-d/b+c; return (0); } Faculty of Informatics

โปรแกรม 5 #include <stdio.h> #include <stdlib.h> int main ( void ) { int a = 3 , b = 7 , c = 6 , d = 8; int res1; float res2; res1 = a+b/c*d; res2 = a+b/c*d; printf ("Res1 = %d \n",res1); printf ("Res2 = %f \n",res2); ++a; ++b; c--; --d; res1 = a+b*c+d; res2 = a-d/b+c; return (0); } Faculty of Informatics

โปรแกรม 6 #include <stdio.h> #include <stdlib.h> int main ( void ) { int num1; float num2 , num3 , res; printf ("Enter num1 , num2 , num3 : "); scanf ("%d %f %f",&num1,&num2,&num3); res = (num3/num2) + num1; printf ("Res = %0.3f \n",res); return (0); } Faculty of Informatics

END Department of Computer Science