More Related Content Similar to การเขียนคำสั่งควบคุมขั้นพื้นฐาน Similar to การเขียนคำสั่งควบคุมขั้นพื้นฐาน (20) More from นายแสงธรรม สระจันทร์ More from นายแสงธรรม สระจันทร์ (16) การเขียนคำสั่งควบคุมขั้นพื้นฐาน3. ลักษณะการทางานของภาษาซี
1. ควำมเป็นมำของภำษำซี
ภำษำซีได้รับกำรพัฒนำเมื่อปี ค.ศ. 1972 โดยนำยเดนนิส ริตซี่ ตั้งชื่อว่ำ “ซี”
เพรำะพัฒนำมำจำกภำษำ BCLP และภำษำ B ในช่วงแรกใช้ทดลองเขียนคำสั่ง
ควบคุมในห้องปฏิบัติกำรเบล (Bell Laboratoories) เท่ำนั้น เมื่อปี ค.ศ.
1972 นำยไบรอัน เคอร์นิกฮัน และนำยเดนนิส ริตซี่ ร่วมกันกำหนดนิยำมรำยละเอียด
ของภำษำซี เผยแพร่ควำมรู้โดยจัดทำหนังสือ The CProgramming
Language
10. ส่วนประกอบโครงสร้างภาษาซี
2.1 ส่วนหัวของโปรแกรม (Header File)
ใช้ระบุชื่อเฮดเดอร์ไฟล์ ควบคุมกำรทำงำนของฟังก์ชันมำตรฐำนที่ถูก
เรียกใช้งำนในส่วนของ main ( ) เฮดเดอร์ไฟล์มีชนิดเป็น.h จัดเก็บในไลบรำรี
ฟังก์ชัน ผู้เขียนคำสั่งงำนต้องศึกษำว่ำฟังก์ชันที่ใช้งำนนั้นอยู่ในเฮดเดอร์ไฟล์ชื่ออะไร
จึงจะเรียกใช้งำนได้ถูกต้อง นิยมใช้รูปแบบคำสั่ง ดังนี้
11. ส่วนประกอบโครงสร้างภาษาซี
รูปแบบ # include < header_name>
อธิบำย header_name ชื่อเฮดเดอร์ไฟล์ที่ควบคุมฟังก์ชันมำตรฐำน เช่น
ฟังก์ชัน printf ใช้ควบคุมกำรแสดงผล จัดเก็บในไลบรำรีชื่อ #include
<stdio.h>
ตัวอย่ำงคำสั่ง ประกำศฟรีโปรเซสเซอร์ไดเรกทีฟ ที่ใช้ควบคุมฟังก์ชันมำตรฐำน
ภำษำซี # include <stdio.h>
อธิบำย ให้คอมไพเลอร์ค้นหำไลบรำรีไฟล์ชื่อ stdio.h จำกไดเรกเทอรี
include
12. ส่วนประกอบโครงสร้างภาษาซี
2.2 ส่วนฟังก์ชันหลัก (Main Function)
เป็นส่วนเขียนคำสั่งควบคุมกำรทำงำนภำยในขอบเขตเครื่องหมำย { } ของ
ฟังก์ชันหลักคือ main ( ) ต้องเขียนคำสั่งตำมลำดับขั้นตอนจำกกระบวนกำร
วิเครำะห์ระบบงำนเบื้องต้นและขั้นวำงแผนลำดับกำรทำงำนที่ได้จัดทำล่วงหน้ำไว้เช่น
ลำดับกำรทำงำนด้วยแผนผังโปรแกรมเพื่อลดข้อผิดพลำดในขั้นตอนลำดับคำสั่ง
ควบคุมงำน ในส่วนนี้พึงระมัดระวังเรื่องเดียวคือ ต้องใช้งำนคำสั่งตำมรูปแบบ
ไวยำกรณ์ของภำษำซีที่กำหนดไว้
19. คำสั่งจัดเก็บข้อมูลลงหน่วยควำมจำ
ข้อควรจา กรณีข้อมูลมี 1 อักขระ กาหนดให้อยู่ใน ‘ ‘ (single
quotation)
กรณีข้อมูลมีมากกว่า 1 อักขระ กาหนดให้อยู่ใน “ ”
(double quotation)
กรณีข้อมูลเป็นชนิดตัวเลขใช้ในการคานวณไม่ต้องอยู่ใน ‘’ หรือ
“ ”
3.3 คาสั่งจัดเก็บข้อมูลแบบตัวแปร
ประสิทธิภาพคาสั่ง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจา
20. คำสั่งจัดเก็บข้อมูลลงหน่วยควำมจำ
รูปแบบ 1 var_type var_name[,….];
รูปแบบ 2 var_type var_name = data ;
อธิบาย var_type คือ หน่วยชนิดข้อมูลแบบพื้นฐาน
var name คือ ชื่อหน่วยความจา ที่นู้ใช้ต้องกาหนด
ตามกฎการตั้งชื่อ
data คือ ข้อมูลที่กาหนดเป็นค่าเริ่มต้น (อาจมีหรือไม่
ก็ได้)
หมายเหตุ หากมีตัวแปรมากกว่า 1 ตัว แต่เป็นตัวแปรเก็บข้อมูลประเภท
เดียว ใช้คอมม่า (,) คั่น
22. คาสั่งควบคุมการทางานขั้นพื้นฐาน
รูปแบบ 1 Printf (“ string_format” , data_list ) ;
รูปแบบ 2 Printf (“string_format” ) ;
อธิบำย string_format คือลักษณะของสิ่งต่อไปนี้ เช่น ข้อควำม
(text ) รหัสรูปแบบข้อมูล เช่น %d รหัสควบคุม เช่น n
Data_list คือข้อมูลแสดงผลอำจเป็นค่ำคงที่ตัวแปร นิพจน์ หำก
มีหลำยตัวใช้ , คั่น
24. คาสั่งควบคุมการทางานขั้นพื้นฐาน
ตัวอย่ำงคำสั่ง ควบคุมกำรแสดงผลด้วย printf
Printf ( “ Data is %d n ” , score ) ;
อธิบำย พิมพ์ข้อควำมคำว่ำ data is ตำมด้วยค่ำข้อมูลในหน่วยควำมจำตัวแปรชื่อ
score ซึ่งเป็นข้อมูลชนิดจำนวนเต็ม (%) แล้วเลื่อนคอร์เซอร์ไปไว้บรรทัดถัดไป (n)
4.2 คำสั่งรับข้อมูล : รับข้อมูลจำกแป้นพิมพ์แล้วจัดเก็บลงหน่วยควำมจำของตัวแปร
รูปแบบ Scanf ( “ string_format” , & address_list ) ;
อธิบำย string_format คือรูปแบบกำรแสดงผลของข้อมูลเท่ำนั้น เช่น %d
Address_list คือกำรระบุตำแหน่งที่อยู่ในหน่วยควำมจำต้องใช้สัญลักษณ์
&(Ampersand) นำหน้ำชื่อตัวแปรเสมอ
25. คาสั่งควบคุมการทางานขั้นพื้นฐาน
ข้อควรจำ กรณีเป็นตัวแปรข้อควำม (String) สำมำรถยกเว้นไม่ต้องใช้ &
นำหน้ำได้
ตัวอย่ำงคำสั่ง เขียนคำสั่งควบคุมกำรรับค่ำจำกแป้นพิมพ์ด้วย scanf
Scanf ( “%d ” , &score ) ;
อธิบำย รับข้อมูลจำกแป้นพิมพ์นำไปเก็บในหน่วยควำมจำชื่อ score เป็น
ข้อมูลประเภทจำนวนเต็ม
4.3 คำสั่งประมวลผล : expression
ประสิทธิภำพคำสั่ง : เขียนคำสั่งแบบนิพจน์เพื่อประมวลผล แล้วนำข้อมูลที่ได้ไป
จัดเก็บในหน่วยควำมจำของตัวแปรที่ต้องกำหนดชื่อและชนิดข้อมูลไว้แล้ว
26. คาสั่งควบคุมการทางานขั้นพื้นฐาน
รูปแบบ Var = expression ;
อธิบำย var คือชื่อหน่วยควำมจำชนิดตัวแปร
Expression คือสมกำรนิพจน์ เช่น สูตรคำนวณทำงคณิตศำสตร์
ตัวอย่ำงคำสั่ง นิพจน์ที่เป็นสูตรคำนวณทำงคณิตศำสตร์
Sum = a+b ;
อธิบำย ให้นำค่ำในหน่วยควำมจำตัวแปรชื่อ a กับ b มำ+กันแล้วนำค่ำไปเก็บใน
หน่วยควำมจำตัวแปรชื่อ sum
27. แนวคิดในการเขียนคาสั่งควบคุมการทางาน
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
ทั้งนี้คอมพิวเตอร์ประมวลนล โดยยึดหลักลาดับความสาคัญของเครื่องหมายทางคณิตศาสตร์ เช่น
คานวณเครื่องหมาย * ก่อนเครื่องหมาย +
31. คาสั่งแสดงผล-รับข้อมูล เฉพาะอักขระ
5.2คำสั่ง getchar ( )
รับข้อมูลจำกแป้นพิมพ์ครั้งละ 1 อักขระ และแสดงอักขระที่จอภำพ จำกนั้น
ต้องกดแป้นพิมพ์ที่ Enter เพื่อนำข้อมูลบันทึกลงหน่วยควำมจำด้วย
รูปแบบ 1 ไม่นำข้อมูลจัดเก็บลงหน่วยควำมจำของตัวแปร
getchar ( ) ;
รูปแบบ 2 นำข้อมูลจัดเก็บลงหน่วยควำมจำของตัวแปร
char_var = getchar ( ) ;
32. คาสั่งแสดงผล-รับข้อมูล เฉพาะอักขระ
5.3 คำสั่ง getch ( )
รับข้อมูลจำกแป้นพิมพ์ครั้งละ 1 อักขระ แต่ ไม่ปรำกฏ อักษรบนจอภำพ
และ ไม่ต้องกดแป้น Enter
รูปแบบ 1 ไม่นำข้อมูลจัดเก็บลงหน่วยควำมจำของตัวแปร
getch( ) ;
รูปแบบ 2 นำข้อมูลจัดเก็บลงหน่วยควำมจำของตัวแปร
char_var = getch 1( ) ;
อธิบำย char_var คือ ข้อมูลชนิดอักขระ
34. คาสั่งแสดงผล-รับข้อมูล เฉพาะข้อความ
6.2คำสั่ง gets ( )
รับข้อมูล ข้อควำม จำกแป้นพิมพ์และต้องกดแป้น Enter
รูปแบบ 1 ไม่นำข้อมูลจัดเก็บลงหน่วยควำมจำของตัวแปร gets ( );
รูปแบบ 2 นำข้อมูลจัดเก็บลงหน่วยควำมจำของตัวแปร
string_var =gets ( ) ;
อธิบำย string_var คือ ข้อมูลชนิดข้อควำม