โครงสร้างโปรแกรมภาษา C

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Introduction to C Introduction to C.
Advertisements

โครงสร้างโปรแกรมภาษา C
C language W.lilakiatsakun.
ตัวแปรและชนิดของข้อมูล (Variables & Data Types)
Array ธนวัฒน์ แซ่ เอียบ. The concept of array อาเรย์ : กลุ่มของข้อมูลที่มีชนิดเดียวกันและถูก จัดเก็บเรียงลำดับต่อเนื่องกัน ตัวแปร x สามารถจัดเก็บค่ามากกว่า.
เฉลยใบงานที่ 1 องค์ประกอบและหลักการทำงานของคอมพิวเตอร์
การเขียนคำสั่งควบคุม การทำงานขั้นพื้นฐาน
การเขียนโปรแกรมคอมพิวเตอร์ Computer programming
Structure Programming การเขียนโปรแกรมเชิงโครงสร้าง
Operator of String Data Type
Chapter 5 Elementary C++ Programming Dept of Computer Engineering Khon Kaen University.
LAB ตัวแปร : Variables ในการเขียนโปรแกรมเราต้องการให้โปรแกรม จดจำค่าต่างๆ ไว้ เช่นเมื่อรับค่าข้อมูลจาก ผู้ใช้ หรือค่าที่ได้จากการคำนวณใดๆ ค่า.
Chapter 10 Arrays Dept of Computer Engineering Khon Kaen University.
ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม
บทที่ 4 คำสั่งควบคุม โปรแกรม. คำสั่งควบคุมโปรแกรมออกได้เป็น 2 ประเภท คือ คำสั่งแบบกำหนดเงื่อนไข (Conditional Statement) คำสั่งแบบทำงานซ้ำ (Repetitive.
ชนิดของข้อมูล และการคำนวณทางคณิตศาสตร์
การเขียนโปรแกรมภาษาปาสคาล โดยใช้โครงสร้างหลักทั้ง 3 โครงสร้าง
กาญจนา ทองบุญนาค สาขาวิชาคอมพิวเตอร์ คณะวิทยาศาสตร์และเทคโนโลยี
หน่วยที่ 6 แถวลำดับ (Array)
องค์ประกอบของคอมพิวเตอร์
ตัวแปร และชนิด ข้อมูล. ตัวแปร การกำหนดตัวแปรเป็นการใช้ ชื่อตัวแปรแทน ตำแหน่งบนหน่วยความจำ สำหรับเก็บ ข้อมูลระหว่างการ ประมวลผล ซึ่งอาจเป็นข้อมูลนำเข้า.
MEE 231 Computer Programming สัปดาห์ที่ 6 ภาษา C หลักการของโปรแกรม ชนิดของตัวแปร การดำเนินการ คำสั่งการรับค่าตัวแปร และการแสดงผล.
ARRAY & PRINTF สาขางานคอมพิวเตอร์ธุรกิจอาจารย์จิรา ภรณ์ เขตกุฎี
เรื่อง หลักการเขียนโปรแกรม เบื้องต้น จัดทำโดย นางสาวชาดา ศักดิ์บุญญารัตน์
LOGO ภาษาซี 1.1 อ. กฤติเดช จินดาภัทร์. LOGO ตัวอย่างโค้ดภาษาซี
ตอนที่ 2 โครงสร้างภาษา C Arduino เบื้องต้น
โครงสร้างภาษาซี C ++ structure
ส่วนประกอบของคอมพิวเตอร์ (Personal Computer : PC)
เกม คณิตคิดเร็ว.
บทที่ 1 ภาษาคอมพิวเตอร์และ การโปรแกรม
โปรแกรม ภาษา C ภาษาซี (C Language) เป็นภาษาหนึ่งสำหรับเขียนโปรแกรมคอมพิวเตอร์   พัฒนาขึ้นโดยนายเดนนิส  ริทชี่ (Dennis Ritche)  ในปี ค.ศ. 1972  เพื่อสร้างระบบปฏิบัติการยูนิกซ์
หลักการโปรแกรม อ.ธนากร อุยพานิชย์.
โครงสร้างภาษาซีเบื้องต้น
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
การเขียนโปรแกรมแบบวนซ้ำ
บทที่ 5 อินพุตและเอาต์พุต
C Programming By Mr. Sanae Sukprung.
โปรแกรมย่อย อาจารย์สมเกียรติ ช่อเหมือน
แนวข้อสอบ Final (จดด่วน)
คำสั่งวนซ้ำ (Looping)
ครูวีรธรรม เทศประสิทธิ์ แผนกวิชาคอมพิวเตอร์ธุรกิจ
การประยุกต์ Logic Gates ภาค 2
บริษัท พัฒนาวิชาการ (2535) จำกัด
การจัดการระบบฐานข้อมูล ภาษาที่ใช้ในระบบจัดการฐานข้อมูล
โครงสร้างโปรแกรมภาษา C
ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม
ส่วนประกอบของคอมพิวเตอร์ (Personal Computer : PC)
BC320 Introduction to Computer Programming
โครงสร้างภาษา C Arduino
บทที่ 13 การจัดการไฟล์ (File Management)
Control Statement เงื่อนไขคำสั่งในโปรแกรม ภาษา C
ภาษาคอมพิวเตอร์ (Computer Language)
ตัวแปรกับชนิดของข้อมูล
introduction to Computer Programming
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
บทที่ 1 ภาษาคอมพิวเตอร์และ การโปรแกรม
ความรู้พื้นฐานการเขียนโปรแกรม
Java Translation Object and Class ในมุมมองคอมพิวเตอร์ Objects หรือ Instances หมายถึงวัตถุที่กำเนิดตัวตนจริงๆจากต้นแบบที่กำหนดโดยคลาส Object.
บริษัท พัฒนาวิชาการ (2535) จำกัด
การเขียนภาษาจาวาเบื้องต้น
Week 5 C Programming.
ผู้ช่วยศาสตราจารย์จุฑาวุฒิ จันทรมาลี
หน่วยที่ 6 อะเรย์ของอักขระ
บทที่ 7 การประมวลผลอาร์เรย์
บทที่ 2 โครงสร้างข้อมูลแบบแถวลำดับหรืออาร์เรย์ (Array)
Chapter 3 : Array.
ฟังก์ชันของโปรแกรม Computer Game Programming
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
พอยเตอร์ #include <stdio.h> void main() { int age; int *pointer;
Computer Game Programming
ใบสำเนางานนำเสนอ:

โครงสร้างโปรแกรมภาษา C บทที่ 2 โครงสร้างโปรแกรมภาษา C

หัวข้อ โปรแกรมภาษา การ Compile & Run โปรแกรม โครงสร้างโปรแกรมภาษา C คำสั่งแสดงผลลัพธ์ (Output) คำสั่งรับข้อมูล (Input)

2.1 โปรแกรมภาษา โปรแกรมภาษา ใช้ในการพัฒนาโปรแกรมสำหรับ งานเฉพาะตามที่ผู้ใช้ต้องการ ประเภทของโปรแกรมภาษา 1. ภาษาระดับต่ำ (Low-Level Language) เช่น ภาษาเครื่อง (Machine language) 2. ภาษาระดับกลาง (Middle-Level Language) เช่น ภาษาแอสเซมบลี (Assembly Language) 3. ภาษาระดับสูง (High-Level Language) เช่น Pascal, Fortran, C, JAVA, ... 3

ภาษาเครื่อง ภาษาเครื่อง (Machine Language) เป็นภาษาที่คอมพิวเตอร์เข้าใจ ซึ่งเขียนเป็นรหัสเลข ฐาน 2 (0/1) และมีความเกี่ยวข้องกับอุปกรณ์ภายใน เครื่องคอมพิวเตอร์ แต่ยุ่งยากต่อการพัฒนาโดยมนุษย์เรา ตัวอย่างเช่น Object Code 4

ภาษาแอสเซมบลี ภาษาแอสเซมบลี (Assembly Language) เป็นภาษาที่เขียนโดยใช้คำสั่งเป็นคำเฉพาะใน ภาษาอังกฤษที่มนุษย์เข้าใจ แทนการใช้รหัสเลขฐาน 2 แต่ออกแบบมาเฉพาะสำหรับคอมพิวเตอร์แต่ละรุ่น ผู้เขียนโปรแกรมยังต้องทราบข้อมูลที่เกี่ยวข้องกับ อุปกรณ์ของเครื่องคอมพิวเตอร์ (ยังยากต่อการพัฒนา) และต้องใช้ แอสเซมเบอร์ (Assembler) ในการแปล ภาษาแอสเซมบลี ให้เป็นภาษาเครื่อง 5

Assembly Code Object Code Assembler Object Code 6

ภาษาระดับสูง ภาษาระดับสูง (High-Level Languages) เช่น C, JAVA, เป็นภาษาที่พัฒนาได้ง่าย เพราะใช้คำสั่งเป็นภาษาอังกฤษ ใช้ คอมไพเลอร์ (Compiler) หรือ Interpreter ใน การแปลภาษาระดับสูงให้เป็นภาษาเครื่อง Compiler แปลทั้งโปรแกรม (เช่น Pascal, C, ...) Interpreter แปลทีละบรรทัด ตัวอย่าง โปรแกรมภาษา C 7

2.2 การ Compile ขั้นตอนการประมวลผลโปรแกรมภาษา C ขั้นตอนการแปล Source code (file) ของโปรแกรม ภาษา C ให้เป็น Machine code (Object file) C Libraries Source code file (FILE.c) Object file (FILE.obj) Editor (create & modify C code) Compiler (convert Source code  Machine code) Linker (add extra information) Executable file (FILE.exe) Errors/Warnings ขั้นตอนการประมวลผลโปรแกรมภาษา C Input data Executable program Output

Compile & Run โปรแกรมภาษา C จะอยู่ในรูปแบบของฟังก์ชัน ซึ่งมีอย่างน้อยหนึ่งฟังก์ชัน (คือ main) ตัวอย่างการ Edit โปรแกรมภาษา C

2.3 โครงสร้างโปรแกรม C Preprocessor Directive (ข้อความสั่งตัวประมวลผลก่อน) Main Function (ฟังก์ชันหลัก) void main() /* main function */ { /* Begin (เริ่มต้น) */ variable declaration; /* ประกาศตัวแปรที่เก็บข้อมูล */ statements; /* คำสั่งประมวลผล */ } /* End (จบ) */ ตัวอย่างเช่น ถ้าต้องการพิมพ์ C Programming C Program คือ #include <stdio.h> /* Preprocessor directive */ void main() { printf(“C Programming\n”); } \n หมายถึง การย้าย cursor ไปบรรทัดใหม่ (newline)

2.4 คำสั่งในภาษา C ภาษา C ประกอบด้วยคำสั่งพื้นฐาน 4 ชนิด คือ 1. คำสั่งรับและแสดงผล (Input / Output Statements) บทที่ 2-3 2. คำสั่งคำนวณนิพจน์ (Expression Statements) บทที่ 4 3. คำสั่งทดสอบเงื่อนไข (Conditioning Statements) บทที่ 5 4. คำสั่งทำงานซ้ำ (Looping Statements) บทที่ 6 คำสั่งแต่ละชนิด อาจต้องใช้ตัวแปร (Variables) ในการ อ้างอิงข้อมูลที่เก็บอยู่ใน Memory ในบทนี้จะกล่าวถึงตัว แปร 2 ชนิด คือ ตัวแปร Integer ตัวแปร Floating-Point เช่น int x, y เช่น float area

2.5 คำสั่งแสดงผล printf (เป็นฟังก์ชันมาตรฐานของ C ใน stdio) ประกาศ stdio ในส่วน Preprocessor Directive ก่อนเรียกใช้ฟังก์ชัน printf ใน main รูปแบบ printf(“control string”, variable,…); variable เป็นตัวแปรใช้เก็บค่า (ที่เปลี่ยนแปลงได้) ใน Memory ในขณะประมวลผล … Memory variable control string ประกอบด้วย ข้อความอธิบาย เช่น printf(“C Programming”); %format เช่น %d, %f, %c, %s อักษรควบคุม เช่น \n ,\t , \f … %d สำหรับ integer หรือ decimal %f สำหรับ floating point

ตัวอย่าง 2.1 เขียนโปรแกรม พิมพ์คำว่า C Programming

2.6 คำสั่งรับข้อมูล scanf (เป็นฟังก์ชันมาตรฐานใน stdio.h) Address 0 1 2 3 4 … … Memory variable scanf (เป็นฟังก์ชันมาตรฐานใน stdio.h) รูปแบบ scanf(“%format,…”, &variable,…); &variable หมายถึง ตำแหน่งที่อยู่ (Address) ของตัว แปร variable ที่เก็บในหน่วยความจำ (&X) (X) %format เช่น %d, %f, %c, %s ตัวอย่างเช่น scanf(“%d”, &X); รับข้อมูลชนิด integer จากคีย์บอร์ด แล้วนำไปเก็บไว้ใน ตัวแปร X ที่ตำแหน่ง &X %d สำหรับ integer หรือ decimal %f สำหรับ real หรือ floating point

ตัวอย่าง 2.2 เขียนโปรแกรม แสดงการบวกค่าเลข 2 จำนวน (X, Y) และแสดง ผลบวก (Sum) … Memory X Y SUM #include <stdio.h> void main() { int X, Y, SUM; start Input X,Y SUM = X+Y Print SUM end 50 100 150 printf(“Enter X: ”); scanf(“%d”, &X); printf(“Enter Y: ”); scanf(“%d”, &Y); SUM = X + Y; printf(“Sum = %d\n”, SUM); } printf หมายถึง ฟังก์ชันแสดงผลลัพธ์ (Output) ในภาษา C scanf หมายถึง ฟังก์ชันรับข้อมูล (Input) ในภาษา C %d หมายถึง ชนิดของข้อมูลแบบ Integer (หรือ Decimal)

%format %format ระบุชนิดของตัวแปร ในคำสั่ง scanf, printf ชนิดข้อมูล ชนิดตัวแปร %format จำนวนเต็ม (integer) int %d จำนวนจริง (real) float %f #include <stdio.h> void main() { int X, Y, sum; printf(“Enter X: ”); scanf(“%d”, &X); printf(“Enter Y: ”); scanf(“%d”, &Y); sum = X + Y; printf(“sum = %d\n”, sum); } … Memory X Y SUM

ตัวอย่าง 2.3 เขียนโปรแกรมคำนวณพื้นที่ของสี่เหลี่ยม (Area) เมื่อ Area = Width x Length (กว้าง x ยาว) และแสดง ผลลัพธ์จากการคำนวณ start Input W,L Area = W * L Print Area end #include <stdio.h> void main() { int W, L; float Area; printf(“Enter width: ”); scanf(“%d”, &W); printf(“Enter length: ”); scanf(“%d”, &L); ผลลัพธ์ Enter width: _ 5 Area = W * L; printf(“Area = %f\n”, Area); } Enter length: _ 10 Area = 50.0

ตัวอย่าง 2.4 เขียนโปรแกรม แสดงการเปลี่ยนค่าข้อมูล ผลลัพธ์ (ที่รับมามีหน่วยเป็นฟุต) ให้เป็นนิ้ว … Memory #include <stdio.h> void main() { int F, Inches; start Input Feet Inches = Feet*12 Print Inches end F Inches printf("Enter feet: "); scanf("%d", &F); inches = F * 12; printf("= %d inches\n", Inches); } ผลลัพธ์ Enter feet: _ 2 = 24 inches

ฟังก์ชัน getchar, gets scanf เป็นฟังก์ชันที่รับข้อมูลได้ทุกชนิด จึงต้องระบุ “%format สำหรับข้อมูลแต่ละชนิด แต่สำหรับข้อมูลหรือตัวแปร Character สามารถเลือกใช้ ฟังก์ชัน getchar() รับหนึ่งตัวอักษร และต้องกด ENTER เป็นฟังก์ชันใน Library “stdio” getch() รับหนึ่งตัวอักษร แต่ไม่ต้องกด ENTER เป็นฟังก์ชันใน Library “conio” gets() รับหลายตัวอักษรเป็น String และต้องกด ENTER

ตัวอย่าง 2.5 เขียนโปรแกรม รับข้อมูล วัน (Day), เดือน (Month), ปี (Year) เช่น 1, November, 2010 และแสดงผลลัพธ์เป็นการพิมพ์ วันที่ในรูปแบบ Month day, year (เช่น November 1, 2010 ) ผลลัพธ์ … Memory #include <stdio.h> void main() { int Day, Year; char Month[20]; // string Enter Day: _ 1 1 Enter Month: _ November Day 2010 Year No v emb e r Enter Year: _ 2010 Month … Date is November 1, 2010 printf("Enter Day: "); scanf("%d", &Day); printf("Enter Month: "); scanf("%s", &Month); printf("Enter Year: "); scanf("%d", &Year) printf(“Date is %s %d, %d\n",Month, Day, Year); } fflush(stdin); getchar(); รอรับหนึ่งตัวอักษรจาก Keyboard ลบข้อมูลที่ค้างอยู่ใน Keyboard Buffer