คคววาามมรรู้เู้กเก่ียย่ี ววกกบับั ภาษาซี ภาษาซี ประกอบวิชาการเรียนวชิ า ว30268 ครูผ้สู อน ครูรัชชนก วงศ์เขยี ว
คำนำ หนงั สืออิเลก็ ทรอนิกส์เลม่ น้ีจดั ทาข้ึนเพอื่ ใช้ ประกอบการเรียนการสอนในวิชาภาษาซี ซ่ึงทาให้ นกั เรียนทราบถึงความสาคญั และประโยชนข์ อง เทคโนโลยี และสามารถนาความรู้ไดร้ ับไปประยกุ ตใ์ ช้ ในชีวติ ประจาวนั ท้งั ตอ่ ตนเองและผอู้ ่ืนได้ ทางผจู้ ดั ทาหวงั เป็นอยา่ งยงิ่ วา่ ผลงานหนงั สือ อิเลก็ ทรอนิกส์เลม่ น้ีจะเป็นประโยชน์ตอ่ ผทู้ ่ีสนใจศึกษา ในเร่ืองของภาษาซีไม่มากกน็ อ้ ย หากมีขอ้ ผดิ พลาด ประการใดทางผจู้ ดั ทาตอ้ งขออภยั มา ณ โอกาสน้ี นายอภิสิทธ์ิ คิดอา่ น นางสาวชุติกาญจน์ ปัญญารอบรู้ ผจู้ ดั ทา
ภำษำคอมพวิ เตอร์ การใชง้ านคอมพิวเตอร์ซ่ึงเป็นเครื่องมือทาง อิเลก็ ทรอนิกส์ใหท้ างานตามท่ีตอ้ งการจาเป็นตอ้ ง มีการกาหนดภาษาสาหรับใชต้ ิดตอ่ สั่งงานกบั คอมพิวเตอร์ภาษาคอมพวิ เตอร์จะเป็นภาษา ประดิษฐท์ ี่มนุษยส์ ร้างข้ึนมาเองเป็นภาษาที่มี จุดมุ่งหมายเฉพาะมีกฎเกณฑท์ ่ีตายตวั และจากดั คืออยใู่ นกรอบใหใ้ ชค้ าและไวยากรณ์ท่ีกาหนด และมีการตีความหมายที่ชดั เจนจึงจดั ภาษาคอมพิวเตอร์เป็ นภาษาที่มีรูปแบบเป็ น ทางการต่างกบั ภาษาธรรมชาติที่มีขอบเขตกวา้ ง มากไม่มีรูปแบบตายตวั ที่แน่นอนกฎเกณฑข์ อง ภาษาจะข้ึนกบั หลกั ไวยากรณ์และการยอมรับของ กลุม่ ผใู้ ชน้ ้นั ๆ ภาษาคอมพิวเตอร์ อาจแบ่งไดเ้ ป็น 3 ระดบั คือภาษาเคร่ือง ภาษาระดบั ต่า และภาษาระดบั สูง
1. ภาษาเครื่อง การเขียนโปรแกรมเพื่อสัง่ ใหค้ อมพิวเตอร์ทางาน ในยคุ แรก ๆ จะตอ้ งเขียนดว้ ยภาษาซ่ึงเป็นที่ยอมรับของ เคร่ืองคอมพิวเตอร์ที่เรียกวา่ ภาษาเครื่อง ภาษาน้ี ประกอบดว้ ยตวั เลขลว้ น ทาใหเ้ ครื่องคอมพิวเตอร์ สามารถทางานไดท้ นั ที ผทู้ ่ีจะเขียนโปรแกรม ภาษาเคร่ืองไดต้ อ้ งสามารถจารหสั แทนคาส่ังต่าง ๆ ได้ และในการคานวณตอ้ งสามารถจาไดว้ า่ จานวนต่าง ๆ ที่ ใชใ้ นการคานวณน้นั ถกู เกบ็ ไวท้ ่ีตาแหน่งใด ดงั น้นั โอกาสท่ีจะเกิดความผดิ พลาดในการเขียนโปรแกรมจึง มีมาก นอกจากน้ีเครื่องคอมพิวเตอร์แตล่ ะระบบมี ภาษาเครื่องที่แตกต่างกนั ออกไป ทาใหเ้ กิดความไม่ สะดวกเมื่อมีการเปลี่ยน เคร่ืองคอมพวิ เตอร์เพราะ จะตอ้ งเขียนโปรแกรมใหม่ท้งั หมด
2. ภาษาระดบั ตา่ เน่ืองจากภาษาเคร่ืองเป็นภาษาท่ีมีความยงุ่ ยาก ในการเขียนดงั ไดก้ ล่าวมาแลว้ จึงไม่มีผนู้ ิยมและมีการ ใชน้ อ้ ย ดงั น้นั ไดม้ ีการพฒั นาภาษาคอมพิวเตอร์ข้ึนอีก ระดบั หน่ึงโดยการใชต้ วั อกั ษรภาษาองั กฤษเป็ นรหสั แทนการทางาน และใชก้ ารต้งั ชื่อตวั แปรแทน ตาแหน่งที่ใชเ้ กบ็ จานวนต่าง ๆ ซ่ึงเป็นค่าของตวั แปร น้นั ๆ การใชส้ ญั ลกั ษณ์ช่วยใหก้ ารเขียนโปรแกรมน้ี เรียกวา่ ภาษาระดบั ต่า ภาษาระดบั ต่า เป็นภาษาที่มีความใกลเ้ คียงกบั ภาษาเครื่องมาก ดงั น้นั บางคร้ังจึงเรียกภาษาน้ีวา่ ภาษา อิงเครื่อง ( machine – oriented language ) ตวั อยา่ งของภาษาระดบั ต่าไดแ้ ก่ ภาษาแอสเซมบลี เป็นภาษาท่ีใชค้ าในอกั ษร ภาษาองั กฤษเป็นคาสั่งใหเ้ คร่ืองทางาน เช่น ADD หมายถึง บวก SUB หมายถึง ลบ เป็นตน้ การใชค้ า เหล่าน้ีช่วยใหก้ ารเขียนโปรแกรมง่ายข้ึนกวา่ การใช้ ภาษาเคร่ืองซ่ึงเป็นตวั เลขลว้ น ๆ
3. ภาษาระดบั สูง เป็ นภาษาที่สร้างข้ึนเพ่ือช่วยอานวยความ สะดวกในการเขียนโปรแกรม ลกั ษณะของคาส่ังต่าง ๆ ในภาษาองั กฤษซ่ึงผอู้ ่านสามารถเขา้ ใจความหมาย ไดท้ นั ที ผเู้ ขียนโปรแกรมจึงสามารถเขียนโปรแกรม ดว้ ยภาษาระดบั สูงไดง้ ่ายกวา่ เขียนดว้ ย ภาษาแอสเซมบลีหรือภาษาเคร่ือง ภาษาระดบั สูงมี หลายภาษา เช่น ภาษาฟอร์แทรน ภาษาโคบอล ภาษา ปาสคาล ภาษาเบสิก ภาษาวชิ วลเบสิก ภาษาซี ภาษา จาวา เป็นตน้ โปรแกรมที่เขียนดว้ ยภาษาระดบั สูงแต่ ละภาษาจะตอ้ งมีโปรแกรมท่ีทาหนา้ ท่ีแปลภาษา ระดบั สูงใหเ้ ป็นภาษาเคร่ือง เช่น โปรแกรม แปลภาษาฟอร์แทรนเป็นภาษาเคร่ือง โปรแกรม แปลภาษาปาสคาลเป็นภาษาเคร่ือง คาส่ังหน่ึงคาส่งั ในภาษาระดบั สูงจะถูกแปลเป็นภาษาเครื่องหลาย คาสั่ง
ประวตั ิความเป็ นมาภาษาซี ภาษาซีเป็นภาษาที่ถือวา่ เป็นท้งั ภาษาระดบั สูงและ ระดบั ต่า ถกู พฒั นาโดยเดนนิส ริดชี (Dennis Ritche) แห่งหอ้ งทดลองเบลล์ ท่ีเมอร์รีฮิล มลรัฐนิว เจอร์ซี่ โดยเดนนิสไดใ้ ชห้ ลกั การของภาษา บีซีพแี อล ซ่ึงพฒั นาข้ึนโดยเคน ทอมสนั (Ken Tomson) การ ออกแบบและพฒั นาภาษาซีของเดนนิส ริดชี มี จุดมุ่งหมายใหเ้ ป็นภาษาสาหรับใชเ้ ขียนโปรแกรม ปฏิบตั ิการระบบยนู ิกซ์ และไดต้ ้งั ช่ือวา่ ซี Cเพราะเห็น วา่ ซี Cเป็นตวั อกั ษรตอ่ จากบี B ของภาษา BCPL ภาษาซีถือวา่ เป็นภาษาระดบั สูงและภาษาระดบั ต่า
โครงสร้ ำงของโปรแกรมภำษำซี 1. ส่วนหัวของโปรแกรม ส่วนหวั ของโปรแกรมน้ีเรียกวา่ Preprocessing Directive ใชร้ ะบุเพอื่ บอก ใหค้ อมไพเลอร์กระทาการ ใด ๆ ก่อนการแปลผล โปรแกรม ในท่ีน่ีคาสั่ง #include <stdio.h> 2. ส่วนของฟังก์ช่ันหลกั ฟังกช์ น่ั หลกั ของภาษาซี คือ ฟังกช์ นั่ main() ซ่ึงโปรแกรมภาษาซีทุกโปรแกรมจะตอ้ งมีฟังกช์ นั่ น้ีอยู่ ในโปรแกรมเสมอ จะเห็นไดจ้ ากชื่อฟังกช์ นั่ คือ main แปลวา่ “หลกั ” ดงั น้นั การเขียนโปรแกรมภาษ ซีจึงขาดฟังกช์ นั่ น้ีไปไม่ได้ โดยขอบเขตของฟังกช์ นั่ จะ ถกู กาหนดดว้ ยเครื่องหมาย { และ } กลา่ วคือ การ ทางานของฟังกช์ น่ั จะเร่ิมตน้ ท่ีเครื่องหมาย { และจะ สิ้นสุดที่เครื่องหมาย }
3. ส่วนรายละเอยี ดของโปรแกรม เป็นส่วนของการเขียนคาส่ัง เพ่อื ใหโ้ ปรแกรม ทางานตามที่ไดอ้ อกแบบไวค้ อมเมนตใ์ นภาษาซี คอมเมนต์ (comment) คือส่วนท่ีเป็น หมายเหตุของโปรแกรม มีไวเ้ พอื่ ใหผ้ เู้ ขียน โปรแกรมใส่ขอ้ ความอธิบายกากบั ลงไปใน source code ซ่ึงคอมไพเลอร์จะขา้ มาการแปล ผลในส่วนที่เป็นคอมเมนตน์ ้ี คอมเมนตใ์ นภาษาซีมี 2 แบบคือ ¨ คอมเมนตแ์ บบบรรทดั เดียว ใชเ้ คร่ืองหมาย // ¨ คอมเมนตแ์ บบหลายบรรทดั ใชเ้ ครื่องหมาย /* และ */
ตัวแปร(variables) ตวั แปร (Variable) คือ การจองพ้นื ท่ีในหน่วยความจา ของคอมพวิ เตอร์สาหรับเกบ็ ขอ้ มลู ท่ีตอ้ งใชใ้ นการทางาน ของโปรแกรม โดยมีการต้งั ชื่อ เรียกหน่วยความจาในตาแหน่ง น้นั ดว้ ย เพื่อความสะดวกใน การเรียกใชข้ อ้ มูล ถา้ จะใช้ ขอ้ มูลใดกใ็ หเ้ รียกผา่ นช่ือของตวั แปรท่ีเกบ็ เอาไว้
การต้งั ช่ือตวั แปร การปรากาศตวั แปร จะตอ้ งมีการกาหนดชื่อใหก้ บั ตวั แปร เพอ่ื ใหโ้ ปรแกรมทางาน กฏการต้งั ชื่อในภาษาซียงั ใชก้ บั ช่ือต่างๆ ในโปรแกรม ไดอ้ ีกดว้ ย ตวั อยา่ งเช่น การกาหนด ชื่อโปรแกรม ชื่อของตวั แปรต่างๆ เป็นตน้ การต้งั ช่ือในภาษาซี มรี ูปแบบดงั นี้ 1. ช่ือตอ้ งไม่ซ้ากบั คาและคามาตรฐานที่คอมไพลเ์ ลอร์ รู้จกั 2. จะตอ้ งข้ึนตน้ ดว้ ยตวั อกั ษร (A-Z, a-z) หรือ เครื่องหมาย _เท่าน้นั 3. ตวั ต่อไปตอ้ งเป็นตวั อกั ษรหรือตวั เลขหรือ เคร่ืองหมาย _ 4. การต้งั ช่ือจะตอ้ งไม่มีช่องวา่ ง 5. ตวั อกั ษรตวั เลก็ และตวั อกั ษรตวั ใหญ่จะมีความมาย แตกต่างกนั
การเขยี นผงั งาน 1. ใชส้ ัญลกั ษณ์ตามท่ีกาหนดไว้ 2. ผงั งานจะตอ้ งมีจุดเริ่มตน้ และสิ้นสุด 3. ใชห้ วั ลูกศรแสดงทิศทางการไหลของขอ้ มูล จากบนลงลา่ งหรือซา้ ยไปขวา 4. ทุกแผนภาพตอ้ งมีลกู ศรแสดงทิศทางเขา้ 1 เสน้ และออก 1 เสน้ โดยไม่มีการปล่อยจุดใดจุดหน่ึงไว้ 5. เขียนคาอธิบายการทางานในแตล่ ะข้นั ตอน โดยใชข้ อ้ ความท่ีส้ัน กะทดั รัด ชดั เจนและเขา้ ใจไดง้ ่าย 6. ควรหลีกเลี่ยงโยงเสน้ ไปมาทาใหเ้ กิดจุดตดั มากเพราะจะทาใหเ้ กิดขอ้ ผดิ พลาดง่าย ควรใช้ สญั ลกั ษณ์เช่ือมจุดต่อเน่ืองแทน 7. ไม่ควรโยงเส้นเชื่อมผงั งานท่ีอยไู่ กลมาก ๆ ควรใชส้ ญั ลกั ษณ์จุดเช่ือมตอ่ แทน 8. ผงั งานที่ดีควรมีความเป็นระเบียบเรียบร้อย สะอาดและชดั เจน สามารถเขา้ ใจและติดตามข้นั ตอน ไดง้ ่าย 9. ผงั งานควรมีการทดสอบความถูกตอ้ งของการ ทางานก่อนไปเขียนโปรแกรม
ผู้จดั ทา นายอภิสิทธ์ิ คิดอ่าน เลขท่ี 10 ช้นั ม.6/2 นางสาวชุติกาญจน์ ปัญญารอบรู้ เลขที่21 ช้นั ม.6/2
Search
Read the Text Version
- 1 - 15
Pages: