ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
C Programming By Mr. Sanae Sukprung
2
รู้จักกับภาษา C ภาษา C เป็นภาษาที่เก่าแก่ ซึ่งถูกพัฒนาเพื่อให้เป็นภาษาสำหรับการสร้างระบบปฏิบัติการ UNIX เพราะของเดิมนั้นเขียนด้วยภาษา Assembly ซึ่งเป็นภาษาที่ยึดติดกับ H/W จึงทำให้ย้ายระบบปฏิบัติการไปทำงานกับเครื่องอื่น ๆ เป็นเรื่องที่เป็นไปไม่ได้ C Programing
3
ดังนั้น ภาษา C จึงเป็นภาษาที่ไม่ยึดติดกับ H/W และในปัจจุบันยังไม่ยึดติดกับการสร้างระบบปฏิบัติการเท่านั้น แต่ยังนำไปสร้างโปรแกรมเพื่องานทุกประเภทได้ C Programing
4
จุดเด่นของภาษา C เป็นภาษาที่มีการกำหนดมาตรฐานสำหรับเครื่องคอมพิวเตอร์ทุกรุ่น เป็นภาษาที่ระบบปฏิบัติการทุกตัวยอมรับ เป็นภาษาที่มีโครงสร้างที่ดี และความชัดเจนของเครื่องหมายสำหรับดำเนินการ C Programing
5
สามารถเขียนคำสั่งภาษา C เพื่อควบคุมการทำงานของอุปกรณ์ H/W บางส่วนได้
มี Function สำเร็จรูป สำหรับงานประเภทต่าง ๆ ให้เลือกใช้มากมาย C Programing
6
การแบ่งระดับตามลักษณะและการทำงาน
1. ภาษาระดับต่ำ (LOW LEVEL Language) เป็นภาษที่ใกล้เคียงกับภาษาเครื่องมากที่สุด สามารถเขียนคำสั่งเพื่อติดต่อสั่งงานกับอุปกรณ์ H/W ได้โดยตรง ซึ่งได้แก่ ภาษา Assambly ตัวอย่าง ของ Assambly MUL R1, D STO R1, TEMP1 LOD R1 ,B ADD R1,TEMP1 C Programing
7
การแบ่งระดับตามลักษณะ และการทำงาน (ต่อ)
การแบ่งระดับตามลักษณะ และการทำงาน (ต่อ) 2. ภาษาระดับสูง (High Level Language) เป็นภาษาที่ใกล้เคียงกับภาษามนุษย์มากที่สุด คำสั่งต่าง ๆ จึงมักเป็นภาษาอังกฤษ ทำให้จดจำและเขียนได้ง่าย เช่น ภาษา Pascal, Cobol, Fortran หรือ Basic เป็นต้น C Programing
8
การแบ่งระดับตามลักษณะ (ต่อ)
3. ภาษาระดับกลาง (Middle Level language) ภาษา C ถูกพัฒนาขึ้นโดยเอาข้อดีและข้อเสียของ 2 ระดับมาใช้ คือ คำสั่งของภาษา C เป็นคำสั่งที่มีความหมายใกล้เคียงกับภาษามนุษย์ และยังสามารถติดต่อกับ H/W ได้รวดเร็ว ดังนั้นภาษา C จึงถูกจัดให้เป็นภาษาระดับกลาง C Programing
9
หลักในการแปลภาษา แบ่งได้ 2 วิธี คือ 1. แปลทีละคำสั่ง
แบ่งได้ 2 วิธี คือ 1. แปลทีละคำสั่ง ตัวแปลลักษณะนี้จะเรียกว่า Interpreter โดยจะทำงานแบบเป็นคำสั่งต่อคำสั่ง นั่นคือจะอ่านคำสั่งจากโปรแกรมมา 1 คำสั่ง และทำงานตามคำสั่งนั้นทันที Print “Hello Link \n ”; print “How are you?”; Hello Link Interpreter C Programing
10
หลักในการแปลภาษา (ต่อ)
2. แปลทีเดียวตั้งแต่ต้นจนจบ ตัวแปลลักษณะนี้จะเรียกว่า Compiler หลักการทำงานเริ่มจากคอมไพล์เลอร์จะทำการตรวจสอบคำสั่งทั้งหมดของโปรแกรม เพื่อดูว่ามีส่วนใดผิดจากหลักการของภาษานั้นหรือไม่ ถ้าไม่พบข้อผิดพลาดคอมไพเลอร์จะทำการแปลคำสั่งทั้งหมดในโปรแกรมให้เป็นภาษาเครื่องแล้วจึงทำงาน Print “Hello Link \n ”; print “How are you?”; Hello Link How are You Compiler C Programing
11
ภาษา C เบื้องต้น
12
จะแบ่งออกเป็น 2 ส่วนดังนี้
โครงสร้างของภาษา C จะแบ่งออกเป็น 2 ส่วนดังนี้ ส่วนหัวของโปรแกรมซึ่งเป็นส่วนของ การกำหนดค่าเริ่มต้น และประกาศตัวแปร 1 ส่วนของตัวโปรแกรมซึ่งเริ่มจาก Main() ซึ่งอาจจะมีการเรียกใช้ Function อื่น ๆ ก็ได้ 2 C Programing
13
ตัวอย่าง การเขียนโปรแกรมภาษา C
#include <stdio.h> main() { printf(“Hello World\n”); } Head Body C Programing
14
ส่วนหัวของโปรแกรม ส่วนหัวของโปรแกรมจะเริ่มต้นตั้งแต่บรรทัดแรกของโปรแกรมจนมาสิ้นสุดที่บรรทัดก่อน Main() จะแบ่งออกเป็น 2 ส่วนดังนี้ 1. คำสั่งพิเศษ (Preprocessor Directive) 2. การประกาศตัวแปร (Declaration) C Programing
15
#include <stdio.h> int x =4; main() { printf(“Hello World\n”); }
1 2 C Programing
16
Preprocessor directive
เป็นคำสั่งรูปแบบหนึ่งของภาษา C ที่มีความพิเศษ โดยในขั้นตอนการแปลความหมายของโปรแกรม ถ้าตัวแปลภาษา C ตรวจพบว่ามีการใช้ Preprocessor ภายในโปรแกรม ก็จะถูกแปลความหมายเป็นลำดับแรกก่อนคำสั่งอื่น ๆ รูปแบบของการเขียน Preprocessor จะต้องขึ้นต้นเครื่องหมาย # แต่ไม่ต้องลงท้ายด้วยเครื่อง ; เหมือนคำสั่งอื่น ๆ ทั่วไป C Programing
17
Preprocessor directive (ต่อ)
#Include #Define #Error #if #Endfi #Elid #Else #ifdef #ifndef #undef #Line #Pragma C Programing
18
การประกาศตัวแปร #include <Stdio.h> int a= 5; int b= 10;
int c; main() { c= a+b; printf (“sum = %d\n”, c); } ตัวแปรจำนวนเต็ม หาผลบวก แสดงผลบวก C Programing
19
รูปแบบการเขียนคำสั่งภาษา C
ทุกคำสั่งต้องลงท้ายด้วย ; สามารถเขียนคำสั่งได้อย่างอิสระ เช่น int a = 5; int b = 10; printf (Sum = %d\n”, a+b); C Programing
20
คำบรรยายแทรก (Comment)
C Programing
21
#include <stdio.h> main() { printf (“Hello World\n”);
/* Display message Hello world to the Monitor */ } C Programing
22
ข้อมูลและตัวแปรในภาษา C
23
ชนิดของข้อมูลในภาษา C
ข้อมูลเลขจำนวนเต็ม (Integer) ข้อมูลเลขทศนิยม (Float) ข้อมูลชนิดเลขฐานแปด (Octal) ข้อมูลชนิดเลขฐานสิบหก (Hexadecimal) ข้อมูลชนิดตัวอักขระ (Character) ข้อมูลชนิดข้อความ (String) C Programing
24
ตัวแปรและหน้าที่ของตัวแปร
ตัวแปร (Variable) คือ การจองที่เก็บข้อมูลในหน่วยความจำหลัก (RAM) ของเครื่องคอมพิวเตอร์ พร้อมกับกำหนดชื่อเรียกแทนหน่วยความจำในตำแหน่งนั้น อย่างเช่น ถ้าเราสร้างตัวแปรขึ้นมา 1 ตัวโดยใช้ชื่อ num สำหรับเก็บค่าของตัวเลข 16 เมื่อต้องการนำค่า 16 มาใช้ เราก็เพียงแต่เรียกชื่อ num ซึ่งภาษา C จะแปลความหมายได้ถูกต้องว่ามีค่าเท่ากับ 16 C Programing
25
ชนิดของตัวแปรในภาษา C
สามารถแบ่งได้ 2 ประเภทใหญ่ ๆ คือ 1. ตัวแปรแบบพื้นฐาน (Scalar) ซึ่งหมายถึงที่เก็บข้อมูลได้เพียงค่าเดียวเช่น C Programing
26
C Programing
27
รูปแบบการประกาศตัวแปร
Type variable; type : ชนิดของตัวแปรที่จะสร้างขึ้น variable : ชื่อของตัวแปรที่ต้องการจะใช้ int num; float y; char c; double salary; ตัวอย่าง C Programing
28
รูปแบบการประกาศตัวแปร (ต่อ)
Type variable = value; long million = ; int oct = 0234; int hex = 0x45; float temp = ; double stat = 1.25e-02; char ch =‘#’; ตัวอย่าง C Programing
29
Type variable-1, variable-2,... variable-n;
รูปแบบการประกาศตัวแปร (ต่อ) Type variable-1, variable-2,... variable-n; type : ชนิดของตัวแปรที่จะสร้างขึ้น variable-1... Variable-n : ชื่อของตัวแปรที่ต้องการจะใช้ int num1,num2,num3; float point1, point2,point3 = 12.00; char a,b = ‘B’, c,d =‘D’; ตัวอย่าง C Programing
30
หลักการตั้งชื่อตัวแปร
ต้องขึ้นต้นด้วยตัวอักษร A-Z หรือ a-z หรือเครื่องหมาย _ เท่านั้น ความยาวต้องไม่เกิน 32 ตัวอักษร ภายในชื่อตัวแปรให้ใช้ตัวอักษร A-Z หรือ a-z หรือ 0-9 หรือ _ ห้ามเว้นช่องว่างภายในตัวแปร หรือใช้สัญลักษณ์นอกเหนือจากข้อ 2 การใช้ตัวอักษรตัวใหญ่ และตัวเล็ก มีความแตกต่างกัน ห้ามตั้งชื่อตัวแปรซ้ำกับคำสงวน (Reserved Word) C Programing
31
คำสงวน (Reserved Word)
auto break case char const continue default do double else if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while C Programing
32
ตัวอย่างการตั้งชื่อตัวแปร
class_room hi-tech 9number _hello123 age# right! last name ถูกต้อง ไม่ถูกต้อง ไม่ถูกต้อง ถูกต้อง ไม่ถูกต้อง ไม่ถูกต้อง ไม่ถูกต้อง C Programing
33
ตัวแปรสำหรับข้อมูลชนิดข้อความ
char variable[n]; n : คือจำนวนของตัวแปรชนิดอักขระ (Char) ที่จะสร้างขึ้น โดยถ้าข้อความมีอักขระทั้งหมด 10 ตัว จะต้องใส่จำนวนเป็น 11 เนื่องจากภาษา C มีข้อกำหนดว่าจะเก็บข้อมูลชนิดข้อความ ตัวสุดท้ายต้องเป็นอักขระว่าง ซึ่งจะเขียนแทนด้วย \0 เพื่อบอกให้รู้ว่าเป็นข้อความ Variable : ชื่อของตัวแปร โดยต้องตั้งชื่อให้ถูกต้องตามหลักการตั้งชื่อ char name [10]; C Programing
34
คำสั่งที่ใช้ในการแสดงผล และการรับข้อมูล
printf() รูปแบบ printf (“ control”,value); C Programing
35
control : ส่วนที่ใช้ควบคุมการแสดงผล ซึ่งมีอยู่ 3 แบบด้วยกัน คือ ข้อความธรรมดา รหัสควบคุมรูปแบบ (เช่น %d, %f) และอักขระควบคุมการแสดงผล(เช่น \n) โดยส่วนที่ใช้ควบคุมการแสดงผลเหล่านี้จะต้องเขียนไว้ภายใน “ “ value : คือ ค่าของเครื่องหมาย นิพจน์ หรือมาโครที่ต้องการแสดงผล โดยถ้ามีมากกว่าหนึ่งตัวให้ใช้เครื่องหมาย , (comma) คั่นระหว่างแต่ละตัว C Programing
36
#include <stdio.h> main() { printf (“Nice to meet you!”); }
ตัวอย่าง /* Ex1 */ #include <stdio.h> main() { printf (“Nice to meet you!”); } C Programing
37
#include <stdio.h> int num = 32; main() { printf (num); }
ตัวอย่าง /* Ex2 */ #include <stdio.h> int num = 32; main() { printf (num); } C Programing
38
รหัสรูปแบบ (Format Code)
%u สำหรับการแสดงผลตัวเลขจำนวนเต็มบวก %o สำหรับการแสดงผลออกมาในรูปแบบของเลขฐานแปด %x สำหรับการแสดงผลออกมาในรูปแบบของเลขฐานสิบหก %f สำหรับการแสดงผลตัวเลขทศนิยม %e สำหรับการแสดงผลตัวเลขทศนิยมออกมาในรูปแบบ E %c สำหรับแสดงผลอักขระ 1 ตัว %s สำหรับแสดงผลข้อความ %p สำหรับการแสดงผลตัวชี้ตำแหน่ง C Programing
39
ตัวอย่าง /* EX 3 */ #intclude <Stdio.h>
int x1 = 43, x2 = 0x77, x3 = 0573; float y1 = , y2 = 1.25e02; char z = ‘A’; char name[11] = “Sriwattana” main() { printf (“%d“, x1); printf (“%x %o “,x2, x3); printf (“%f %e “, y1,y2); printf (“%c %s “, z, name); } C Programing
40
อักขระควบคุมการแสดงผล
\n ขึ้นบรรทัดใหม่ \t เว้นช่องว่างเป็นระยะ 1 Tab (6 ตัวอักษร) \r กำหนดให้ Cursor ไปอยู่ต้นบรรทัด \f เว้นช่องว่างเป็นระยะ 1 หน้าจอ \b ลบอักขระตัวท้ายสุดออก 1 ตัว C Programing
41
#include <stdio.n> #define PUBLISH “infopress”
ตัวอย่าง #include <stdio.n> #define PUBLISH “infopress” int x1 =14, x2 = 5; main() { printf (“This is the book from %s\n”, PUBLISH); printf(“Sum of %d + %d =\t%d\n”,x1, x2, x1+x2); } C Programing
42
รับข้อมูลจาก Keyboard ด้วย scanf()
รูปแบบ scanf (“ format “ , &variable); C Programing
43
format : เป็นการกำหนดรูปแบบ ของข้อมูลที่จะรับเข้ามา โดยจะใช้รหัสรูปแบบเหมือนกับ printf ()
variable : ตัวแปรที่ใช้สำหรับรับข้อมูลเข้ามา โดยจะต้องเขียนนำหน้าด้วยเครื่องหมาย & ยกเว้นตัวแปรที่จะเก็บข้อความเท่านั้น C Programing
44
#include <stdio.h> int age; main () { clrscr( );
ตัวอย่าง /* EX 4 */ #include <stdio.h> int age; main () { clrscr( ); printf (“How Old are you?”); scanf (“%d”,&age); printf (“You are %d years old. \n”,age); } C Programing
45
แสดงผลทีละอักขระด้วย putchar()
รูปแบบ putchar(char); char : เป็นตัวแปรชนิด char หรืออักขระที่เขียนภายในเครื่องหมาย ‘ ‘ C Programing
46
ตัวอย่าง การใช้คำสั่ง putchar( )
#include <stdio.h> char first = ‘0’; main() { clrscr(); putchar(first); putchar(‘k’); } เรียกใช้ Function Clrscr แสดงข้อความในตัวแปร First แสดงตัวอัการ k C Programing
47
แสดงผลเป็นข้อความด้วย puts()
รูปแบบ puts(str); str : เป็นตัวแปรชนิดข้อความ หรือข้อความที่เขียนภายในเครื่องหมาย “ “ C Programing
48
ตัวอย่าง การใช้คำสั่ง puts( )
#include <stdio.h> char message[ ] = “C Language”; main() { clrscr(); puts(message); puts(“easy & fun”); } C Programing
49
รับข้อมูลทีละอักขระด้วย getchar()
รูปแบบ variable = getchar(); variable : ชื่อของตัวแปรชนิดอักขระ ซึ่งจะใช้เก็บค่าที่รับเข้ามาจาก Keyboard C Programing
50
ตัวอย่างของการใช้ getchar()
#include <stdio.h> char x; main() { clrscr(); printf (“Enter you favorite letter : “); x = getchar(); printf (“You insert : %c”,x); } C Programing
51
รับข้อมูลทีละอักขระด้วย getch()
รูปแบบ variable = getch(); variable : ชื่อของตัวแปรชนิดอักขระ ซึ่งจะใช้เก็บค่าที่รับเข้ามาจาก Keyboard C Programing
52
ตัวอย่างของการใช้ getch()
#include <stdio.h> char x; main() { clrscr(); printf (“Enter you favorite letter : “); x = getch(); printf (“You insert : %c”,x); } C Programing
53
รับข้อมูลเป็นข้อความด้วย gets()
รูปแบบ gets(str); Str : ตัวแปรที่จะใช้เก็บข้อความ ซึ่งเราต้องสร้างเตรียมไว้ก่อนที่จะเรียกใช้ Function gets() C Programing
54
ตัวอย่างของการใช้ gets()
#include <stdio.h> char message[30]; main() { clrscr(); printf (“Enter your message: ”); gets (message); printf (“Your message is %s”,message); } C Programing
55
เครื่องหมาย และการดำเนินการในภาษา C
56
เครื่องหมายการคำนวณทางคณิตศาสตร์
“+” เช่น z = x + y หมายถึง บวกค่าที่อยู่ในตัวแปร x และ y มาเก็บไว้ที่ตัวแปร z “-” เช่น z = x - y หมายถึง ลบค่าที่อยู่ในตัวแปร x และ y มาเก็บไว้ที่ตัวแปร z “ * ” เช่น z = x * y หมายถึง คูณค่าที่อยู่ในตัวแปร x และ y มาเก็บไว้ที่ตัวแปร z “/” เช่น z = x / y หมายถึง หารค่าที่อยู่ในตัวแปร x และ y มาเก็บไว้ที่ตัวแปร z “%” เช่น z = x % y หมายถึง หารค่าที่อยู่ในตัวแปร x และ y มาเก็บไว้ที่ตัวแปร z โดยที่ค่าที่เก็บคือเศษที่ได้มาจากการหาร C Programing
57
ตัวอย่าง /* Ex 4.1*/ #include <Stdio.h> int x = 5; int y = 2;
int sum, diff, mul, mod; float div; main () { sum = x + y; diff = x - y; mul = x * y; div = x / y; mod = x % y ; } C Programing
58
เครื่องหมายดำเนินการทางคณิตศาสตร์ที่เพิ่ม ลบทีละ 1 ค่า
“++” y = ++x หมายถึง บวกค่าในตัวแปร x ก่อน 1 ค่า แล้วนำผลลัพธ์ที่ได้ไปเก็บไว้ที่ y หรือ y = x++ หมายถึง นำค่าของ x ไปเก็บไว้ที่ y ก่อน แล้วค่อยบวกค่าในตัวแปร x 1 ค่า “--” y = --x หมายถึง ลบค่าในตัวแปร x ก่อน 1 ค่าแล้วนำผลลัพธ์ที่ได้ไปเก็บไว้ที่ y หรือ y = x-- หมายถึง นำค่าของ x ไปเก็บไว้ที่ y ก่อน แล้วค่อยลบค่าในตัวแปร x 1 ค่า C Programing
59
ตัวอย่าง x , y มีค่าเท่ากับ 5 z มีชนิดข้อมูลเป็น Integer x = z = 6
/* Ex 4.1*/ #include <Stdio.h> int x,y = 5; int z; main () { z = ++x; z = y++; } x , y มีค่าเท่ากับ 5 z มีชนิดข้อมูลเป็น Integer x = z = 6 z = 5 , y = 6 C Programing
60
เครื่องหมายดำเนินการทางคณิตศาสตร์ที่ใช้ลดรูป
+= เช่น y+=x หมายถึง y = y+x -= เช่น y-=x หมายถึง y = y-x *= เช่น y*=x หมายถึง y = y*x /= เช่น y/=x หมายถึง y = y/x %= เช่น y%=x หมายถึง y = y%x C Programing
61
เครื่องหมายการเปรียบเทียบ
= = หมายถึง เท่ากับ เช่น x == y != หมายถึง ไม่เท่ากับ เช่น x != y < หมายถึง น้อยกว่า เช่น x < y <= หมายถึง น้อยกว่าหรือเท่ากับ เช่น x <= y > หมายถึง มากกว่า เช่น x > y >= หมายถึง มากกว่า หรือเท่ากับ เช่น x >= y C Programing
62
เครื่องหมายทางตรรกศาสตร์
&& เรียกว่า and สรุป and จะได้ผลลัพท์ออกมาเป็นจริง ถ้าค่าที่นำมาก && กันเป็นจริงทั้งคู่ C Programing
63
เครื่องหมายทางตรรกศาสตร์ (ต่อ)
|| เรียกว่า OR สรุป OR จะได้ผลลัพท์ออกมาเป็นเท็จ ถ้าค่าที่นำมาก || กันเป็นเท็จทั้งคู่ C Programing
64
เครื่องหมายทางตรรกศาสตร์ (ต่อ)
! เรียกว่า NOT สรุป not จะได้ผลลัพท์ออกมาตรงกันข้ามกัน C Programing
65
ทำความรู้จักกับนิพจน์ (Expression)
นิพจน์ คือ การนำข้อมูลซึ่งอาจจะอยู่ในรูปของค่าคงที่หรือตัวแปรมาดำเนิน การโดยใช้เครื่องหมายทางคณิตศาสตร์เป็นตัวสั่งการ ตัวอย่างของนิพจน์ 5 + 3 = 8 , b2 - 4ab , ax2 + bx +c การเขียนนิพจน์ในภาษา C นิพจน์ในภาษา C ก็คือ การนำข้อมูลหรือตัวแปรในภาษา C มาดำเนินการ โดยใช้เครื่องหมายทางคณิตศาสตร์ ตรรกศาสตร์ หรือเครื่องหมายเปรียบเทียบ ที่มี ความหมายในภาษา C เป็นตัวสั่งการ C Programing
66
ตัวอย่าง การเขียนนิพจน์ในภาษา C
C Programing
67
ลำดับของเครื่องหมายในการคำนวณ
C Programing
68
การเปลี่ยนชนิดตัวแปร
การเปลี่ยนชนิดตัวแปรโดยอัตโนมัติ สำหรับการเปลี่ยนโดยอัตโนมัติ หรือเรียกว่า Implicit Casting เราไม่ต้อง ทำอะไร ตัวแปรภาษา C จะจัดการให้ทั้งหมด โดยใช้หลักการเปลี่ยนชนิดตัวแปร ที่มีขนาดเล็กกว่า ไปเป็นชนิดที่มีขนาดใหญ่กว่า int x = 5; float y = 2.5; float z ; main() { z = x +y; } ตัวแปรเลขจำนวนเต็ม ตัวแปรเลขทศนิยม ตัวแปรเลขทศนิยม บวกค่าของตัวแปรต่างชนิด C Programing
69
การเปลี่ยนชนิดตัวแปร (ต่อ)
เปลี่ยนโดยใช้คำสั่ง รูปแบบ (typecast) variable; typecast หมายถึง ชนิดของตัวแปรที่ต้องการจะเปลี่ยนไปใช้ variable หมายถึง ตัวแปรหรือข้อมูลที่ต้องการจะเปลี่ยนชนิด C Programing
70
ตัวอย่าง int x = 32; float y = 1.25e3; char z = ‘C’ int num1;
float num2; num1 = (int)y; num1 = (int)z; num1 = (int) ; num1=(int)’A’; num2=(float)x; num2=(float)-125; num2=(float)z; เปลี่ยนจาก float เป็น int เปลี่ยนจาก char เป็น int เปลี่ยนจาก float เป็น int เปลี่ยนจากตัวขระ เป็น int เปลี่ยนจาก int เป็น float เปลี่ยนจากเลขจำนวนเต็มลบ เป็น float เปลี่ยนจาก char เป็น float C Programing
71
ขอความสั่งควบคุม
72
ขอความสั่งควบคุม แบงเปนกลุมใหญ ๆ ได 2 กลุม คือ
1. ขอความสั่งวงวน (loop statements) 2. ขอความสั่งมีเงื่อนไข (conditional statements) (Schildt 1968:63) C Programing
73
ขอความสั่งวงวน ขอความสั่งวงวนที่ใชงานในภาษาซี ไดแก
1. ขอความสั่ง while 2. ขอความสั่ง do/while 3. ขอความสั่ง for C Programing
74
ขอความสั่ง while ใชสั่งใหทํางานเปนวงวนจนกวาเงื่อนไขที่กําหนดจะเปนเท็จจึงจะหยุดการวน รูปแบบ while (เงื่อนไข) { ขอความสั่งที่ 1 ; ขอความสั่งที่ 2 ; ขอความสั่งที่ 3 ง ; ; } C Programing
75
ทิศทางการทำงานของ while
รูปแสดงการทำงาน Statement ของ while Condition เท็จ จริง C Programing
76
ตัวอยางโปรแกรม #include <stdio.h> int i=1; main ( ) {
while(i<=5) printf(“COMPUTER\n”); i++ ; } printf (“End of loop.\n”); C Programing
77
ตัวอยางโปรแกรมพิมพสูตรคูณ
#include <stdio.h> int i=1; main ( ) { while (i<=12) printf (“ 25x %d = %3d\n”,I,I*25); I++ ; } printf (“End of loop.\n”); C Programing
78
ขอความสั่ง do/while ขอความสั่งวงวนแบบนี้จะเริ่มทําตามขอความสั่งในบล็อกกอน 1 รอบแลวจะตรวจสอบเงื่อนไขของขอความสั่ง while ถาเปน จริงก็วนกลับไปทําตามขอความสั่งทั้งหมดในบล็อก แลวตรวจสอบเงื่อนไขอีก ถาเปนเท็จก็จะเลิกการทําซํ้า แลวขามไปทําตามข้อความสั่งที่เหลือในโปรแกรมตอไปจนจบ C Programing
79
รูปแบบของคำสั่ง do/while
{ ขอความสั่งที่ 1 ; ขอความสั่งที่ 2 ; ขอความสั่งที่ 3 ง ; ; } while (เงื่อนไข); C Programing
80
ทิศทางการทำงานของ do/while
รูปแสดงการทำงาน Statement ของ while Condition เท็จ จริง C Programing
81
ตัวอยางโปรแกรม #include <stdio.h> int i=1; main ( ) { do
printf(“COMPUTER\n”); I ++; } while (i<=5); printf (“End of loop.\n”); C Programing
82
ตัวอยางโปรแกรมพิมพสูตรคูณ
main ( ) { int i=1; do printf (“ 25 x %2d = %3d\n”,i,i*25); i++ ; } while (i<=10); printf (“End of loop.\n”); C Programing
83
ขอความสั่ง for ขั้นตอนการทำงานของ for 1. กำหนดค่าเริ่มต้นให้กับตัวแปร
2. กำหนดเงื่อนไขที่ใช้ในการตรวจสอบ 3. ปฏิบัติตามเงื่อนไข 3.1 ถ้าเงื่อนไขเป็นจริงให้ทำตามคำสั่งภายใน Loop for 3.2 ถ้าเงื่อนไขเป็นเท็จให้ออกจาก Loop for 4. เพิ่ม/ลด ค่าของตัวแปร 5. ย้อนกลับไปทำที่ข้อ 3 C Programing
84
รูปแบบของ for for (ค่าเริ่มต้น;เงื่อนไขที่ใช้ตรวจสอบ;การเพิ่ม/ลดค่าตัวแปร) { statement1; statement2; statement3; ………………; } C Programing
85
ทิศทางการทำงานของ for
กำหนดค่าเริ่มต้น เท็จ Condition จริง ทำงานตามคำสั่งของ for เปลี่ยนแปลงค่าของตัวแปร C Programing
86
ตัวอยางโปรแกรม main ( ) { int i: for (i=1;i<=5;i++)
printf(“COMPUTER\n”); printf(“End of loop.\n”); printf(“ i = %d\n”,i); } C Programing
87
ตัวอยางโปรแกรม for ที่มี 2 ขอความสั่งขึ้นไป
main ( ) { int i; for(i=1;i<=5;i++) printf (“COMPUTER\n”); printf(“ i = %d\n”,i); } printf (“End of loop.\n”); printf (“ i = %d\n”,i); C Programing
88
ตัวอย่างโปรแกรม main ( ) { int i: for (i=5;i>0;i --)
printf (”COMPUTER\n”); printf (“End of loop.\n”); } C Programing
89
การกําหนดตัวแปรที่มีการเปลี่ยนคาไวมากกวา 1 ตัว
ในภาษาซีมีวิธีกําหนดตัวแปรไวในเงื่อนไขไดมากกวา 1 ตัว โดยใช , คั่นตัวแปรไว แตการกําหนดตัวแปรควบคุมในเงื่อนไขจะตองใชตัวแปรตัวเดียวเทานั้น C Programing
90
ตัวอยางกําหนดตัวแปร 2 ตัวไวในวงเล็กหลัง for
main ( ) { int i,j; for (i=1 , j=10;i<=5;i++,j+=10) printf (“%d x%d = %d\n”,i,j,i*j); printf (“End of loop.”)’ } C Programing
91
ตัวอยางกําหนดตัวแปร 3 ตัวไวในวงเล็กหลัง for
main ( ) { int i,j,k; for iI=1,j=10,k=100;i<=5;i++,j+=10,k-=30) printf (“%d x %2d x %4d = %6d\n”,i,j,k,i*j*k); printf (“End of loop.\n”); } C Programing
92
ขอความสั่งมีเงื่อนไข
ขอความสั่งมีเงื่อนไขไดแก if / else switch/case C Programing
93
เครื่องหมายเปรียบเทียบ
> มากกวา >= มากกวาหรือเทากับ < นอยกวา <= นอยกวาหรือเทากับ = = เทากัน != ไมเทากัน && AND (และ) || OR (หรือ) ! NOT C Programing
94
กำหนดค่าเริ่มต้น เท็จ จริง START Condition Statement ; Statement ;
STOP C Programing
95
ขอความสั่ง if/else If (เงื่อนไข) {
ขอความสั่ง ; /* ทํ าเมื่อเงื่อนไขเปนจริง */ ; } else ขอความสั่ง ; /* ทํ าเมื่อเงื่อนไขเปนเท็จ */ ; C Programing
96
ขอความสั่ง if/else แบบซอนกัน (nested if)
{ ขอความสั่ง ; /* ทํ าเมื่อเงื่อนไข 1 เปนจริง */ ขอความสั่ง ; ; } else /* ทํ าเมื่อเงื่อนไข 1 เปนเท็จ */ if (เงื่อนไข 2) ขอความสั่ง ; /* ทํ าเมื่อเงื่อนไข 2 เปนจริง */ else ขอความสั่ง ; /* ทํ าเมื่อเงื่อนไข 2 เปนเท็จ */ ; C Programing
97
ขอความสั่ง Switch/case/bread/default
เปนขอความสั่งประเภทที่มีการตรวจสอบคาของนิพจนหรือคาของตัวแปรที่รับมาวาสอดคลองกับกรณีใดก็จะปฏิบัติงานตามกรณีนั้น แลวออกจากวงวน เมื่อพบคําสั่ง break เพื่อทําตาม ขอความสั่งที่มีตอจากวงวนนั้น จนกวาจะจบโปรแกรม C Programing
98
รูปแบบ Switch/Case switch (นิพจน หรือ ตัวแปร) {
ขอความสั่ง 1; ขอความสั่ง 2; ; break; case (คาของนิพจนหรือตัวแปร คาที่ 2) : ; . default : ขอความสั่ง ; } C Programing
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.