โครงสร้างโปรแกรมภาษาซี
2. ส่วนประกาศ (Global declaration)
3. ส่วนฟังก์ชันหลัก ( The main() function)
4. การสร้างฟังก์ชันและการใช้ฟังก์ชั่น (Uses-defined function)
5. ส่วนอธิบายโปรแกรม (Program comments)
พรีโพรเซสเซอร์ไดเร็กทีฟ (Preprocessor directives)
ส่วนนี้ทุกโปรแกรมต้องมี
ใช้สำหรับเรียกไฟล์ที่โปรแกรมต้องการในการทำงานและกำหนดค่าต่างๆ โดยคอมไพล์เลอร์จะกระทำตามคำสั่งก่อนที่จะคอมไพล์โปรแกรม
ซึ่งเริ่มต้นด้วยเครื่องหมาย ไดเร็กทีฟ (directive) # และตามด้วยชื่อโปรแกรมหรือชื่อตัวแปรที่ต้องการกำหนดค่า ส่วนนี้อาจเรียกอีกชื่อหนึ่งว่าส่วนหัวโปรแกรม
(Header Part) ที่ใช้กันบ่อยๆ ได้แก่
·
#include เป็นการแจ้งให้คอมไพเลอร์อ่านไฟล์อื่นเข้ามาคอมไพร่วมด้วย
รูปแบบการใช้จะทำโดยเขียน #include แล้วตามด้วยชื่อไฟล์
ดังนี้
#include”stdio.h” หมายความว่า
อ่านไฟล์ stdio.h
เข้ามาด้วย
การกำหนดชื่อไฟล์ตามหลัง #include นั้นอาจใช้เครื่องหมาย <> คร่อมชื่อไฟล์ก็ได้ ซึ่งจะเป็นการอ่านไฟล์จากไดเร็กทอรี่ที่กำหนดไว้ก่อน
แต่ถ้าใช้ “ ” เป็นการอ่านไฟล์จากไดเร็กทอรี่ปัจจุบันที่กำลังติดต่ออยู่
และไฟล์ที่จะ include
เข้ามานี้จะต้องไม่มีฟังก์ชั่น
main() โดยมากแล้วจะประกอบด้วยโปรแกรมย่อย ค่าคงที่
หรือข้อกำหนดต่างๆ
·
#define เป็นการกำหนดค่านิพจน์ต่างๆ ให้กับชื่อตัวแปร
โดยมีรูปแบบดังนี้
#define NAME VALUE
ตัวอย่างเช่น #define END 20 กำหนด
END มีค่าเท่ากับ 20
ส่วนประกาศ (Global declaration)
ส่วนนี้จะใช้ในการประกาศตัวแปรหรือฟังก์ชั่นที่ต้องใช้ในโปรแกรม
โดยทุกๆ ส่วนของโปรแกรมสามารถจะเรียกใช้ข้อมูลที่ประกาศไว้ในส่วนนี้ได้
ส่วนนี้บางโปรแกรมอาจไม่มีก็ได้
ส่วนฟังก์ชันหลัก ( The main() function)
ส่วนนี้ทุกโปรแกรมต้องมี
จะประกอบไปด้วยประโยคคำสั่งต่างๆ ที่จะให้โปรแกรมทำงาน
โดยนำคำสั่งต่างๆมาต่อเรียงกัน แต่ละประโยคคำสั่งจะจบด้วยเครื่องหมาย เซมิโคลอน (Semi colon ;) โดยโปรแกรมหลักนี้จะเริ่มต้นด้วยคำว่า main() ตามด้วยเครื่องหมายปีกกาเปิด { และจะจบด้วยเครื่องหมายปีกกาปิด } ถ้าหากในโปรแกรมมีหลายฟังก์ชั่น ส่วนของฟังก์ชั่น
main() เป็นฟังก์ชั่นแรกที่โปรแกรมจะทำงาน
ส่วนกำหนดฟังก์ชั่นขึ้นใช้เอง (Uses-defined function)
เป็นการเขียนคำสั่งและฟังก์ชั่นต่างๆ
ขึ้นใช้ในโปรแกรม โดยต้องอยู่ในเครื่องหมาย { } และสร้างฟังก์ชั่นหรือคำใหม่ที่ให้ทำงานตามที่เราต้องการให้กับโปรแกรมและสามารถเรียกใช้ได้
ภายในโปรแกรม
ตัวอย่างเช่น
#include”stdio.h”
main()
{
function(); /*เรียกใช้ฟังก์ชั่นที่สร้างขึ้น*/
}
function() /*สร้างฟังก์ชั่นใหม่ โดยให้ชื่อว่า function*/
{
return; /*คืนค่าที่เกิดจากการทำฟังก์ชั่น*/
}
ส่วนอธิบายโปรแกรม (Program comments)
ส่วนนี้ใช้เขียนคอมเมนต์โปรแกรม
เพื่ออธิบายการทำงานต่างๆ
ทำให้ผู้ศึกษาโปรแกรมในภายหลังทำความเข้าใจโปรแกรมได้ง่ายขึ้น
เมื่อคอมไพล์โปรแกรมส่วนนี้จะถูกข้ามไป การเขียนคำอธิบายนี้จะเริ่มด้วยเครื่องหมาย
/* และปิดด้วยเครื่องหมาย */
แต่ถ้าหากเขียนคำอธิบายทีละบรรทัดจะใช้เครื่องหมาย // เขียนกำกับบรรทัดคำอธิบายไว้ก็ได้
โปรแกรมขั้นต้นเป็นดังนี้
ตัวอย่างโปรแกรมอย่างง่ายจะประกอบด้วยสองส่วนคือ
1. ส่วนที่หนึ่งเป็นส่วนหัวหรือส่วนเรียกโมดูลอื่นๆ
เข้ามาแปลความหมายร่วม
2.
ส่วนที่สอง เรียกว่าส่วนฟังก์ชั่นหลักซึ่งเป็นส่วนคำสั่งหรือสเตตเมนต์
(Statement) จะเป็นส่วนที่เก็บคำสั่งต่างๆ
ที่จะให้โปรแกรมทำงาน โดยเริ่มต้นด้วยเครื่องหมายปีกกาเปิด { และจบด้วยเครื่องหมายปีกกาปิด } ส่วนนี้จะมีมากกว่าหนึ่งฟังก์ชั่นก็ได้
แต่ทุกโปรแกรมจะต้องมีฟังก์ชั่น main ซึ่งถือว่าเป็นฟังก์ชั่นหลักที่โปรแกรมจะทำงานได้
ตัวอย่างที่ 1
โปรแกรมให้นักเรียนศึกษาโครงสร้างของโปรแกรมภาษาซี
1:
|
#include<stdio.h>
|
2:
|
#include<conio.h>
|
3:
|
main()
|
4:
|
{
|
5:
|
clrscr():
|
6:
|
printf(“My
name is Titaya”)
|
7:
|
getch();
|
8:
|
}
|
ผลลัพธ์ของโปรแกรม
My name is Titaya
อธิบายโปรแกรม
บรรทัดที่
1 เป็นการบอกให้คอมไพเลอร์นำเฮดเดอร์ไฟล์ชื่อ
stdio.h เข้ามาร่วมในการแปลผลด้วย stdio.h ย่อมาจากคำว่า
standard
input output เป็นชุดฟังก์ชันในการรับค่าและแสดงผลต่าง
ๆ เช่น scanf(),
printf() เป็นต้น
บรรทัดที่
2 เป็นการบอกให้คอมไพเลอร์นำเฮดเดอร์ไฟล์ชื่อ conio.h เข้ามาร่วมในการแปลผลด้วยconio.h ย่อมาจากคำว่า
console
input output เป็นชุดฟังก์ชันในการจัดการหน้าจอทั้งหมด เช่น clrscr(), getch()
เป็นต้น
บรรทัดที่
3 คือฟังก์ชั่น main()
ซึ่งเป็นฟังก์ชั่นหลักของโปรแกรม
การทำงานของโปรแกรมภาษาซีจะเริ่มต้นที่ฟังก์ชั่นนี้
บรรทัดที่
4 เครื่องหมาย { ระบุจุดเริ่มต้นของฟังก์ชั่น main()
บรรทัดที่
5 เป็นคำสั่งให้เคลียร์หน้าจอเวลาแสดงผลลัพธ์
บรรทัดที่
6 เป็นการเรียกฟังก์ชั่น printf()
ซึ่งเป็นฟังก์ชั่นมาตรฐานของภาษาซีทำหน้าที่ที่แสดงผลข้อมูลออกทางจอภาพ
ในที่นี้แสดงข้อความ My name Titaya ออกทางจอภาพ
บรรทัดที่
7 เป็นฟังก์ชันที่ใช้รับค่าจากคีย์บอร์ดโดยตรง การทำงานคือ เมื่อเราพิมพ์อะไรก็ตามลงไป
โดยปกติแล้ว มันจะขึ้นที่หน้าจอด้วยแต่สำหรับคำสั่งนี้ จะไม่ขึ้นมาบนหน้าจอให้
แต่จะเป็นการเก็บค่าไปเลย สำหรับในโปรแกรมนี้จะนำไปหยุดการทำงานเพื่อแสดงผลในชั่วขณะหนึ่งและเมื่อกดปุ่มอีกครั้ง ก็ทำงานต่อไป
โดยปกติแล้ว มันจะขึ้นที่หน้าจอด้วยแต่สำหรับคำสั่งนี้ จะไม่ขึ้นมาบนหน้าจอให้
แต่จะเป็นการเก็บค่าไปเลย สำหรับในโปรแกรมนี้จะนำไปหยุดการทำงานเพื่อแสดงผลในชั่วขณะหนึ่งและเมื่อกดปุ่มอีกครั้ง ก็ทำงานต่อไป
บรรทัดที่
8 เครื่องหมาย { ระบุจุดสิ้นสุดของฟังก์ชั่น main()
....................................................................................................................................
แบบฝึกหัดที่ 2
เรื่อง โครงสร้างของโปรแกรมภาษาซี
……………………………………………………………………………………………………………………………………
1. จงบอกความแตกต่างระหว่างส่วนหัวโปรแกรมที่ระบุด้วย
#include<stdio.h>
และ #include”stdio.h”
( 2 คะแนน )
( 2 คะแนน )
2. จงเขียนโปรแกรมแสดงคำว่า Hello Program C (3 คะแนน )
OintiMinna Michelle King https://wakelet.com/wake/yICPz4dMAUPMKA1dsOBd7
ตอบลบdespdifnela
paperspermu-Newark James Waheed FonePaw
ตอบลบWonderShare Recoverit
Any Video Converter
derolana