Please enable JavaScript.
Coggle requires JavaScript to display documents.
ความรู้พื้นฐานโปรแกรมภาษาซี, image, image - Coggle Diagram
ความรู้พื้นฐานโปรแกรมภาษาซี
การแสดงผลและการรับค่า
รูปแบบการแสดงผล (format specifiers)
การกําหนดรูปแบบการแสดงผล • ขึ้นต้นด้วยเครื่องหมายเปอร์เซ็นต์ (%) • ตามด้วยอักขระ 1 ตัว หรือหลายตัว โดยที่อักขระนั้นมีความหมาย
ฟังก์ชัน printf()
ฟังก์ชัน printf() เป็นฟังก์ชันจากคลัง ที่มาพร้อมกับตัวแปลโปรแกรมภาษาซี ใช้สําหรับการแสดงผล
มีรูปแบบ
โครงสร้างโปรแกรมภาษาซี
ฟังก์ชันหลัก (main function หรือ function main())
เมื่อสั่งให้กระทําการโปรแกรม ฟังก์ชันหลักจะเป็นจุดเริ่มต้นของการกระทําการ ภายในฟังก์ชันหลัก จะประกอบด้วยข้อความสั่งและข้อความสั่งที่เรียกใช้ฟังก์ชัน เมื่อมีการทํางานตามข้อความสั่งและฟังก์ชันต่างๆ แล้ว จะมีการส่งค่าและกลับมาทํางานที่ฟังก์ชันหลักจนจบฟังก์ชัน
ฟังก์ชัน (functions)
ฟังก์ชัน หมายถึง กลุ่มของข้อความสั่งที่ทํางานใดงานหนึ่งโดยเป็นอิสระจากฟังก์ชันหลัก แต่อาจมีการ รับส่งค่าระหว่างฟังก์ชันและฟังก์ชันหลัก การเขียนฟังก์ชัน ขึ้นต้นด้วย ชนิดข้อมูลที่ส่งกลับ ชื่อฟังก์ชัน วงเล็บ และตามด้วยเครื่องหมายปีกกา ภายในเครื่องหมายปีกกาประกอบด้วยข้อความสั่งภาษาซี
ต้นแบบฟังก์ชัน (function prototypes)
ต้นแบบฟังก์ชันใช้ประกาศฟังก์ชัน เพื่อบอกให้ตัวแปลโปรแกรมทราบถึง ชนิดของค่าที่ส่งกลับและ
ชนิดของค่าต่าง ๆ ที่ส่งไปกระทําการในฟังก์ชัน
ข้อความสั่งประกาศตัวแปรเฉพาะที่ (local declaration statements)
ข้อความสั่งประกาศตัวแปรเฉพาะที่ ใช้ประกาศตัวแปรเฉพาะที่ โดยที่ตัวแปรเฉพาะที่จะสามารถถูก เรียกใช้เฉพาะภายในฟังก์ชันนั้น
ข้อความสั่งประกาศครอบคลุม (global declaration statements)
ข้อความสั่งประกาศครอบคลุมใช้ประกาศตัวแปรส่วนกลาง โดยที่ตัวแปรส่วนกลางนี้จะสามารถถูก เรียกใช้ จากทุกส่วนของโปรแกรม
การแปลและกระทําการโปรแกรม (program compilation and execution)
เมื่อได้เขียนและป้อนข้อความสั่งตัวประมวลผลก่อน (preprocessor statements) และรหัสต้นฉบับ (source code) ลงในโปรแกรมบรรณาธิกรณ์ (editor program) เสร็จแล้ว จะต้องเรียกตัวแปลโปรแกรม (compiler) มาเพื่อให้แปลภาษาซีให้เป็นภาษาเครื่อง (machine language) หากโปรแกรมเขียนได้ถูกต้อง ตรงตามกฎของภาษาซี ตัวแปลโปรแกรมแปลจะแปลโปรแกรมภาษาซีให้เป็นภาษาเครื่อง แล้วนําไปเก็บไว้ใน แฟ้มชื่อเดียวกันแต่ส่วนขยายเป็น โอบีเจ (ชื่อแฟ้ม .obj) จากนั้นตัวเชื่อมโยง (linker) จะต้องนําฟังก์ชันจาก คลัง (library function) ต่างๆ ที่โปรแกรมได้เรียกใช้ มารวมเข้ากับแฟ้มจุดโอบีเจ แล้วนําไปเก็บไว้ในแฟ้มชื่อ เดิม แต่ส่วนขยายเป็น อีเอ็กซ์อี (ชื่อแฟ้ม .exe) ซึ่งแฟ้มนี้จะเป็นแฟ้มที่พร้อมสําหรับกระทําการ (execute) เมื่อต้องการกระทําการโปรแกรมก็สามารถป้อนข้อมูลเข้า (input data) ให้กับโปรแกรม ซึ่งจะได้ผลการ กระทําการ (output)
รหัสต้นฉบับ (source code)
รหัสต้นฉบับ หมายถึง ตัวโปรแกรมที่ประกอบด้วยข้อความสั่งและตัวฟังก์ชันต่างๆ
นิพจน์(expressions)
ในภาษาซี นิพจน์ หมายถึง สิ่งที่ประมวลผลแล้วสามารถให้เป็นค่าตัวเลขได้ ซึ่งแต่ละนิพจน์จะมีระดับ ความยากง่ายในการประมวลผลที่แตกต่างกัน นิพจน์ที่มีระดับการประมวลผลแบบง่ายที่สุด จะประกอบด้วย ตัวแปรเพียงตัวเดียว หรือ ค่าคงที่ นิพจน์ที่มีลักษณะเป็นค่าคงที่
การคำนวณทางคณิตศาสตร์
คูณ
นําค่าที่เก็บใน a คูณกับค่าที่เก็บใน b แล้วเก็บ
ผลลัพธ์ไว้ใน c
หาร
ให้ค่าที่เก็บใน a เป็นตัวตั้ง ค่าที่เก็บใน b เป็น ตัวหาร แล้วเก็บผลหารไว้ใน c ถ้าทั้งตัวตั้งและตัวหารต่างเป็นจํานวนเต็ม ค่าที่เก็บใน c จะเป็นจํานวนเต็ม แต่ถ้าตัวตั้งหรือตัวหารตัวใดตัวหนึ่งเป็น จํานวนจริงที่มีทศนิยม ผลลัพธ์ที่ได้จะเป็น จํานวนจริงที่มีทศนิยมด้วย
ลบ
นําค่าที่เก็บใน b ลบออกจากค่าที่เก็บใน a แล้วเก็บผลลัพธ์ไว้ใน c
มอดูลัส
ให้ค่าที่เก็บใน a เป็นตัวตั้ง ค่าที่เก็บใน b เป็น ตัวหาร แล้วเก็บเศษไว้ใน c
บวก
นําค่าที่เก็บใน a บวกกับค่าที่เก็บใน b แล้ว
เก็บผลลัพธ์ไว้ใน c
ตัวแปร(variables)
ชนิดข้อมูล (data types)
ข้อมูลที่ใช้ในโปรแกรมมีหลายชนิด ซึ่งนักเขียนโปรแกรมต้องเลือกใช้ตามความเหมาะสมกับการใช้งาน ข้อมูลมีขนาดที่แตกต่างกันไปตามชนิดข้อมูล นอกจากนี้แล้ว ชนิดข้อมูลยังอาจมีขนาดที่แตกต่างกันโดยขึ้นกับ เครื่องคอมพิวเตอร์และตัวแปลโปรแกรมที่ใช้ในการประมวลผล แต่โดยทั่วไปแล้วในไมโครคอมพิวเตอร์ ชนิด ข้อมูลมีการใช้ในโปรแกรม และขนาด
กฎการตั้งชื่อตัวแปร
การตั้งชื่อตัวแปรมีข้อกําหนดดังนี้
ประกอบด้วย a ถึง z, 0 ถึง 9 และ _ เท่านั้น
อักขระตัวแรกต้องเป็น a ถึง z และ _
ห้ามใช้ชื่อเฉพาะ
ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก มีความหมายที่แตกต่างกัน
ยาวสูงสุด 31 ตัวอักษร
ตัวแปรชนิดตัวเลข (numeric variable types)
ตัวแปรจํานวนเต็ม (integer variables) หมายถึง ตัวแปรที่ใช้เก็บค่าที่เป็นจํานวนเต็ม ได้แก่ char, int, short, long, unsigned char, unsigned int, unsigned short และ unsigned long
ตัวแปรจํานวนจริง (real variables) หรือ ตัวแปรจุดลอยตัว (floating – point variables) หมายถึง ตัวแปรที่ใช้เก็บค่าที่เป็นจํานวนจริง ซึ่งเป็นตัวเลขที่เป็นเศษส่วน หรือมีจุดทศนิยม
การประกาศตัวแปร
ชนิดข้อมูล ชื่อตัวแปร;
ชนิดข้อมูล ชื่อตัวแปร1, ชื่อตัวแปร2, ... ;
ตัวแปรชนิดอักขระ (character variable types)
ตัวแปรชนิดอักขระ (char) ถูกจัดเก็บไว้ในหน่วยความจํา ในรูปแบบจํานวนเต็ม ขนาด 1 ไบต์ ดังนั้น
ตัวแปรชนิดอักขระจึงสามารถใช้งานได้ทั้งแบบอักขระ และ จํานวนเต็ม
ตัวคงที่่(constant)
ตัวคงที่มีลักษณะคล้ายตัวแปร แตกต่างจากตัวแปรตรงที่ ค่าที่เก็บในตัวคงที่จะคงเดิมไม่มีการ เปลี่ยนแปลงจนกระทั่งจบโปรแกรม แต่ค่าที่เก็บในตัวแปรสามารถเปลี่ยนแปลงได้ตลอดเวลา
การประกาศตัวคงที่ การประกาศตัวคงที่ทําได้ 2 วิธี ดังนี้ 1. ใช้คําหลัก const ตามรูปแบบดังนี้
ใช้ตัวประมวลผลก่อน ตามรูปแบบ
ข้อความสั่งกำหนดค่า(assignment statement)
ข้อความสั่งกําหนดค่า คือ ข้อความสั่งที่ใช้สําหรับ สั่งให้นําผลลัพธ์ของนิพจน์ที่อยู่ด้านขวาของตัว ดําเนินการเท่ากับ (=) มาเก็บไว้ในตัวแปรที่อยู่ด้านซ้ายของตัวดําเนินการเท่ากับ (=) เมื่อนํานิพจน์มาเขียนไว้ในโปรแกรมภาษาซีจะกลายเป็นข้อความกําหนดค่า ดังตัวอย่างต่อไปนี้
ตัวดำเนินการประกอบ(compound operator)
ตัวดําเนินการประกอบ เป็นการใช้ตัวดําเนินการหนึ่งตัวร่วมกับเครื่องหมายเท่ากับ การใช้ตัว ดําเนินการประกอบจะช่วยให้เขียนข้อความสั่งได้สั้น และเร็วขึ้น
ตัวดำเนินการเอกภาค(unary operator)
ตัวดําเนินการเอกภาค คือ การใช้ตัวดําเนินการกับตัวแปรตัวเดียว ในที่นี้จะแสดงการใช้ตัวดําเนินการ 2 ตัวกับตัวแปรตัวเดียว ซึ่งมีลักษณะการใช้ 2 แบบ คือ 1. ตัวดําเนินการเอกภาคเติมหลัง (postfix mode) หมายถึง ตัวดําเนินการเอกภาคอยู่หลังตัวแปร เช่น a++ หมายถึง ให้เพิ่มค่าให้ตัวแปร a ขึ้นอีก 1 2. ตัวดําเนินการเอกภาคเติมหน้า (prefix mode) หมายถึง ตัวดําเนินการเอกภาคอยู่หลังตัวแปร เช่น ++a หมายถึง ให้เพิ่มค่าให้ตัวแปร a ขึ้นอีก 1
การแปลงชนิดข้อมูล(type cast)
การแปลงชนิดข้อมูลมีหลายวิธี แต่ที่กล่าวในที่นี้คือ การแปลงชนิดข้อมูลโดยการกําหนดชนิด ไว้ที่หน้าข้อมูลนั้น
ตัวแปร = (ชนิดข้อมูล) นิพจน์;