SlideShare a Scribd company logo
1 of 27
การเขียนคาสั่งควบคุมขั้นพื้นฐาน
1.ลักษณะการทางานของภาษาซี
ภาษาซีเป็นภาษาที่มีการพัฒนาการมาอย่างต่อเนื่อง ภาษาซีรุ่นแรกทางานภายใต้
ระบบปฏิบัติการคอส (cos) ปัจจุบันทางานภายใต้ระบบปฏิบัติการ
วินโดวส์ (Windows) ภาษาซีใช้วิธีแปลรหัสคาสั่งให้เป็นเลขฐานสอง
เรียกว่า คอมไพเลอร์ การศึกษาภูมิหลังการเป็นมาของภาษาซีและกระบวนการ
แปลภาษาจะช่วยให้ผู้ใช้ภาษาซีในรุ่นและบริษัทผู้ผลิตแตกต่างกัน สามารถใช้
ภาษาได้อย่างเข้าใจมากขึ้น
ความเป็นมาของภาษาซี
ภาษาซีได้รับการพัฒนาเมื่อปี ค.ศ.1972 โดยนายเดนนิส ริตซี่ ตั้งชื่อว่าซีเพราะพัฒนามาจากภาษา
BCLP และภาษา B ในช่วงแรกใช้ทดลองเขียนคาสั่งควบคุมในห้องปฏิบัติการเบล (Bell Laboratoorics)
เท่านั้น เมื่อปี ค.ศ.1978 นายไบรอัน เคอร์นิกฮัน และ นายเดนนิส ริตซี่ ร่วมกันกาหนดนิยามรายละเอียด
ของภาษาซี เผยแพร่ความรู้โดยจัดทาหนังสือ The C Programming Language มีหลายบริษัท ให้ความ
สนใจนาไปพัฒนาต่อ จนมีภาษาซีหลายรูปแบบและแพร่หลายไปทั่วโลก แต่ยังไม่มีมาตรฐานคาสั่ง
เพื่อให้สามารถใช้งานร่วมกันได้ดังนั้นเมื่อปี ค.ศ.1988 นายริตซี่ ได้ร่วมกับสถาบันกาหนดมาตรฐาน
ANSI สร้างมาตรฐานภาษาซีขึ้นมามีผลให้โปรแกรมคาสั่งที่สร้างด้วยภาษาซีสังกัดบริษัทใดๆก็ตามที่ใช้
คาสั่งมาตรฐานของภาษาสามารถนามาทางานร่วมกันได้
การทางานของตอมไพเลอร์ภาษาซี
คอมไพเลอร์เป็นโปรแกรมที่ได้รับการพัฒนามาเพื่อแปลภาษาคอมพิวเตอร์รูปแบบหนึ่งมักใช้กับโปรแกรมเชิงโครงสร้าง ลักษณะการแปล
จะอ่านรหัสคาสั่งทั้งโปรแกรมตั้งแต่บรรทัดคาสั่งแรกถึงบรรทัดสุดท้าย หากมีข้อผิดพลาดจะรายงานทุกตาแหน่งคาสั่งที่ใช้ผิดกฎไวยากรณ์
ของภาษา กระบวนการคอมไพเลอร์โปรแกรมคาสั่งของภาษาซี มีดังนี้
1.จัดทาโปรแกรมต้นฉบับ (Source Program) หลังจากพิมพ์คาสั่งงาน ตามโครงสร้างภาษาที่สมบูรณ์แล้วทุกส่วนประกอบ ให้บันทึกโดย
กาหนดชนิดงานเป็น .c เช่น work.c
2.การแปลรหัสคาสั่งเป็นภาษาเครื่อง (Compile) หรือการบิวด์ (Build) เครื่องจะตรวจสอบคาสั่งทีละคาสั่ง เพื่อวิเคราะห์ว่าใช้งานได้ถูกต้อง
ตามรูปแบบไวยากรณ์ที่ภาษาซีกาหนดไว้หรือหากมีข้อผิดพลาดจะแจ้งให้ทราบ หากไม่มีข้อผิดพลาดจะไปกระบวนการ3
3.การเชื่อมโยงโปรแกรม (Link) ภาษาซีมีฟังก์ชันมาตรฐานให้ใช้งาน เช่น printf() ซึ่งจัดเก็บไว้ในเฮดเดอร์ไพล์ หรือเรียกว่า ไลบรารี ใน
ตาแหน่งที่กาหนดชื่อแตกต่างกันไป ผู้ใช้ต้องศึกษาและเรียกใช้เฮดเดอร์ไฟล์กับฟังก์ชันให้สัมพันธ์เรียกว่าเชื่อมโยงกับไลบรารี กระบวนการ
นี้ได้ผลลัพธ์เป็นไฟล์ชนิด .exe
2.ส่วนประกอบในโครงสร้างภาษาซี
ภาษาซีเป็นภาษาที่มีโครงสร้างในการเขียนโปรแกรมที่ชัดเจน ซึ่งมีรูปแบบของโครงสร้างโปรแกรม ดังนี้
1. ส่วนของการประกาศส่วนหัวของโปรแกรม
หรือที่เรียกว่า เฮดเดอร์ไฟล์ (Header File) เป็นการเรียกใช้เฮดเดอร์ไฟล์เข้ามาร่วมใช้งานภายในโปรแกรม โดยไฟล์เฮดเดอร์
เป็นไฟล์ที่ใช้ในการรวบรวมฟังก์ชั่นการทางานต่าง ๆ ที่สามารถเรียกใช้ได้เช่น ภายในเฮดเดอร์ไฟล์ stdio.h เป็นไฟล์เฮดเดอร์ที่รวบรวม
เกี่ยวกับฟังก์ชั่นมาตรฐานทางด้านการรับข้อมูล (Input) และแสดงผลข้อมูล (Output) ยกตัวอย่างเช่น ฟังก์ชั่น printf( ); เป็นฟังก์ชั่นในการ
แสดงผลข้อมูล ซึ่งบรรจุอยู่ในไฟล์ stdio.h เป็นต้น
2. ส่วนของชื่อฟังก์ชั่น
ในที่นี้ ฟังก์ชั่นที่กาหนดขึ้นมาชื่อฟังก์ชั่น main() โดยทุกโปรแกรมจะต้องมี
ฟังก์ชั่น main() ทาหน้าที่เป็นฟังก์ชั่นหลักในการทางานในการประมวลผลโปรแกรมทุกครั้ง โปรแกรมจะทาการประมวลผลที่ฟังก์ชั่น
main() เป็นฟังก์ชั่นแรก ซึ่งในการเขียนโปรแกรมภาษาซีทุกครั้ง
จะขาดฟังก์ชั่น main() ไม่ได้
3. ส่วนตัวโปรแกรม
ส่วนนี้เป็นส่วนในการเขียนคาสั่งต่าง ๆ เพื่อสั่งให้คอมพิวเตอร์ทางาน ในการเขียน
คาสั่งจะเขียนภายในเครื่องหมายปีกกาเปิด { และเครื่องหมายปีกกาปิด } โดยปกติส่วนของการเขียนโปรแกรมจะสามารถแบ่งออกได้
เป็น 2 ส่วนด้วยกัน คือ
1) ส่วนของการประกาศตัวแปร คือ ส่วนที่ใช้ในการกาหนดตัวแปรที่จะใช้งานในการเขียนโปรแกรม
2) ส่วนของคาสั่งหรือ ฟังก์ชั่นต่าง ๆ คือ ส่วนที่ใช้สาหรับในการพิมพ์คาสั่งและฟังก์ชั่นต่าง ๆ ซึ่งหลังจากพิมพ์ฟังก์ชั่น
เสร็จแล้วจะต้องปิดท้ายด้วยเครื่องหมายเซมิโคลอน ; เสมอ
4. ส่วนของการเปิดโปรแกรมและปิดโปรแกรม
ตามโครงสร้างของภาษาซี จะต้องมีการกาหนดจุดเริ่มต้นและจบโปรแกรม โดยในที่นี้ใช้เครื่องหมายปีกกาเปิด { ในการ
ระบุตาแหน่งการเริ่มต้นโปรแกรม และ ใช้เครื่องหมายปีกกาปิด }
ในการระบุตาแหน่งการจบโปรแกรม
5. การกาหนดตาแหน่ง หมายเหตุ (Comment)
ในการเขียนโปรแกรม ผู้เขียนสามารถเขียนส่วนคาอธิบาย หรือ หมายเหตุของโปรแกรมได้ ซึ่งส่วนของคาอธิบายหรือหมาย
เหตุดังกล่าว จะไม่ถูกแปลความหมายโดยคอมพิวเตอร์ ซึ่งวิธีในการเขียนคาอธิบาย หรือหมายเหตุ มี 2 แบบ คือ
1) การกาหนดหมายเหตุ 1 บรรทัด
ในการกาหนดหมายเหตุ 1 บรรทัด จะใช้เครื่องหมาย // ด้านหน้าข้อความที่ต้องการกาหนดหมายเหตุ เช่น
2) การกาหนดหมายเหตุหลายบรรทัด
ในการกาหนดหมายเหตุหลายบรรทัด จะใช้เครื่องหมาย /* ไว้ที่ตาแหน่งบรรทัดเริ่มต้น และ */ ไว้ที่ตาแหน่งบรรทัด
สุดท้าย หมายเหตุ เช่น
3.คาสั่งจัดเก็บข้อมูลลงหน่วยความจา
การจัดเก็บข้อมูลลงหน่วยความจาคอมพิวเตอร์ ภาษากาหนดให้ดาเนินการผ่านซื่อ(identifier)
ที่ผู้สร้างงานโปรแกรมเป็นผู้กาหนดเอง ระบบคอมพิวเตอร์จะจัดเก็บชื่อและตาแหน่งที่อยู่
(Address ) ในหน่วยความจา เพื่ออ้างอิงนาข้อมูลที่จัดเก็บนั้นมาใช้งาน การกาหนดชื่อที่ใช้
เก็บข้อมูลต้องทาภายใต้กฎเกณฑ์ และต้องศึกษาวิธีกาหนดลักษณะการจัดเก็บข้อมูลตามที่
ภาษากาหนดไว้ลักษณะการจัดเก็บข้อมูลมี 2 แบบคือ แบบค่าคงที่และแบบตัวแปร ทั้งนี้
ก่อนที่จะเขียนคาสั่งกาหนดการจัดเก็บข้อมูล ควรมีความรู้ในเรื่องชนิดข้อมูลก่อน
ชนิดข้อมูลแบบพื้นฐาน
การจัดเก็บข้อมูลลงหน่วยความจาทั้งแบค่าคงที่หรือแบบตัวแปร ต้องกาหนดชนิดข้อมูลให้ระบบรับทราบ ในที่นี้กล่าวถึงชนิดข้อมูลแบบ
พื้นฐาน 3 กลุ่มหลักเท่านั้น ตาราง ชนิดข้อมูลแบบพื้นฐาน
ชนิดข้อมูล ขอบเขตของข้อมูล อธิบาย
char -128 ถึง 127 เก็บข้อมูลแบบอักขระ
int -32768 ถึง32767 เก็บข้อมูลแบบตัวเลขจานวนเต็ม
float 3.4×10 ถึง 3.4×10 เก็บข้อมูลแบบตัวเลขทศนิยมตัวเลขหลังจุด 6หลัก
ตาราง ชนิดข้อมูลแบบพื้นฐาน
ข้อควรจา : ข้อมูลแบบข้อความใช้แบบข้อมูลแบบตัวแปรชุด เช่น char a [20] :
หมายเหตุ : ตารางแสดงชนิดข้อมูลของภาษาซีทุกชนิดแสดงในภาคผนวก
คาสั่งจัดเก็บข้อมูลแบบค่าคงที่
ประสิทธิภาพคาสั่ง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจาไม่สามารถเปลี่ยนแปลงได้
รูปแบบ : Const data_type var = data ;
อธิบาย : data_type คือที่ชนิดข้อมูลแบบพื้นฐาน
Var คือชื่อหน่วยความจาที่ผู้ใช้ต้องกาหนดตามกฎการตั้งชื่อ
Data คือข้อมูลที่กาหนดเป็นค่าคงที่
ข้อควรจา
กรณีข้อมูลมี 1 อักขระ กาหนดให้อยู่ใน ‘ ‘ (single quotation)
กรณีข้อมูลมีมากกว่า 1 อักขระ กาหนดให้อยู่ใน “ ” (double quotation)
กรณีข้อมูลเป็นชนิดตัวเลขใช้ในการคานวณไม่ต้องอยู่ใน ‘’ หรือ “ ”
คาสั่งจัดเก็บข้อมูลแบบตัวแปร
ประสิทธิภาพคาสั่ง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจาสามารถเปลี่ยนแปลงได้
รูปแบบ : 1 var_type var_name[,….];
รูปแบบ : 2 var_type var_name = data ;
อธิบาย : var_type คือหน่วยชนิดข้อมูลแบบพื้นฐาน
var name คือชื่อหน่วยความจา ที่ผู้ใช้ต้องกาหนดตามกฎการตั้งชื่อ
data คือข้อมูลที่กาหนดเป็นค่าเริ่มต้น (อาจมีหรือไม่ก็ได้)
หมายเหตุ : หากมีตัวแปรมากกว่า 1 ตัว แต่เป็นตัวแปรเก็บข้อมูลประเภทเดียว ใช้คอมม่า (,) คั่น
ตัวอย่างคาสั่ง : กาหนดคุณสมบัติให้ตัวแปรในการจัดเก็บข้อมูล
Char ans ;
List salary , bonus ;
Short value = 2;
4.คาสั่งควบคุมการทางานขั้นพื้นฐาน
คาสั่งที่ใช้ควบคุมการทางานขั้นพื้นฐานมี 3 กลุ่มคือ คาสั่งรับข้อมูลจากแป้นพิมพ์แล้วนาไปจัดเก็บหน่าย
ความจา (input ) การเขียนสมการคานวณโดยใช้นิพจน์ทางคณิตศาสตร์(Process) และคาสั่งแสดงผล
ข้อมูล หรือข้อมูลที่จัดเก็บในหน่วยความจา (Qutput )
คาสั่งแสดงผล PRINTF ( )
ประสิทธิภาพคาสั่ง : ใช้แสดงผล สิ่งต่อไปนี้ เช่น ข้อความ ข้อมูลจากค่าคงที่ หรือตัวแปรที่จอภาพ
รูปแบบ 1 : Printf (“ string_format” , data_list ) ;
รูปแบบ 2 : Printf (“string_format” ) ;
อธิบาย : string_format คือลักษณะของสิ่งต่อไปนี้ เช่น ข้อความ (text ) รหัสรูปแบบข้อมูล เช่น%d รหัสควบคุม เช่น n
Data_list คือข้อมูลแสดงผลอาจเป็นค่าคงที่ตัวแปร นิพจน์ หากมีหลายตัวใช้ , คั่น
รหัส format code ความหมาย
%c ใช้กับข้อมูลแบบ char
%d ใช้กับข้อมูลแบบ int เฉพาะฐาน10
%s ใช้กับข้อมูลแบบ string
ตาราง รหัสรูปแบบข้อมูลระดับพื้นฐาน
หมายเหตุ : รหัสรูปแบบข้อมูลรูปแบบ แสดงในภาคผนวก
ตัวอย่างคาสั่ง : ควบคุมการแสดงผลด้วย printf
Printf ( “ Data is %d n ” , score ) ;
อธิบาย : พิมพ์ข้อความคาว่า data is ตามด้วยค่าข้อมูลในหน่วยความจาตัว
แปรชื่อ score ซึ่งเป็นข้อมูลชนิดจานวนเต็ม (%) แล้วเลื่อนคอร์เซอร์ไปไว้
บรรทัดถัดไป (n)
คาสั่งรับข้อมูล : รับข้อมูลจากแป้ นพิมพ์แล้วจัดเก็บลงหน่วยความจาตัวแปร
รูปแบบ : Scanf ( “ string_format” , & address_list ) ;
อธิบาย : string_format คือรูปแบบการแสดงผลของข้อมูลเท่านั้น เช่น %d
Address_list คือการระบุตาแหน่งที่อยู่ในหน่วยความจาต้องใช้สัญลักษณ์&(Ampersand) นาหน้าชื่อตัวแปรเสมอ
ข้อควรจา : กรณีเป็นตัวแปรข้อความ (String) สามารถยกเว้นไม่ต้องใช้& นาหน้าได้
ตัวอย่างคาสั่ง : เขียนคาสั่งควบคุมการรับค่าจากแป้นพิมพ์ด้วย scanf
Scanf ( “%d ” , &score ) ;
อธิบาย : รับข้อมูลจากแป้นพิมพ์นาไปเก็บในหน่วยความจาชื่อ score เป็นข้อมูลประเภทจานวนเต็ม
คาสั่งประมวลผล : EXPRESSION
ประสิทธิภาพคาสั่ง : เขียนคาสั่งแบบนิพจน์เพื่อประมวลผล แล้วนาข้อมูลที่ได้ไปจัดเก็บในหน่วยความจาของตัวแปรที่ต้องกาหนดชื่อและ
ชนิดข้อมูลไว้แล้ว
รูปแบบ : Var = expression;
อธิบาย : var คือชื่อหน่วยความจาชนิดตัวแปร
Expression คือสมการนิพจน์ เช่น สูตรคานวณทางคณิตศาสตร์
ตัวอย่างคาสั่ง : นิพจน์ที่เป็นสูตรคานวณทางคณิตศาสตร์
Sum = a+b ;
อธิบาย : ให้นาค่าในหน่วยความจาตัวแปรชื่อ a กับ b มา+กันแล้วนาค่าไปเก็บในหน่วยความจาตัวแปรชื่อ sum
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
1. ส่วนป้อนข้อมูล ผู้ใช้ระบบงานป้อนค่า ; เก็บในหน่วยความจา x และป้อนค่า A เก็บในหน่วยความจา y ด้วยคาสั่ง
Printf ( “data x=” ) ; scanf ( “%d ,&x ) ;
Printf ( “data y=” ) ; scanf ( “%d ,&y ) ;
2. ส่วนประมวลผล ระบบจะนาค่าไปประมวลผลตามนิพจน์คณิตศาสตร์
r = 2 + 3 * 2 ; ได้คาตอบคือ 8
s = (2 + 3 ) * 2; ได้คาตอบคือ 10
t = 2 + 3 * 2-1 ; ได้คาตอบคือ 7
ทั้งนี้คอมพิวเตอร์ประมวลผล โดยยึดหลักลาดับความสาคัญของเครื่องหมายทางคณิตศาสตร์ เช่นคานวณเครื่องหมาย * ก่อนเครื่องหมาย +
3. ส่วนแสดงผล คาสั่งควบคุมให้แสดงผลลัพธ์
Printf ( “r = x + y * 2 = %d n” , r ) ;
Printf ( “r = (x + y X* 2 = %d n” , s ) ;
Printf ( “r = x + y * 2-1 = %d n” , t ) ;
5.คาสั่งแสดงผล-รับข้อมูล เฉพาะอักขระ
ภาษาซีมีคาสั่งแสดงผลและรับข้อมูลเฉพาะข้อมูลประเภท 8 อักขระ (char )ดังนี้
5.1 คาสั่ง putchar ( )
แสดงผลข้อมูลจากหน่วยความจาของตัวแปร ทางจอภาพครั้งละ1อักขระเท่านั้น
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
ž 1. กาหนดค่า ‘A’ เก็บในตัวแปรประเภท char ชื่อ word1 และกาหนดค่า ‘1’ เก็บในตัวแปรชื่อ word2 ด้วยคาสั่งchar word1=’A’ ,
word2=’1’
ž 2. เขียนคาสั่งควบคุมการแสดงผลทีละ 1 อักขระ โดยไม่ต้องใช้สัญลักษณ์ขึ้นบรรทัดใหม่ด้วยคาสั่งputchar(word1);
putcar(word2); จึงพิมพ์คาว่า A1 ที่จอภาพ
5.2คาสั่ง getchar ( )
รับข้อมูลจากแป้นพิมพ์ครั้งละ 1 อักขระ และแสดงอักขระที่จอภาพ จากนั้นต้องกดแป้นพิมพ์ที่ Enter เพื่อนาข้อมูลบันทึกลงหน่วยความจา
ด้วย
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
1.เขียนคาสั่งควบคุมการป้อนข้อมูลประเภทอักขระด้วยคาสั่ง
printf ( “Key 1 Character = “ ) ;
word = getchar ( );
หมายถึงป้อนอักขระ 1 ตัว เช่น a จะแสดงค่า ให้เห็นที่หน้าจอด้วย แล้ว ต้องกดแป้นEnter เพื่อนาข้อมูลบันทึกลงหน่วยความจาตัวแปร
ประเภท char ชื่อ word
2 . เขียนคาสั่งควบคุมการแสดงผลจากหน่วยความจา word จึงเห็นค่า a ( แทนที่ word)
printf ( “You key Character is = %cn”, word ) ;
5.3 คาสั่ง getch ( )
รับข้อมูลจากแป้นพิมพ์ครั้งละ 1 อักขระ แต่ ไม่ปรากฏ อักษรบนจอภาพ และ ไม่ต้องกดแป้น Enter
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
1.เขียนคาสั่งควบคุมการป้อนข้อมูลประเภทอักขระด้วยคาสั่ง
printf ( “Key 1 Character = “ ) ;
word = getch ( );
หมายถึงป้อนค่าใดทางแป้นพิมพ์เป็นอักขระ 1 ตัว เช่น a จะ ไม่แสดง ค่าให้เห็นที่หน้าจอไม่ต้อง กดแป้น Enter เพื่อนาข้อมูลบันทึกลง
หน่วยความจาตัวแปรประเภท char ชื่อ word
2.เขียนคาสั่งควบคุมการแสดงผลจากหน่วยความจา word จึงเห็นค่า a ( แทนที่ word )
printf ( “You key Character is = %cn”, word ) ;
5.4 คาสั่ง getche( )
รับข้อมูลจากแป้นพิมพ์ครั้งละ 1 อักขระ และ แสดง อักษรบนจอภาพ และ ไม่ต้องกดแป้น Enter
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
1.เขียนคาสั่งควบคุมการป้อนข้อมูลประเภทอักขระด้วยคาสั่ง
printf ( “Key 1 Character = “ ) ;
word = getche ( );
หมายถึงป้อนค่าใดทางแป้นพิมพ์เป็นอักขระ 1 ตัว เช่น a จะ แสดง ค่าให้เห็นที่หน้าจอ และไม่ต้อง กดแป้น Enter เพื่อนาข้อมูลบันทึกลง
หน่วยความจาตัวแปรประเภท char ชื่อ word
2.เขียนคาสั่งควบคุมการแสดงผลเพื่อแสดงค่าจากหน่วยความจา word จึงเห็นค่า a ( แทนทิ่ word )
printf ( “You key Character is = %cn”, word ) ;
6.คาสั่งแสดงผล-เฉพาะข้อมูล เฉพาะข้อความ
ภาษาซีมีคาสั่งใช้ในการรับข้อมูลเฉพาะประเภทข้อความ (String) ในภาษาซีคือชนิดข้อมูล char [n] จัดเก็บในหน่วยความจา และแสดงผล
ข้อมูลประเภทข้อความเท่านั้นมีรายละเอียดดังนี้
6.1.คาสั่ง puts( )
แสดงผลข้อมูลเฉพาะประเภทข้อความทางจอภาพครั้งละ 1 ข้อความ
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
1.เขียนคาสั่งกาหนดค่าข้อความเก็บในตัวแปรชื่อ word
Char word [15] = “*Example * “ ;
2.เขียนคาสั่งควบคุมการแสดงผลในลักษณะข้อความด้วย puts
Puts ( word ) ;
Puts (“**************”);
6.2คาสั่ง gets ( )
รับข้อมูล ข้อความ จากแป้นพิมพ์และต้องกดแป้น Enter
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
1.เขียนคาสั่งให้รับข้อมูล ชนิดข้อความ จากแป้นพิมพ์และต้อง กดแป้น Enter เพื่อนาข้อความบันทึกลงตัวแปรชนิดข้อความ ด้วยคาสั่ง gets
(word) ;
2.เขียนคาสั่งควบคุมให้แสดงผลลักษณะข้อความด้วย
printf ( “You name is = %sn”, word ) ;
7.กรณีศึกษาการใช้คาสั่งควบคุมขั้นพื้นฐาน
7.1.คาสั่ง puts( )
แสดงผลข้อมูลเฉพาะประเภทข้อความทางจอภาพครั้งละ 1 ข้อความ
รูปแบบ puts ( string_argument) ;
อธิบาย string_argument คือ ข้อมูลชนิดข้อความ
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
1.เขียนคาสั่งกาหนดค่าข้อความเก็บในตัวแปรชื่อ word
Char word [15] = “*Example* “ ;
2.เขียนคาสั่งควบคุมการแสดงผลในลักษณะข้อความด้วย puts
Puts ( word ) ;
Puts (“**************”);
แนวคิดในการเขียนคาสั่งควบคุมการทางาน
1.เขียนคาสั่งกาหนดค่าข้อความเก็บในตัวแปรชื่อ word
Char word [15] = “*Example* “ ;
2.เขียนคาสั่งควบคุมการแสดงผลในลักษณะข้อความด้วย puts
Puts ( word ) ;
Puts (“**************”);
7.2คาสั่ง gets ( )
รับข้อมูล ข้อความ จากแป้นพิมพ์และต้องกดแป้น Enter
รูปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจาของตัวแปร gets ( );
รูปแบบ 2 นาข้อมูลจัดเก็บลงหน่วยความจาของตัวแปร
string_var =gets ( ) ;
อธิบาย : string_var คือ ข้อมูลชนิดข้อความ
แนวคิดในการเขียนคาสั่งควบคมการทางาน
1.เขียนคาสั่งให้รับข้อมูล ชนิดข้อความ จากแป้นพิมพ์และต้อง กดแป้น Enter เพื่อนาข้อความบันทึกลงตัวแปรชนิดข้อความ ด้วย
คาสั่ง gets (word) ;
2.เขียนคาสั่งควบคุมให้แสดงผลลักษณะข้อความด้วย
printf ( “You name is = %sn”, word ) ;
สมาชิก
1. นาย ณัฐพงศ์ กือเย็น เลขที่
2. นางสาว สิริวรรรณ คาเตจ๊ะ เลขที่
3. นางสาว เบญจรัตน์ ศรอารา เลขที่
4. นางสาว กนกวรรณ ลัดดากุล เลขที่
5. นางสาว สโรชา บุญช่วย เลขที่
6. นางสาว เพ็ญพิชชา เทียนชัย เลขที่

More Related Content

What's hot

การประกาศตัวแปรในภาษาซี
การประกาศตัวแปรในภาษาซีการประกาศตัวแปรในภาษาซี
การประกาศตัวแปรในภาษาซีmycomc55
 
การเขียนคำสั่งขั้นพื้นฐาน(ภาษาC)
การเขียนคำสั่งขั้นพื้นฐาน(ภาษาC)การเขียนคำสั่งขั้นพื้นฐาน(ภาษาC)
การเขียนคำสั่งขั้นพื้นฐาน(ภาษาC)Visaitus Palasak
 
ใบความรู้ที่ 5
ใบความรู้ที่  5ใบความรู้ที่  5
ใบความรู้ที่ 5SubLt Masu
 
บทที่1 พื้นฐานโปรแกรมภาษาซี
บทที่1 พื้นฐานโปรแกรมภาษาซีบทที่1 พื้นฐานโปรแกรมภาษาซี
บทที่1 พื้นฐานโปรแกรมภาษาซีKomkai Pawuttanon
 
การเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุมการเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุมKashima Seto
 
เครื่องหมายและการดำเนินการในภาษาซี
เครื่องหมายและการดำเนินการในภาษาซีเครื่องหมายและการดำเนินการในภาษาซี
เครื่องหมายและการดำเนินการในภาษาซีเทวัญ ภูพานทอง
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา JavaItslvle Parin
 
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซีใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซีNattapon
 
การเขียนคำสั่งข้อมูลขั้นพื้นฐาน
การเขียนคำสั่งข้อมูลขั้นพื้นฐานการเขียนคำสั่งข้อมูลขั้นพื้นฐาน
การเขียนคำสั่งข้อมูลขั้นพื้นฐานRatchanok Nutyimyong
 
บทที่ 2
บทที่  2  บทที่  2
บทที่ 2 1118192239
 

What's hot (19)

บทที่ 2
บทที่ 2บทที่ 2
บทที่ 2
 
ภาษา C#
ภาษา C#ภาษา C#
ภาษา C#
 
การประกาศตัวแปรในภาษาซี
การประกาศตัวแปรในภาษาซีการประกาศตัวแปรในภาษาซี
การประกาศตัวแปรในภาษาซี
 
การเขียนคำสั่งขั้นพื้นฐาน(ภาษาC)
การเขียนคำสั่งขั้นพื้นฐาน(ภาษาC)การเขียนคำสั่งขั้นพื้นฐาน(ภาษาC)
การเขียนคำสั่งขั้นพื้นฐาน(ภาษาC)
 
ใบความรู้ที่ 5
ใบความรู้ที่  5ใบความรู้ที่  5
ใบความรู้ที่ 5
 
3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล
 
ตัวแปรและคำสงวน
ตัวแปรและคำสงวนตัวแปรและคำสงวน
ตัวแปรและคำสงวน
 
3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล
 
บทที่1 พื้นฐานโปรแกรมภาษาซี
บทที่1 พื้นฐานโปรแกรมภาษาซีบทที่1 พื้นฐานโปรแกรมภาษาซี
บทที่1 พื้นฐานโปรแกรมภาษาซี
 
การเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุมการเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุม
 
เครื่องหมายและการดำเนินการในภาษาซี
เครื่องหมายและการดำเนินการในภาษาซีเครื่องหมายและการดำเนินการในภาษาซี
เครื่องหมายและการดำเนินการในภาษาซี
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Java
 
Know1 3
Know1 3Know1 3
Know1 3
 
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซีใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
 
การเขียนคำสั่งข้อมูลขั้นพื้นฐาน
การเขียนคำสั่งข้อมูลขั้นพื้นฐานการเขียนคำสั่งข้อมูลขั้นพื้นฐาน
การเขียนคำสั่งข้อมูลขั้นพื้นฐาน
 
บทที่ 2
บทที่  2  บทที่  2
บทที่ 2
 
งาน
งานงาน
งาน
 
การเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุมการเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุม
 
3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน
 

Viewers also liked

Higiene y seguridad ingustrial
Higiene y seguridad ingustrialHigiene y seguridad ingustrial
Higiene y seguridad ingustrialstiven sotelo
 
tucka_projectdpart1final
tucka_projectdpart1finaltucka_projectdpart1final
tucka_projectdpart1finalAbi Tuck
 
Arrowhead Diagnostic Paragraph
Arrowhead Diagnostic ParagraphArrowhead Diagnostic Paragraph
Arrowhead Diagnostic ParagraphVictoria Luhrs
 
Bruno Mars
Bruno MarsBruno Mars
Bruno Marsferchhhh
 
โครงงานบอร์ดอาหารไทยสี่ภาค
โครงงานบอร์ดอาหารไทยสี่ภาคโครงงานบอร์ดอาหารไทยสี่ภาค
โครงงานบอร์ดอาหารไทยสี่ภาคMontra Songsee
 
wowecoin castor oil business :Castor business plan
wowecoin castor oil business :Castor business planwowecoin castor oil business :Castor business plan
wowecoin castor oil business :Castor business planWowIndia Atish Kumar
 
When In Gout.
When In Gout.When In Gout.
When In Gout.amitgir
 
How should business markets be segmented
How should business markets be segmentedHow should business markets be segmented
How should business markets be segmentedSameer Mathur
 
Improving Patient Care-Julia Clarke and Hannah Roy presentation
Improving Patient Care-Julia Clarke and  Hannah Roy presentationImproving Patient Care-Julia Clarke and  Hannah Roy presentation
Improving Patient Care-Julia Clarke and Hannah Roy presentationmckenln
 
Resume.Kuntz.Robert
Resume.Kuntz.RobertResume.Kuntz.Robert
Resume.Kuntz.RobertRobert Kuntz
 
The NHS Five Year Plan-Andy Bell presentation
The NHS Five Year Plan-Andy Bell presentationThe NHS Five Year Plan-Andy Bell presentation
The NHS Five Year Plan-Andy Bell presentationmckenln
 

Viewers also liked (16)

Higiene y seguridad ingustrial
Higiene y seguridad ingustrialHigiene y seguridad ingustrial
Higiene y seguridad ingustrial
 
Freddygil ae1.pptx.
Freddygil ae1.pptx.Freddygil ae1.pptx.
Freddygil ae1.pptx.
 
tucka_projectdpart1final
tucka_projectdpart1finaltucka_projectdpart1final
tucka_projectdpart1final
 
Yesenia
YeseniaYesenia
Yesenia
 
Resume
ResumeResume
Resume
 
Resume
ResumeResume
Resume
 
Arrowhead Diagnostic Paragraph
Arrowhead Diagnostic ParagraphArrowhead Diagnostic Paragraph
Arrowhead Diagnostic Paragraph
 
Bruno Mars
Bruno MarsBruno Mars
Bruno Mars
 
โครงงานบอร์ดอาหารไทยสี่ภาค
โครงงานบอร์ดอาหารไทยสี่ภาคโครงงานบอร์ดอาหารไทยสี่ภาค
โครงงานบอร์ดอาหารไทยสี่ภาค
 
wowecoin castor oil business :Castor business plan
wowecoin castor oil business :Castor business planwowecoin castor oil business :Castor business plan
wowecoin castor oil business :Castor business plan
 
When In Gout.
When In Gout.When In Gout.
When In Gout.
 
How should business markets be segmented
How should business markets be segmentedHow should business markets be segmented
How should business markets be segmented
 
Improving Patient Care-Julia Clarke and Hannah Roy presentation
Improving Patient Care-Julia Clarke and  Hannah Roy presentationImproving Patient Care-Julia Clarke and  Hannah Roy presentation
Improving Patient Care-Julia Clarke and Hannah Roy presentation
 
Resume.Kuntz.Robert
Resume.Kuntz.RobertResume.Kuntz.Robert
Resume.Kuntz.Robert
 
The NHS Five Year Plan-Andy Bell presentation
The NHS Five Year Plan-Andy Bell presentationThe NHS Five Year Plan-Andy Bell presentation
The NHS Five Year Plan-Andy Bell presentation
 
Speak Powerfully
Speak PowerfullySpeak Powerfully
Speak Powerfully
 

Similar to การเขียนคำสั่งควบคุมขั้นพื้นฐาน

การเขียนคำสั่งควบคุมขั้นพื้นฐาน
การเขียนคำสั่งควบคุมขั้นพื้นฐานการเขียนคำสั่งควบคุมขั้นพื้นฐาน
การเขียนคำสั่งควบคุมขั้นพื้นฐานVi Vik Viv
 
บทที่4 เมธอด (METHOD)
บทที่4 เมธอด (METHOD)บทที่4 เมธอด (METHOD)
บทที่4 เมธอด (METHOD)N'Name Phuthiphong
 
1. ประวัติภาษาซี
1. ประวัติภาษาซี1. ประวัติภาษาซี
1. ประวัติภาษาซีmansuang1978
 
โครงสร้างของโปรแกรมภาษาซี
โครงสร้างของโปรแกรมภาษาซีโครงสร้างของโปรแกรมภาษาซี
โครงสร้างของโปรแกรมภาษาซีณัฐพล บัวพันธ์
 
ตัวแปรชุดนำเสนอ
ตัวแปรชุดนำเสนอตัวแปรชุดนำเสนอ
ตัวแปรชุดนำเสนอPz'Peem Kanyakamon
 

Similar to การเขียนคำสั่งควบคุมขั้นพื้นฐาน (19)

การเขียนคำสั่งควบคุมขั้นพื้นฐาน
การเขียนคำสั่งควบคุมขั้นพื้นฐานการเขียนคำสั่งควบคุมขั้นพื้นฐาน
การเขียนคำสั่งควบคุมขั้นพื้นฐาน
 
บทที่4 เมธอด (METHOD)
บทที่4 เมธอด (METHOD)บทที่4 เมธอด (METHOD)
บทที่4 เมธอด (METHOD)
 
ภาษาซึี
ภาษาซึีภาษาซึี
ภาษาซึี
 
Database
DatabaseDatabase
Database
 
Work
WorkWork
Work
 
ตัวแปรและคำสงวน
ตัวแปรและคำสงวนตัวแปรและคำสงวน
ตัวแปรและคำสงวน
 
ตัวแปรและคำสงวน
ตัวแปรและคำสงวนตัวแปรและคำสงวน
ตัวแปรและคำสงวน
 
3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน
 
1. ประวัติภาษาซี
1. ประวัติภาษาซี1. ประวัติภาษาซี
1. ประวัติภาษาซี
 
lesson 3
lesson 3lesson 3
lesson 3
 
โครงสร้างของโปรแกรมภาษาซี
โครงสร้างของโปรแกรมภาษาซีโครงสร้างของโปรแกรมภาษาซี
โครงสร้างของโปรแกรมภาษาซี
 
Variabledoc
VariabledocVariabledoc
Variabledoc
 
3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน
 
ภาษาซี
ภาษาซีภาษาซี
ภาษาซี
 
โครงสร้างของภาษา C
โครงสร้างของภาษา Cโครงสร้างของภาษา C
โครงสร้างของภาษา C
 
Know 1 1
Know 1 1Know 1 1
Know 1 1
 
โครงสร้างของภาษา C
โครงสร้างของภาษา Cโครงสร้างของภาษา C
โครงสร้างของภาษา C
 
ตัวแปรชุดนำเสนอ
ตัวแปรชุดนำเสนอตัวแปรชุดนำเสนอ
ตัวแปรชุดนำเสนอ
 
SQL By Sayuri
SQL By Sayuri SQL By Sayuri
SQL By Sayuri
 

More from BoOm mm

คำสั่งควบคุมโปรแกรม
คำสั่งควบคุมโปรแกรม คำสั่งควบคุมโปรแกรม
คำสั่งควบคุมโปรแกรม BoOm mm
 
งานJava
งานJavaงานJava
งานJavaBoOm mm
 
โปรแกรม Net beans
โปรแกรม Net beansโปรแกรม Net beans
โปรแกรม Net beansBoOm mm
 
คลาสและการเขียนโปรแกรมเชิงวัตถุ
คลาสและการเขียนโปรแกรมเชิงวัตถุคลาสและการเขียนโปรแกรมเชิงวัตถุ
คลาสและการเขียนโปรแกรมเชิงวัตถุBoOm mm
 
อาหารไทย
อาหารไทยอาหารไทย
อาหารไทยBoOm mm
 
ก้าวไปอีกขั้นกับ GPS เครื่องเล่นเกมส์PC
ก้าวไปอีกขั้นกับ GPS เครื่องเล่นเกมส์PCก้าวไปอีกขั้นกับ GPS เครื่องเล่นเกมส์PC
ก้าวไปอีกขั้นกับ GPS เครื่องเล่นเกมส์PCBoOm mm
 
ข่าว It-new (1)
ข่าว It-new (1)ข่าว It-new (1)
ข่าว It-new (1)BoOm mm
 
ข่าว It-new
ข่าว It-newข่าว It-new
ข่าว It-newBoOm mm
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระBoOm mm
 
Eye-Plug Camera
Eye-Plug CameraEye-Plug Camera
Eye-Plug CameraBoOm mm
 
ข่าว It
ข่าว Itข่าว It
ข่าว ItBoOm mm
 
Windows10
Windows10Windows10
Windows10BoOm mm
 
ข่าวไอที
ข่าวไอทีข่าวไอที
ข่าวไอทีBoOm mm
 
IT NEWS
IT NEWS  IT NEWS
IT NEWS BoOm mm
 
ธารารัตน์ 28 ม52
ธารารัตน์ 28 ม52ธารารัตน์ 28 ม52
ธารารัตน์ 28 ม52BoOm mm
 
กลุ่ม4สารสนเทศ 5.2
กลุ่ม4สารสนเทศ 5.2กลุ่ม4สารสนเทศ 5.2
กลุ่ม4สารสนเทศ 5.2BoOm mm
 

More from BoOm mm (17)

คำสั่งควบคุมโปรแกรม
คำสั่งควบคุมโปรแกรม คำสั่งควบคุมโปรแกรม
คำสั่งควบคุมโปรแกรม
 
งานJava
งานJavaงานJava
งานJava
 
โปรแกรม Net beans
โปรแกรม Net beansโปรแกรม Net beans
โปรแกรม Net beans
 
คลาสและการเขียนโปรแกรมเชิงวัตถุ
คลาสและการเขียนโปรแกรมเชิงวัตถุคลาสและการเขียนโปรแกรมเชิงวัตถุ
คลาสและการเขียนโปรแกรมเชิงวัตถุ
 
อาหารไทย
อาหารไทยอาหารไทย
อาหารไทย
 
ก้าวไปอีกขั้นกับ GPS เครื่องเล่นเกมส์PC
ก้าวไปอีกขั้นกับ GPS เครื่องเล่นเกมส์PCก้าวไปอีกขั้นกับ GPS เครื่องเล่นเกมส์PC
ก้าวไปอีกขั้นกับ GPS เครื่องเล่นเกมส์PC
 
ข่าว It-new (1)
ข่าว It-new (1)ข่าว It-new (1)
ข่าว It-new (1)
 
ข่าว It-new
ข่าว It-newข่าว It-new
ข่าว It-new
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
 
Eye-Plug Camera
Eye-Plug CameraEye-Plug Camera
Eye-Plug Camera
 
ข่าว It
ข่าว Itข่าว It
ข่าว It
 
Windows10
Windows10Windows10
Windows10
 
ข่าวไอที
ข่าวไอทีข่าวไอที
ข่าวไอที
 
IT NEWS
IT NEWS  IT NEWS
IT NEWS
 
it new
it newit new
it new
 
ธารารัตน์ 28 ม52
ธารารัตน์ 28 ม52ธารารัตน์ 28 ม52
ธารารัตน์ 28 ม52
 
กลุ่ม4สารสนเทศ 5.2
กลุ่ม4สารสนเทศ 5.2กลุ่ม4สารสนเทศ 5.2
กลุ่ม4สารสนเทศ 5.2
 

การเขียนคำสั่งควบคุมขั้นพื้นฐาน

  • 2. 1.ลักษณะการทางานของภาษาซี ภาษาซีเป็นภาษาที่มีการพัฒนาการมาอย่างต่อเนื่อง ภาษาซีรุ่นแรกทางานภายใต้ ระบบปฏิบัติการคอส (cos) ปัจจุบันทางานภายใต้ระบบปฏิบัติการ วินโดวส์ (Windows) ภาษาซีใช้วิธีแปลรหัสคาสั่งให้เป็นเลขฐานสอง เรียกว่า คอมไพเลอร์ การศึกษาภูมิหลังการเป็นมาของภาษาซีและกระบวนการ แปลภาษาจะช่วยให้ผู้ใช้ภาษาซีในรุ่นและบริษัทผู้ผลิตแตกต่างกัน สามารถใช้ ภาษาได้อย่างเข้าใจมากขึ้น
  • 3. ความเป็นมาของภาษาซี ภาษาซีได้รับการพัฒนาเมื่อปี ค.ศ.1972 โดยนายเดนนิส ริตซี่ ตั้งชื่อว่าซีเพราะพัฒนามาจากภาษา BCLP และภาษา B ในช่วงแรกใช้ทดลองเขียนคาสั่งควบคุมในห้องปฏิบัติการเบล (Bell Laboratoorics) เท่านั้น เมื่อปี ค.ศ.1978 นายไบรอัน เคอร์นิกฮัน และ นายเดนนิส ริตซี่ ร่วมกันกาหนดนิยามรายละเอียด ของภาษาซี เผยแพร่ความรู้โดยจัดทาหนังสือ The C Programming Language มีหลายบริษัท ให้ความ สนใจนาไปพัฒนาต่อ จนมีภาษาซีหลายรูปแบบและแพร่หลายไปทั่วโลก แต่ยังไม่มีมาตรฐานคาสั่ง เพื่อให้สามารถใช้งานร่วมกันได้ดังนั้นเมื่อปี ค.ศ.1988 นายริตซี่ ได้ร่วมกับสถาบันกาหนดมาตรฐาน ANSI สร้างมาตรฐานภาษาซีขึ้นมามีผลให้โปรแกรมคาสั่งที่สร้างด้วยภาษาซีสังกัดบริษัทใดๆก็ตามที่ใช้ คาสั่งมาตรฐานของภาษาสามารถนามาทางานร่วมกันได้
  • 4. การทางานของตอมไพเลอร์ภาษาซี คอมไพเลอร์เป็นโปรแกรมที่ได้รับการพัฒนามาเพื่อแปลภาษาคอมพิวเตอร์รูปแบบหนึ่งมักใช้กับโปรแกรมเชิงโครงสร้าง ลักษณะการแปล จะอ่านรหัสคาสั่งทั้งโปรแกรมตั้งแต่บรรทัดคาสั่งแรกถึงบรรทัดสุดท้าย หากมีข้อผิดพลาดจะรายงานทุกตาแหน่งคาสั่งที่ใช้ผิดกฎไวยากรณ์ ของภาษา กระบวนการคอมไพเลอร์โปรแกรมคาสั่งของภาษาซี มีดังนี้ 1.จัดทาโปรแกรมต้นฉบับ (Source Program) หลังจากพิมพ์คาสั่งงาน ตามโครงสร้างภาษาที่สมบูรณ์แล้วทุกส่วนประกอบ ให้บันทึกโดย กาหนดชนิดงานเป็น .c เช่น work.c
  • 5. 2.การแปลรหัสคาสั่งเป็นภาษาเครื่อง (Compile) หรือการบิวด์ (Build) เครื่องจะตรวจสอบคาสั่งทีละคาสั่ง เพื่อวิเคราะห์ว่าใช้งานได้ถูกต้อง ตามรูปแบบไวยากรณ์ที่ภาษาซีกาหนดไว้หรือหากมีข้อผิดพลาดจะแจ้งให้ทราบ หากไม่มีข้อผิดพลาดจะไปกระบวนการ3 3.การเชื่อมโยงโปรแกรม (Link) ภาษาซีมีฟังก์ชันมาตรฐานให้ใช้งาน เช่น printf() ซึ่งจัดเก็บไว้ในเฮดเดอร์ไพล์ หรือเรียกว่า ไลบรารี ใน ตาแหน่งที่กาหนดชื่อแตกต่างกันไป ผู้ใช้ต้องศึกษาและเรียกใช้เฮดเดอร์ไฟล์กับฟังก์ชันให้สัมพันธ์เรียกว่าเชื่อมโยงกับไลบรารี กระบวนการ นี้ได้ผลลัพธ์เป็นไฟล์ชนิด .exe
  • 6. 2.ส่วนประกอบในโครงสร้างภาษาซี ภาษาซีเป็นภาษาที่มีโครงสร้างในการเขียนโปรแกรมที่ชัดเจน ซึ่งมีรูปแบบของโครงสร้างโปรแกรม ดังนี้ 1. ส่วนของการประกาศส่วนหัวของโปรแกรม หรือที่เรียกว่า เฮดเดอร์ไฟล์ (Header File) เป็นการเรียกใช้เฮดเดอร์ไฟล์เข้ามาร่วมใช้งานภายในโปรแกรม โดยไฟล์เฮดเดอร์ เป็นไฟล์ที่ใช้ในการรวบรวมฟังก์ชั่นการทางานต่าง ๆ ที่สามารถเรียกใช้ได้เช่น ภายในเฮดเดอร์ไฟล์ stdio.h เป็นไฟล์เฮดเดอร์ที่รวบรวม เกี่ยวกับฟังก์ชั่นมาตรฐานทางด้านการรับข้อมูล (Input) และแสดงผลข้อมูล (Output) ยกตัวอย่างเช่น ฟังก์ชั่น printf( ); เป็นฟังก์ชั่นในการ แสดงผลข้อมูล ซึ่งบรรจุอยู่ในไฟล์ stdio.h เป็นต้น 2. ส่วนของชื่อฟังก์ชั่น ในที่นี้ ฟังก์ชั่นที่กาหนดขึ้นมาชื่อฟังก์ชั่น main() โดยทุกโปรแกรมจะต้องมี ฟังก์ชั่น main() ทาหน้าที่เป็นฟังก์ชั่นหลักในการทางานในการประมวลผลโปรแกรมทุกครั้ง โปรแกรมจะทาการประมวลผลที่ฟังก์ชั่น main() เป็นฟังก์ชั่นแรก ซึ่งในการเขียนโปรแกรมภาษาซีทุกครั้ง จะขาดฟังก์ชั่น main() ไม่ได้
  • 7. 3. ส่วนตัวโปรแกรม ส่วนนี้เป็นส่วนในการเขียนคาสั่งต่าง ๆ เพื่อสั่งให้คอมพิวเตอร์ทางาน ในการเขียน คาสั่งจะเขียนภายในเครื่องหมายปีกกาเปิด { และเครื่องหมายปีกกาปิด } โดยปกติส่วนของการเขียนโปรแกรมจะสามารถแบ่งออกได้ เป็น 2 ส่วนด้วยกัน คือ 1) ส่วนของการประกาศตัวแปร คือ ส่วนที่ใช้ในการกาหนดตัวแปรที่จะใช้งานในการเขียนโปรแกรม 2) ส่วนของคาสั่งหรือ ฟังก์ชั่นต่าง ๆ คือ ส่วนที่ใช้สาหรับในการพิมพ์คาสั่งและฟังก์ชั่นต่าง ๆ ซึ่งหลังจากพิมพ์ฟังก์ชั่น เสร็จแล้วจะต้องปิดท้ายด้วยเครื่องหมายเซมิโคลอน ; เสมอ 4. ส่วนของการเปิดโปรแกรมและปิดโปรแกรม ตามโครงสร้างของภาษาซี จะต้องมีการกาหนดจุดเริ่มต้นและจบโปรแกรม โดยในที่นี้ใช้เครื่องหมายปีกกาเปิด { ในการ ระบุตาแหน่งการเริ่มต้นโปรแกรม และ ใช้เครื่องหมายปีกกาปิด } ในการระบุตาแหน่งการจบโปรแกรม
  • 8. 5. การกาหนดตาแหน่ง หมายเหตุ (Comment) ในการเขียนโปรแกรม ผู้เขียนสามารถเขียนส่วนคาอธิบาย หรือ หมายเหตุของโปรแกรมได้ ซึ่งส่วนของคาอธิบายหรือหมาย เหตุดังกล่าว จะไม่ถูกแปลความหมายโดยคอมพิวเตอร์ ซึ่งวิธีในการเขียนคาอธิบาย หรือหมายเหตุ มี 2 แบบ คือ 1) การกาหนดหมายเหตุ 1 บรรทัด ในการกาหนดหมายเหตุ 1 บรรทัด จะใช้เครื่องหมาย // ด้านหน้าข้อความที่ต้องการกาหนดหมายเหตุ เช่น
  • 9. 2) การกาหนดหมายเหตุหลายบรรทัด ในการกาหนดหมายเหตุหลายบรรทัด จะใช้เครื่องหมาย /* ไว้ที่ตาแหน่งบรรทัดเริ่มต้น และ */ ไว้ที่ตาแหน่งบรรทัด สุดท้าย หมายเหตุ เช่น
  • 10. 3.คาสั่งจัดเก็บข้อมูลลงหน่วยความจา การจัดเก็บข้อมูลลงหน่วยความจาคอมพิวเตอร์ ภาษากาหนดให้ดาเนินการผ่านซื่อ(identifier) ที่ผู้สร้างงานโปรแกรมเป็นผู้กาหนดเอง ระบบคอมพิวเตอร์จะจัดเก็บชื่อและตาแหน่งที่อยู่ (Address ) ในหน่วยความจา เพื่ออ้างอิงนาข้อมูลที่จัดเก็บนั้นมาใช้งาน การกาหนดชื่อที่ใช้ เก็บข้อมูลต้องทาภายใต้กฎเกณฑ์ และต้องศึกษาวิธีกาหนดลักษณะการจัดเก็บข้อมูลตามที่ ภาษากาหนดไว้ลักษณะการจัดเก็บข้อมูลมี 2 แบบคือ แบบค่าคงที่และแบบตัวแปร ทั้งนี้ ก่อนที่จะเขียนคาสั่งกาหนดการจัดเก็บข้อมูล ควรมีความรู้ในเรื่องชนิดข้อมูลก่อน
  • 11. ชนิดข้อมูลแบบพื้นฐาน การจัดเก็บข้อมูลลงหน่วยความจาทั้งแบค่าคงที่หรือแบบตัวแปร ต้องกาหนดชนิดข้อมูลให้ระบบรับทราบ ในที่นี้กล่าวถึงชนิดข้อมูลแบบ พื้นฐาน 3 กลุ่มหลักเท่านั้น ตาราง ชนิดข้อมูลแบบพื้นฐาน ชนิดข้อมูล ขอบเขตของข้อมูล อธิบาย char -128 ถึง 127 เก็บข้อมูลแบบอักขระ int -32768 ถึง32767 เก็บข้อมูลแบบตัวเลขจานวนเต็ม float 3.4×10 ถึง 3.4×10 เก็บข้อมูลแบบตัวเลขทศนิยมตัวเลขหลังจุด 6หลัก ตาราง ชนิดข้อมูลแบบพื้นฐาน ข้อควรจา : ข้อมูลแบบข้อความใช้แบบข้อมูลแบบตัวแปรชุด เช่น char a [20] : หมายเหตุ : ตารางแสดงชนิดข้อมูลของภาษาซีทุกชนิดแสดงในภาคผนวก
  • 12. คาสั่งจัดเก็บข้อมูลแบบค่าคงที่ ประสิทธิภาพคาสั่ง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจาไม่สามารถเปลี่ยนแปลงได้ รูปแบบ : Const data_type var = data ; อธิบาย : data_type คือที่ชนิดข้อมูลแบบพื้นฐาน Var คือชื่อหน่วยความจาที่ผู้ใช้ต้องกาหนดตามกฎการตั้งชื่อ Data คือข้อมูลที่กาหนดเป็นค่าคงที่ ข้อควรจา กรณีข้อมูลมี 1 อักขระ กาหนดให้อยู่ใน ‘ ‘ (single quotation) กรณีข้อมูลมีมากกว่า 1 อักขระ กาหนดให้อยู่ใน “ ” (double quotation) กรณีข้อมูลเป็นชนิดตัวเลขใช้ในการคานวณไม่ต้องอยู่ใน ‘’ หรือ “ ”
  • 13. คาสั่งจัดเก็บข้อมูลแบบตัวแปร ประสิทธิภาพคาสั่ง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจาสามารถเปลี่ยนแปลงได้ รูปแบบ : 1 var_type var_name[,….]; รูปแบบ : 2 var_type var_name = data ; อธิบาย : var_type คือหน่วยชนิดข้อมูลแบบพื้นฐาน var name คือชื่อหน่วยความจา ที่ผู้ใช้ต้องกาหนดตามกฎการตั้งชื่อ data คือข้อมูลที่กาหนดเป็นค่าเริ่มต้น (อาจมีหรือไม่ก็ได้) หมายเหตุ : หากมีตัวแปรมากกว่า 1 ตัว แต่เป็นตัวแปรเก็บข้อมูลประเภทเดียว ใช้คอมม่า (,) คั่น ตัวอย่างคาสั่ง : กาหนดคุณสมบัติให้ตัวแปรในการจัดเก็บข้อมูล Char ans ; List salary , bonus ; Short value = 2;
  • 14. 4.คาสั่งควบคุมการทางานขั้นพื้นฐาน คาสั่งที่ใช้ควบคุมการทางานขั้นพื้นฐานมี 3 กลุ่มคือ คาสั่งรับข้อมูลจากแป้นพิมพ์แล้วนาไปจัดเก็บหน่าย ความจา (input ) การเขียนสมการคานวณโดยใช้นิพจน์ทางคณิตศาสตร์(Process) และคาสั่งแสดงผล ข้อมูล หรือข้อมูลที่จัดเก็บในหน่วยความจา (Qutput )
  • 15. คาสั่งแสดงผล PRINTF ( ) ประสิทธิภาพคาสั่ง : ใช้แสดงผล สิ่งต่อไปนี้ เช่น ข้อความ ข้อมูลจากค่าคงที่ หรือตัวแปรที่จอภาพ รูปแบบ 1 : Printf (“ string_format” , data_list ) ; รูปแบบ 2 : Printf (“string_format” ) ; อธิบาย : string_format คือลักษณะของสิ่งต่อไปนี้ เช่น ข้อความ (text ) รหัสรูปแบบข้อมูล เช่น%d รหัสควบคุม เช่น n Data_list คือข้อมูลแสดงผลอาจเป็นค่าคงที่ตัวแปร นิพจน์ หากมีหลายตัวใช้ , คั่น รหัส format code ความหมาย %c ใช้กับข้อมูลแบบ char %d ใช้กับข้อมูลแบบ int เฉพาะฐาน10 %s ใช้กับข้อมูลแบบ string ตาราง รหัสรูปแบบข้อมูลระดับพื้นฐาน หมายเหตุ : รหัสรูปแบบข้อมูลรูปแบบ แสดงในภาคผนวก ตัวอย่างคาสั่ง : ควบคุมการแสดงผลด้วย printf Printf ( “ Data is %d n ” , score ) ; อธิบาย : พิมพ์ข้อความคาว่า data is ตามด้วยค่าข้อมูลในหน่วยความจาตัว แปรชื่อ score ซึ่งเป็นข้อมูลชนิดจานวนเต็ม (%) แล้วเลื่อนคอร์เซอร์ไปไว้ บรรทัดถัดไป (n)
  • 16. คาสั่งรับข้อมูล : รับข้อมูลจากแป้ นพิมพ์แล้วจัดเก็บลงหน่วยความจาตัวแปร รูปแบบ : Scanf ( “ string_format” , & address_list ) ; อธิบาย : string_format คือรูปแบบการแสดงผลของข้อมูลเท่านั้น เช่น %d Address_list คือการระบุตาแหน่งที่อยู่ในหน่วยความจาต้องใช้สัญลักษณ์&(Ampersand) นาหน้าชื่อตัวแปรเสมอ ข้อควรจา : กรณีเป็นตัวแปรข้อความ (String) สามารถยกเว้นไม่ต้องใช้& นาหน้าได้ ตัวอย่างคาสั่ง : เขียนคาสั่งควบคุมการรับค่าจากแป้นพิมพ์ด้วย scanf Scanf ( “%d ” , &score ) ; อธิบาย : รับข้อมูลจากแป้นพิมพ์นาไปเก็บในหน่วยความจาชื่อ score เป็นข้อมูลประเภทจานวนเต็ม
  • 17. คาสั่งประมวลผล : EXPRESSION ประสิทธิภาพคาสั่ง : เขียนคาสั่งแบบนิพจน์เพื่อประมวลผล แล้วนาข้อมูลที่ได้ไปจัดเก็บในหน่วยความจาของตัวแปรที่ต้องกาหนดชื่อและ ชนิดข้อมูลไว้แล้ว รูปแบบ : Var = expression; อธิบาย : var คือชื่อหน่วยความจาชนิดตัวแปร Expression คือสมการนิพจน์ เช่น สูตรคานวณทางคณิตศาสตร์ ตัวอย่างคาสั่ง : นิพจน์ที่เป็นสูตรคานวณทางคณิตศาสตร์ Sum = a+b ; อธิบาย : ให้นาค่าในหน่วยความจาตัวแปรชื่อ a กับ b มา+กันแล้วนาค่าไปเก็บในหน่วยความจาตัวแปรชื่อ sum แนวคิดในการเขียนคาสั่งควบคุมการทางาน
  • 18. 1. ส่วนป้อนข้อมูล ผู้ใช้ระบบงานป้อนค่า ; เก็บในหน่วยความจา x และป้อนค่า A เก็บในหน่วยความจา y ด้วยคาสั่ง Printf ( “data x=” ) ; scanf ( “%d ,&x ) ; Printf ( “data y=” ) ; scanf ( “%d ,&y ) ; 2. ส่วนประมวลผล ระบบจะนาค่าไปประมวลผลตามนิพจน์คณิตศาสตร์ r = 2 + 3 * 2 ; ได้คาตอบคือ 8 s = (2 + 3 ) * 2; ได้คาตอบคือ 10 t = 2 + 3 * 2-1 ; ได้คาตอบคือ 7 ทั้งนี้คอมพิวเตอร์ประมวลผล โดยยึดหลักลาดับความสาคัญของเครื่องหมายทางคณิตศาสตร์ เช่นคานวณเครื่องหมาย * ก่อนเครื่องหมาย + 3. ส่วนแสดงผล คาสั่งควบคุมให้แสดงผลลัพธ์ Printf ( “r = x + y * 2 = %d n” , r ) ; Printf ( “r = (x + y X* 2 = %d n” , s ) ; Printf ( “r = x + y * 2-1 = %d n” , t ) ;
  • 19. 5.คาสั่งแสดงผล-รับข้อมูล เฉพาะอักขระ ภาษาซีมีคาสั่งแสดงผลและรับข้อมูลเฉพาะข้อมูลประเภท 8 อักขระ (char )ดังนี้ 5.1 คาสั่ง putchar ( ) แสดงผลข้อมูลจากหน่วยความจาของตัวแปร ทางจอภาพครั้งละ1อักขระเท่านั้น แนวคิดในการเขียนคาสั่งควบคุมการทางาน ž 1. กาหนดค่า ‘A’ เก็บในตัวแปรประเภท char ชื่อ word1 และกาหนดค่า ‘1’ เก็บในตัวแปรชื่อ word2 ด้วยคาสั่งchar word1=’A’ , word2=’1’ ž 2. เขียนคาสั่งควบคุมการแสดงผลทีละ 1 อักขระ โดยไม่ต้องใช้สัญลักษณ์ขึ้นบรรทัดใหม่ด้วยคาสั่งputchar(word1); putcar(word2); จึงพิมพ์คาว่า A1 ที่จอภาพ
  • 20. 5.2คาสั่ง getchar ( ) รับข้อมูลจากแป้นพิมพ์ครั้งละ 1 อักขระ และแสดงอักขระที่จอภาพ จากนั้นต้องกดแป้นพิมพ์ที่ Enter เพื่อนาข้อมูลบันทึกลงหน่วยความจา ด้วย แนวคิดในการเขียนคาสั่งควบคุมการทางาน 1.เขียนคาสั่งควบคุมการป้อนข้อมูลประเภทอักขระด้วยคาสั่ง printf ( “Key 1 Character = “ ) ; word = getchar ( ); หมายถึงป้อนอักขระ 1 ตัว เช่น a จะแสดงค่า ให้เห็นที่หน้าจอด้วย แล้ว ต้องกดแป้นEnter เพื่อนาข้อมูลบันทึกลงหน่วยความจาตัวแปร ประเภท char ชื่อ word 2 . เขียนคาสั่งควบคุมการแสดงผลจากหน่วยความจา word จึงเห็นค่า a ( แทนที่ word) printf ( “You key Character is = %cn”, word ) ;
  • 21. 5.3 คาสั่ง getch ( ) รับข้อมูลจากแป้นพิมพ์ครั้งละ 1 อักขระ แต่ ไม่ปรากฏ อักษรบนจอภาพ และ ไม่ต้องกดแป้น Enter แนวคิดในการเขียนคาสั่งควบคุมการทางาน 1.เขียนคาสั่งควบคุมการป้อนข้อมูลประเภทอักขระด้วยคาสั่ง printf ( “Key 1 Character = “ ) ; word = getch ( ); หมายถึงป้อนค่าใดทางแป้นพิมพ์เป็นอักขระ 1 ตัว เช่น a จะ ไม่แสดง ค่าให้เห็นที่หน้าจอไม่ต้อง กดแป้น Enter เพื่อนาข้อมูลบันทึกลง หน่วยความจาตัวแปรประเภท char ชื่อ word 2.เขียนคาสั่งควบคุมการแสดงผลจากหน่วยความจา word จึงเห็นค่า a ( แทนที่ word ) printf ( “You key Character is = %cn”, word ) ;
  • 22. 5.4 คาสั่ง getche( ) รับข้อมูลจากแป้นพิมพ์ครั้งละ 1 อักขระ และ แสดง อักษรบนจอภาพ และ ไม่ต้องกดแป้น Enter แนวคิดในการเขียนคาสั่งควบคุมการทางาน 1.เขียนคาสั่งควบคุมการป้อนข้อมูลประเภทอักขระด้วยคาสั่ง printf ( “Key 1 Character = “ ) ; word = getche ( ); หมายถึงป้อนค่าใดทางแป้นพิมพ์เป็นอักขระ 1 ตัว เช่น a จะ แสดง ค่าให้เห็นที่หน้าจอ และไม่ต้อง กดแป้น Enter เพื่อนาข้อมูลบันทึกลง หน่วยความจาตัวแปรประเภท char ชื่อ word 2.เขียนคาสั่งควบคุมการแสดงผลเพื่อแสดงค่าจากหน่วยความจา word จึงเห็นค่า a ( แทนทิ่ word ) printf ( “You key Character is = %cn”, word ) ;
  • 23. 6.คาสั่งแสดงผล-เฉพาะข้อมูล เฉพาะข้อความ ภาษาซีมีคาสั่งใช้ในการรับข้อมูลเฉพาะประเภทข้อความ (String) ในภาษาซีคือชนิดข้อมูล char [n] จัดเก็บในหน่วยความจา และแสดงผล ข้อมูลประเภทข้อความเท่านั้นมีรายละเอียดดังนี้ 6.1.คาสั่ง puts( ) แสดงผลข้อมูลเฉพาะประเภทข้อความทางจอภาพครั้งละ 1 ข้อความ แนวคิดในการเขียนคาสั่งควบคุมการทางาน 1.เขียนคาสั่งกาหนดค่าข้อความเก็บในตัวแปรชื่อ word Char word [15] = “*Example * “ ; 2.เขียนคาสั่งควบคุมการแสดงผลในลักษณะข้อความด้วย puts Puts ( word ) ; Puts (“**************”);
  • 24. 6.2คาสั่ง gets ( ) รับข้อมูล ข้อความ จากแป้นพิมพ์และต้องกดแป้น Enter แนวคิดในการเขียนคาสั่งควบคุมการทางาน 1.เขียนคาสั่งให้รับข้อมูล ชนิดข้อความ จากแป้นพิมพ์และต้อง กดแป้น Enter เพื่อนาข้อความบันทึกลงตัวแปรชนิดข้อความ ด้วยคาสั่ง gets (word) ; 2.เขียนคาสั่งควบคุมให้แสดงผลลักษณะข้อความด้วย printf ( “You name is = %sn”, word ) ;
  • 25. 7.กรณีศึกษาการใช้คาสั่งควบคุมขั้นพื้นฐาน 7.1.คาสั่ง puts( ) แสดงผลข้อมูลเฉพาะประเภทข้อความทางจอภาพครั้งละ 1 ข้อความ รูปแบบ puts ( string_argument) ; อธิบาย string_argument คือ ข้อมูลชนิดข้อความ แนวคิดในการเขียนคาสั่งควบคุมการทางาน 1.เขียนคาสั่งกาหนดค่าข้อความเก็บในตัวแปรชื่อ word Char word [15] = “*Example* “ ; 2.เขียนคาสั่งควบคุมการแสดงผลในลักษณะข้อความด้วย puts Puts ( word ) ; Puts (“**************”); แนวคิดในการเขียนคาสั่งควบคุมการทางาน 1.เขียนคาสั่งกาหนดค่าข้อความเก็บในตัวแปรชื่อ word Char word [15] = “*Example* “ ; 2.เขียนคาสั่งควบคุมการแสดงผลในลักษณะข้อความด้วย puts Puts ( word ) ; Puts (“**************”);
  • 26. 7.2คาสั่ง gets ( ) รับข้อมูล ข้อความ จากแป้นพิมพ์และต้องกดแป้น Enter รูปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจาของตัวแปร gets ( ); รูปแบบ 2 นาข้อมูลจัดเก็บลงหน่วยความจาของตัวแปร string_var =gets ( ) ; อธิบาย : string_var คือ ข้อมูลชนิดข้อความ แนวคิดในการเขียนคาสั่งควบคมการทางาน 1.เขียนคาสั่งให้รับข้อมูล ชนิดข้อความ จากแป้นพิมพ์และต้อง กดแป้น Enter เพื่อนาข้อความบันทึกลงตัวแปรชนิดข้อความ ด้วย คาสั่ง gets (word) ; 2.เขียนคาสั่งควบคุมให้แสดงผลลักษณะข้อความด้วย printf ( “You name is = %sn”, word ) ;
  • 27. สมาชิก 1. นาย ณัฐพงศ์ กือเย็น เลขที่ 2. นางสาว สิริวรรรณ คาเตจ๊ะ เลขที่ 3. นางสาว เบญจรัตน์ ศรอารา เลขที่ 4. นางสาว กนกวรรณ ลัดดากุล เลขที่ 5. นางสาว สโรชา บุญช่วย เลขที่ 6. นางสาว เพ็ญพิชชา เทียนชัย เลขที่