Lecture No. 3 ทบทวนทฤษฎีและแบบฝึกหัด C Programming Lecture No. 3 ทบทวนทฤษฎีและแบบฝึกหัด
การเขียนโปรแกรมภาษา C แฟ้มส่วนหัว แฟ้ม.h Object Code โมดูลอื่นที่แปลแล้ว (.obj) Source Code คอมไพเลอร์ โปรแกรม Editor ตัวเชื่อม (Linker) โปรแกรมที่ประมวลผลได้ (execute file) คลังโปรแกรม Library Functions Department of Computer Science 310322 C Programming
การเขียนโปรแกรมภาษา C 1. สร้างแฟ้มซอร์สโค้ดด้วยตัวอิดิเตอร์ เช่น vi เพื่อ บรรจุคำสั่งต่าง ๆ ที่เราเขียน 2. สั่งให้คอมไพเลอร์แปลงแฟ้มซอร์สโค้ดเป็นแฟ้ม รหัสจุดหมาย (.obj) 3. นำไปเชื่อมส่วนต่าง ๆ (link) ด้วย Linker แฟ้มคลังโปรแกรมมาตรฐาน แฟ้มรหัสจุดหมายอื่น 4. ได้โปรแกรมที่ประมวลผลได้เป็นแฟ้ม (Execute File) Department of Computer Science 310322 C Programming
การประมวลผลโปรแกรม 1. ระบบปฏิบัติการจะทำหน้าที่ไปอ่านแฟ้มโปรแกรม 1. ระบบปฏิบัติการจะทำหน้าที่ไปอ่านแฟ้มโปรแกรม จากสื่อบันทึก เช่น Harddisk เรียกว่าการโหลด โปรแกรม 2. ระบบปฏิบัติการจะทำหน้าที่อ่านโปรแกรมทีละคำสั่ง จากหน่วยความจำส่งเข้าไปยังหน่วยประมวลผล กลาง เรียกว่า การไปนำมา (fetching) 3. หน่วยควบคุมในซีพียูจะตีความ เรียกว่า การตีความ (Decoding) เพื่อตรวจสอบว่าเป็นภาษาที่เครื่องรู้จัก หรือไม่ Department of Computer Science 310322 C Programming
มาตรฐานภาษา C เพื่อให้มีมาตรฐานในการเขียนภาษา C เป็น แบบเดียวกันทั่วโลก ช่วยให้ภาษา C มีคุณสมบัติปรับเปลี่ยนไป ประมวลผลบนสภาพแวดล้อมต่าง ๆ ได้ง่ายขึ้น ในการเขียนโปรแกรมภาษา C นี้จะอ้างอิงตาม มาตรฐาน ANSI C Department of Computer Science 310322 C Programming
ภาษาซี (C Language) คุณสมบัติ เป็นภาษาระดับสูง ไม่ขึ้นกับระบบปฏิบัติการ (OS) ไม่ขึ้นกับชนิดของเครื่องคอมพิวเตอร์ เป็นภาษาโครงสร้าง (Structure Language) กราบเรียนท่านอาจารย์ และสวัสดีเพื่อนๆ Department of Computer Science 310322 C Programming
โครงสร้างของโปรแกรมภาษาซี ส่วนประมวลผลก่อน ส่วนประกาศส่วนกลาง ส่วนของฟังก์ชัน ส่วนต้นแบบฟังก์ชัน โครงสร้างประกอบด้วย ส่วนประมวลผลก่อน Preprocessor ส่วนประกาศส่วนกลาง Declaration ส่วนต้นแบบฟังก์ชั่น Function Prototype ส่วนของฟังก์ชั่น Function Body กราบเรียนท่านอาจารย์ และสวัสดีเพื่อนๆ Department of Computer Science 310322 C Programming
# include <stdio.h> int main ( void ) { ตัวอย่างโปรแกรม # include <stdio.h> int main ( void ) { printf(“Hello, Good morning. \n”); return ( 0 ); } เป็นโปรแกรมสั่งพิมพ์ข้อความ Hello, Good morning. Department of Computer Science 310322 C Programming
แบบฝึกหัด 3.1 ให้เขียนโปรแกรมภาษา C เพื่อดำเนินการดังต่อไปนี้ สร้างแฟ้มชื่อ customer.c แสดงผล ต่อไปนี้ ---------------------------------------------------------------------------------------- | ชื่อลูกค้า | รายการที่สั่งซื้อ | จำนวนหน่วย | ราคาต่อหน่วย | ยอดเงินรวม | --------------------------------------------------------------------------- Department of Computer Science 310322 C Programming
แบบฝึกหัด 3.1 (2) #include <stdio.h> int main(void) {printf แบบฝึกหัด 3.1 (2) #include <stdio.h> int main(void) {printf (“---------------------------------------------------------------------------------\n”); printf (“| รายชื่อลูกค้า | รายการสั่งซื้อ | จำนวนหน่วย | ราคาต่อหน่วย | ยอดเงินรวม |\n”); return (0); } Department of Computer Science 310322 C Programming
แบบฝึกหัดที่ 3.2 ให้เขียนโปรแกรมภาษา C เพื่อให้ทำงานดังต่อไปนี้ โดย สร้างแฟ้มชื่อ myMarks.c ต้องการโปรแกรมดำเนินการในการรับคะแนนจากการบันทึกผ่านคีย์บอร์ด 3 ค่า คือ คะแนนกลางภาค (midterm) คะแนนปฏิบัติการ (lab) คะแนนปลายภาค (final) เพื่อคำนวนคะแนนรวม (total) โดยอัตโนมัติ สำหรับการหาคะแนนรวมของนิสิตแต่ละคนเอง ------------------------------ | midterm | final | total | ------------------------------- 30 70 100 Department of Computer Science 310322 C Programming
แบบฝึกหัดที่ 3.2 (2) #include <stdio.h> int main(void) { แบบฝึกหัดที่ 3.2 (2) #include <stdio.h> int main(void) { float mid, lab, final, total ; printf("\n\nใส่คะแนน ตามลำดับดังนี้ : คะแนนกลางภาค คะแนนปฏิบัติการ และ คะแนนปลายภาค\n\n"); scanf("%f%f%f", &mid, &lab, &final); total = mid + lab + final; Department of Computer Science 310322 C Programming
แบบฝึกหัดที่ 3.2 (3) printf แบบฝึกหัดที่ 3.2 (3) printf ("\n\n----------------------------------------\n"); ("| midterm | lab | final | total |\n"); ("----------------------------------------\n"); ("\n%9.2f%10.2f%10.2f%10.2f\n\n", mid, lab, final,total); return (0); } Department of Computer Science 310322 C Programming
การเขียนอัลกอริทึม อัลกอริทึมเป็นขั้นตอนการแก้ปัญหา การเขียนอัลกอริทึมถือว่าเป็นเรื่องที่สำคัญ ในการเขียนโปรแกรม อัลกอริทึมที่ดีต้องประกอบด้วย แต่ละขั้นในอัลกอริทึมต้องชัดเจนและถูกต้อง ลำดับการเขียนคำสั่งต้องเป็นไปตามลำดับที่ถูกต้อง ชัดเจน เพื่อนำไปสู่คำตอบที่ถูกต้อง อัลกอริทึมต้องมีจุดสิ้นสุดเสมอ ใช้เวลาในการประมวลผลน้อย แก้ไขดัดแปลงได้ง่าย Department of Computer Science 310322 C Programming
การทำงานพื้นฐานของคอมพิวเตอร์ Storage Input Processing Output Department of Computer Science 310322 C Programming
การวิเคราะห์งาน สิ่งที่ต้องการจากซอฟต์แวร์หรือระบบ output สิ่งที่ซอฟต์แวร์หรือระบบต้องดำเนินการ processing สิ่งที่ซอฟต์แวร์หรือระบบต้องนำเข้าเพื่อดำเนินการให้ได้สิ่งที่ต้องการ input Department of Computer Science 310322 C Programming
สัญลักษณ์ที่ใช้ในการประมวลผล ความหมาย + บวก - ลบ * คูณ / หาร ^ ยกกำลัง สัญลักษณ์ ความหมาย > มากกว่า < น้อยกว่า >= มากกว่าหรือเท่ากับ <= น้อยกว่าหรือเท่ากับ <> ไม่เท่ากับ Department of Computer Science 310322 C Programming
แบบฝึกหัดที่ 3.2 จงเขียนโปรแกรมเพื่อหาพื้นที่ของรูปสี่เหลี่ยมคางหมู ซึ่งมีความสูงเป็น 3.0 หน่วย และความยาวด้านคู่ขนานเป็น 5.0 และ 5.5 ตามลำดับ Department of Computer Science 310322 C Programming