Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore คำสั่งรับค่าและแสดงผล

คำสั่งรับค่าและแสดงผล

Description: ชุดที่3

Search

Read the Text Version

ชุดท3ี่ คำส่งั รบั คำ่ และแสดงผล คำนำ ชดุ กจิ กรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ช้ันมัธยมศึกษา ปี ปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ชุดนี้จัดทาขึ้นเพ่ือพัฒนาการจัดกิจกรรมการเรียนการสอน โดยเน้นผู้เรียนเป็นสาคัญ และส่งเสริมการเรียนรู้ของผู้เรียนด้วยตนเอง คิดเป็น ทาเป็นและแก้ปัญหาเป็น โดยได้ ขยายผลในด้านเนื้อหาให้กว้างและชัดเจนย่ิงข้ึน ซึ่งถือว่าเป็นไปตามแนวทางการจัดการศึกษาของชาติที่เน้นผู้เรียน เป็นสาคัญ และสนองต่อพระราชบัญญัติการศึกษาแห่งชาติ พุทธศักราช 2542 และสอดคล้องกับหลักสูตร แกนกลางการศึกษาขั้นพื้นฐาน พุทธศักราช 2551 ที่มุ่งเน้นให้ผู้เรียนได้รับการพัฒนาทั้งความรู้ กระบวนการคิด กระบวนการสืบเสาะหาความรู้ การแก้ปัญหา ความสามารถในการสื่อสาร การตัดสินใจ การนาความรู้ไปใช้ใน ชีวติ ประจาวนั มคี ุณธรรมค่านิยมอนั พงึ ประสงคแ์ ละผู้เรยี นมีเจตคตทิ ด่ี ีตอ่ วิชาคอมพวิ เตอร์ ชดุ กจิ กรรมการเรยี นรู้การเขยี นโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษา ปี ปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ครอบคลุมตัวชี้วัดและสาระการเรียนรู้ตามหลักสูตร แกนกลางการศึกษาข้นั พืน้ ฐาน พุทธศกั ราช 2551 ซ่ึงประกอบดว้ ยชุดกิจกรรมการเรยี นรู้ท้งั หมด 5 ชุด ดงั นี้ ชดุ ที่ 1 เรื่อง การพฒั นาโปรแกรมและการจาลองความคิด ชดุ ที่ 2 เรือ่ ง โครงสรา้ งของโปรแกรมภาษาซี ชดุ ท่ี 3 เร่ือง คาส่งั รบั คา่ และแสดงผล ชุดท่ี 4 เรอ่ื ง โครงสร้างการเขยี นโปรแกรม ชุดท่ี 5 เร่ือง ตวั แปรชดุ (Array) ชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 นี้เป็นชุดที่ 3 เรื่อง คาสั่งรับค่าและแสดงผล ผู้จัดทาหวังเป็นอย่างยิ่งว่าชุดกิจกรรมการเรียนรู้ชุดที่ 3 เรื่อง คาสั่งรับค่าและแสดงผล ชุดนี้จะช่วยให้ผู้เรียนมีความเข้าใจเกี่ยวกับคาสั่งรับค่าและแสดงผลในการเขียนโปรแกรมได้มากยิ่งขึ้น ซึ่งเป็น ประโยชน์อย่างย่งิ ตอ่ การพัฒนาการเรียนรู้และสรา้ งองค์ความร้ทู ีย่ งั่ ยนื ของผ้เู รียนต่อไป สุวรรณา จิตตป์ ลมื้ 1 โรงเรียนบางแพปฐมพิทยา ชุดกจิ กรรมกำรเรยี นรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ รำยวชิ ำภำษำซี ง30243 ชั้นมัธยมศกึ ษำปที ี่ 5

ชดุ ท3่ี คำสั่งรับค่ำและแสดงผล หน้ำ สำรบัญ 1 2 เรือ่ ง 3 คานา สารบญั 5 คาแนะนาในการใชช้ ุดกจิ กรรมการเรยี นร้สู าหรับครู 6 คาแนะนาในการใช้ชุดกจิ กรรมการเรยี นรสู้ าหรับนกั เรยี น 6 มาตรฐานการเรยี นร้แู ละตวั ชี้วัด จุดประสงคก์ ารเรียนรู้ 7 แบบทดสอบกอ่ นเรยี น 10 บตั รเนอ้ื หาท่ี 1 ฟงั ก์ชนั รับข้อมูล 24 บัตรกิจกรรมที่ 1 ฟังกช์ นั รบั ขอ้ มูล บัตรเน้ือหาที่ 2 ฟังกช์ นั แสดงผลขอ้ มูล 1 26 บตั รกิจกรรมท่ี 2 ฟงั ก์ชันแสดงผลขอ้ มูล 39 แบบทดสอบหลังเรยี น 41 บรรณานุกรม 44 ภาคผนวก 45 แบบบันทึกคะแนนระหว่างเรยี น 46 เฉลยแบบทดสอบกอ่ นเรียน เฉลยบัตรกิจกรรมการเรียนร้ทู ี่ 1 เรอ่ื ง ฟังก์ชันรบั ข้อมลู 47 เฉลยบตั รกิจกรรมการเรียนรู้ที่ 2 เรอ่ื ง ฟังกช์ ันแสดงผลข้อมูล 48 เฉลยแบบทดสอบหลงั เรียน 50 52 ชุดกจิ กรรมกำรเรียนรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 2 รำยวชิ ำภำษำซี ง30243 ชัน้ มัธยมศึกษำปีที่ 5

ชุดท3ี่ คำสง่ั รับคำ่ และแสดงผล คำแนะนำกำรใช้ชดุ กิจกรรมกำรเรยี นรู้สำหรบั ครู เมื่อครูผู้สอนได้นาชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชนั้ มธั ยมศึกษาปีท่ี 5 กลุ่มสาระการเรยี นร้กู ารงานอาชีพและเทคโนโลยี ไปใช้ควรปฏิบัติดังน้ี 1. ดาเนินการจัดกิจกรรมการเรียนการสอนโดยใช้ชุดกิจกรรมการเรียนรู้การเขียนโปรแกรม ภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและ เทคโนโลยี ควบคูไ่ ปกบั แผนการจดั การเรยี นร้รู ายวชิ าภาษาซี ง30243 ระดบั ชน้ั มัธยมศกึ ษาปที ี่ 5 2. หลังจากได้ศึกษาเนื้อหาแล้วใหน้ กั เรยี นตอบคาถามเพอ่ื ประเมินความรแู้ ตล่ ะเรือ่ ง 3. ควรให้นักเรยี นปฏบิ ตั ิชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชั้นมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี เพื่อความเข้าใจโดยครูให้ คาแนะนาอย่างใกล้ชิด 4. ใหน้ กั เรยี นตรวจสอบเฉลยท้ายเล่มเมอื่ นกั เรยี นทากิจกรรมตามชุดการเรยี นรู้ชดุ ที่ 3 เร่ือง คาสงั่ รับ ค่าและแสดงผล จบแลว้ เพอ่ื ทราบผลการเรยี นรขู้ องตนเอง 5. ทดสอบความรู้หลังเรียนจากที่นักเรียนทากิจกรรมการเรียนรู้จบชุดแล้วด้วยการทาแบบทดสอบ หลังเรียนในการเรียนรู้ด้วยชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ช้ันมธั ยมศกึ ษาปีท่ี 5 กลุ่มสาระการเรยี นรู้การงานอาชีพและเทคโนโลยี เร่อื งการพฒั นาโปรแกรมและ การจาลองความคดิ นักเรยี นควรปฏบิ ตั ิดงั น้ี 1. นักเรียนจะได้รับชดุ กจิ กรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ช้ันมัธยมศึกษาปีที่ 5 กลุ่มสาระการเรียนรูก้ ารงานอาชีพและเทคโนโลยี ชุดท่ี 3 เร่ือง คาส่ังรบั ค่าและ แสดงผล 1 เลม่ และซดี ปี ระกอบชดุ การเรียนรู้ 1 แผ่น 2. วิธีการสอนในชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ชน้ั มธั ยมศกึ ษาปีท่ี 5 กลุ่มสาระการเรียนรู้การงานอาชพี และเทคโนโลยี เรื่องการพฒั นาโปรแกรมและ การจาลองความคดิ นักเรียนเรยี นร้แู ละทากจิ กรรมการเรียนรู้ ดังข้ันตอนตอ่ ไปนี้ 2.1 ศึกษาจดุ ประสงค์การเรียนรู้ ภาระงานประจาหน่วย และการประเมนิ ผล 2.2 เรียนรู้ด้วยวิธีการสอนโดยใช้กระบวนการทางวิทยาศาสตร์ การสืบเสาะหาความรู้ การสารวจตรวจสอบ การสบื คน้ ข้อมลู และอภปิ ราย ขน้ั ตอนการสอนมี 6 ข้นั ตอนคอื 2.2.1 ขั้นนาเข้าสู่บทเรยี น - กระตุน้ เรา้ ความสนใจ หรือทบทวนความร้เู ก่า 2.2.2 ข้ันนาเสนอ - นาเสนอความรู้ใหม่ ชดุ กจิ กรรมกำรเรียนรูก้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 3 รำยวชิ ำภำษำซี ง30243 ชนั้ มัธยมศกึ ษำปที ่ี 5

ชดุ ท3่ี คำส่งั รบั ค่ำและแสดงผล 2.2.3 ข้นั ฝกึ - เน้นการเรียนรู้โดยใช้กระบวนการทางวิทยาศาสตร์ การสืบเสาะหาความรู้ การ สารวจตรวจสอบ การสืบค้นข้อมูลและอภปิ ราย 2.2.4 ขน้ั การทาบตั รกจิ กรรม - ในแตล่ ะแผนการจัดการเรียนรู้ มีภาระงานหรือชิน้ งานให้นกั เรียนได้ทดสอบยอ่ ย ซง่ึ ทุกคนต้องผา่ นขน้ั ตอนการทาบัตรกิจกรรมนจ้ี ึงจะสามารถเรียนกจิ กรรมต่อไปได้ 2.2.5 ขั้นสรุป - นักเรยี นช่วยกันสรปุ ความรทู้ ไ่ี ดจ้ ากบทเรยี นโดยมีครูคอยเพิม่ เตมิ 2.2.6 ขั้นประยกุ ตใ์ ชแ้ ละสะท้อนคิด - นาความรู้ที่ได้จากแผนการจัดการเรียนรู้ต่าง ๆ ในหน่วยนั้นทาภาระงานและ สะท้อนคิดประจาหน่วยฝึกข้ันตอนน้ี นักเรียนต้องดาเนินการเป็นกลุ่มด้วยการนาเสนอผลงานที่มีกระบวนการ สะท้อนคดิ ภายในกลุ่มเก่ียวกับงานของตนเองท้ังส่ิงท่ีทาได้และสิ่งทตี่ ้องปรับปรงุ ดงั น้ันในขน้ั ตอนนี้นกั เรียนจึง มีทั้งกระบวนการนาความรู้ที่ได้ไปประยุกต์ใช้ และการสะท้อนคิดในผลงานของกันและกันเพื่อคัดเลือกผลงาน ที่ดีที่สุดประจาหน่วยเป็นกาลังใจให้นกั เรียนในการทาผลงานในหน่วยตอ่ ไป อกี ท้ังยังสามารถนาข้อสะทอ้ นคิด ของเพ่ือนมาปรับปรุงผลงานของตนเองใหด้ ยี งิ่ ขึ้น 3. การประเมนิ ผล 3.1 เนื้อหา - ใช้แบบทดสอบ 3.2 สมรรถนะ - ประเมนิ ตามภาระงาน 3.3 คณุ ลกั ษณะอนั พึงประสงค์ - ประเมินโดยใชแ้ บบสงั เกตพฤติกรรม ชุดกจิ กรรมกำรเรยี นร้กู ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 4 รำยวชิ ำภำษำซี ง30243 ชนั้ มัธยมศกึ ษำปีท่ี 5

ชุดท3่ี คำส่งั รับค่ำและแสดงผล คำแนะนำกำรใช้ชดุ กิจกรรมกำรเรียนรู้สำหรับนกั เรียน ชดุ กิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพวิ เตอร์ รายวิชาภาษาซี ง30243 ช้ันมธั ยมศึกษา ปีที่ 5 กลุ่มสาระการเรียนรู้การงานอาชีพและเทคโนโลยี ชุดที่ 3 เรื่อง คาสั่งรับค่าและแสดงผล ชุดนี้ใช้ ประกอบการจัดการเรียนการสอนของนักเรียน ชั้นมัธยมศึกษาปีที่ 5 โดยมีขั้นตอนการจัดกิจกรรมการเรียน การสอนดงั น้ี 1. นกั เรยี นฟังคาชีแ้ จงการใช้ชุดกจิ กรรมการเรยี นรู้ใหเ้ ขา้ ใจ 2. ให้นักเรียนรับชุดกิจกรรมการเรียนรู้การเขียนโปรแกรมภาษาคอมพิวเตอร์ รายวิชาภาษาซี ง30243 ช้ันมัธยมศึกษาปีท่ี 5 กลุ่มสาระการเรียนรกู้ ารงานอาชีพและเทคโนโลยี ชุดท่ี 3 เร่ือง คาสั่งรับค่าและ แสดงผล 3. นักเรียนเริ่มทาแบบทดสอบก่อนเรียนเพื่อประเมินว่านักเรียนมีพื้นฐานความรู้ ความเข้าใจมาก น้อยเพียงใด 4. ให้นักเรียนศึกษาเนื้อหาทาความเข้าใจให้ดีตั้งแต่หน้าแรกถึงหน้าสุดท้ายตามลาดับอย่าข้าม ขน้ั ตอนและทาบัตรกจิ กรรมท้ายเลม่ ชุดท่ี 3 เรอื่ ง คาสงั่ รบั ค่าและแสดงผล 5. เมื่อพบคาชี้แจงหรือคาถามในแต่ละบตั รกิจกรรมใหน้ ักเรียนอา่ นและทากิจกรรมท่ีกาหนดให้อย่าง รอบคอบ 6. สง่ ผลงานการทาบตั รกจิ กรรมการเรียนร้ทู า้ ยเล่มเพื่อให้ครูตรวจและบันทึกผล 7. เมอ่ื ทาบัตรกิจกรรมเสร็จแลว้ จดั เก็บอุปกรณ์ให้เรียบร้อย 8. เมื่อนักเรียนทุกคนทากิจกรรมการเรียนรู้ครบแล้วให้นักเรียนทาแบบทดสอบหลังเรียนด้วยความ ตัง้ ใจและซ่ือสตั ย์ 9. รับฟังการบอกคะแนน คาชมเชย และคาแนะนาเพ่ิมเติมจากครู ชดุ กจิ กรรมกำรเรียนรูก้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 5 รำยวชิ ำภำษำซี ง30243 ชั้นมัธยมศึกษำปที ่ี 5

ชดุ ท3่ี คำสัง่ รบั ค่ำและแสดงผล มำตรฐำนกำรเรยี นร้แู ละตัวชี้วัด มำตรฐำน ง 3.1 เขา้ ใจ เหน็ คุณค่า และใชก้ ระบวนการเทคโนโลยีสารสนเทศในการสบื ค้นขอ้ มูล การเรียนรู้ การสือ่ สาร การแก้ปัญหา การทางาน และอาชพี อย่างมปี ระสิทธิภาพ ประสทิ ธิผลและมีคณุ ธรรม ตัวชีว้ ดั ง 3.1 ม.4-6/5 แกป้ ญั หาดว้ ยกระบวนการเทคโนโลยีสารสนเทศอย่างมปี ระสทิ ธิภาพ จดุ ประสงค์กำรเรียนรู้ 1. เขียนโปรแกรมโดยใช้ฟังกช์ นั printf() ได้ 2. เขยี นโปรแกรมโดยใช้ฟังก์ชนั putchar() ได้ 3. เขียนโปรแกรมโดยใช้ฟงั ก์ชนั scanf() ได้ 4. เขยี นโปรแกรมโดยใช้ฟังกช์ นั getchar() ได้ 5. เขยี นโปรแกรมโดยใช้ฟงั ก์ชัน printf() ได้ 6. เขียนโปรแกรมโดยใช้ฟงั กช์ นั getch() ได้ 7. เขียนโปรแกรมโดยใช้ฟงั ก์ชัน getche() ได้ 8. เขียนโปรแกรมโดยเลือกใช้คาสงั่ รับคา่ และฟงั กช์ ันแสดงผลบนหนา้ จอไดอ้ ยา่ งเหมาะสม ชดุ กิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 6 รำยวชิ ำภำษำซี ง30243 ช้ันมัธยมศึกษำปที ่ี 5

ชุดท3ี่ คำส่งั รบั คำ่ และแสดงผล แบบทดสอบก่อนเรยี น เร่ือง คำสง่ั รับคำ่ และแสดงผล คำช้แี จง 1. แบบทดสอบเป็นแบบปรนยั จานวน 10 ข้อ 2. ใหน้ กั เรียนเลือกคาตอบทถ่ี กู ตอ้ งท่ีสดุ เพียงคาตอบเดียว แล้วใสเ่ ครื่องหมายกากบาท (x) ลงในกระดาษคาตอบ 1. คาส่งั แสดงผลออกทางจอภาพ ภาษาซเี ป็นคาสั่งใด ก main(); ข getch(); ค printf(); ง scanf(); 2. คาสั่งแสดงผลออกทางจอภาพ ตอ้ งอา้ งอิงไลบรารีเปน็ แบบใด ก stdio.h ข conio.h ค math.h ง time.h 3. ข้อมูลท่ีต้องการแสดงผลออกทางจอภาพ ตอ้ งเขยี นในเครือ่ งหมายใด ก เครอื่ งหมาย : : ข เครอ่ื งหมาย ' ' ค เครอ่ื งหมาย \" \" ง เครื่องหมาย # # 4. ขอ้ มูลประเภทแบบใดท่ีสามารถแสดงผลออกทางจอภาพได้ ก ขอ้ ความธรรมดา และตัวเลข ข ขอ้ ความธรรมดา และค่าของตวั แปร ค ข้อความธรรมดา และรปู ภาพ ง ขอ้ ความพิเศษ และตวั แปรพิเศษ 5. ถา้ ต้องการแสดงผลคา่ ของตัวแปรชนดิ จานวนเตม็ ตอ้ งใชร้ หัสควบคุมรปู แบบใด ก %s ข %u ค %f ง %d 6. ถ้าตอ้ งการแสดงผลค่าของตวั แปรชนิดจานวนทศนยิ ม ต้องใชร้ หัสควบคุมรูปแบบใด ก %u ข %c ค %f ง %d ชดุ กิจกรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 7 รำยวชิ ำภำษำซี ง30243 ชัน้ มธั ยมศกึ ษำปที ่ี 5

ชุดท3่ี คำสงั่ รบั คำ่ และแสดงผล 7. ถ้าตอ้ งการแสดงผลค่าขอ้ ความ ตอ้ งใชร้ หัสควบคุมรปู แบบใด ก %s ข %u ค %d ง %f 8. ถา้ ตอ้ งการแสดงผลใหข้ นึ้ บรรทัดใหม่ ต้องใชอ้ ักขระควบคมุ รปู แบบใด ก \\t ข \\n ค \\f ง \\b 9. ถ้าตอ้ งการแสดงข้อความ Hello แล้วขึ้นบรรทดั ใหม่ จากนน้ั แสดงขอ้ ความ Good bye ต้องใช้คาสั่ง รปู แบบใด ก printf(“Hello\\bGood bye\\n); ข printf(“Hello\\tGood bye”); ค printf(“Hello\\nGood bye”); ง print(‘Hello\\nGood bye’); 10. ถา้ x=45 y=’thai’ แล้วต้องการให้แสดงแสดงขอ้ ความ value=45 ตามด้วยเวน้ ชอ่ งวา่ ง 1 แทบ็ ตาม ด้วยขอ้ ความ you are thai ตอ้ งใช้คาสง่ั รูปแบบใด ก printf(“value=%d\\tyou are %s”); ข printf(“value=%d\\nyou are %c”); ค printf(“value=%d\\tyou are %s”,x,z); ง printf(“value=%d\\tyou are %s”,x,y); ชดุ กจิ กรรมกำรเรียนรูก้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 8 รำยวชิ ำภำษำซี ง30243 ช้นั มธั ยมศกึ ษำปที ี่ 5

ชุดท3่ี คำสั่งรับค่ำและแสดงผล กระดำษคำตอบ เรื่อง คำสงั่ รบั ค่ำและแสดงผล  ก่อนเรยี น  หลังเรยี น ชอ่ื .................................................................................... ชั้น ................ เลขที่ .............. ขอ้ ท่ี ก ข ค ง 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ชดุ กิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 9 รำยวชิ ำภำษำซี ง30243 ชน้ั มัธยมศกึ ษำปีที่ 5

ชดุ ท3่ี คำส่งั รบั คำ่ และแสดงผล บัตรเนื้อหำที่ 1 ฟังก์ชนั รับข้อมูล สาหรับบทนี้จะอธิบายถึงฟังก์ชันพื้นฐานสาหรับการเขียนโปรแกรมภาษา C เนื่องจากภาษา C มี ฟงั ก์ชันให้ใช้งานมากมายแต่ในบทน้ีจะกลา่ วถึงฟงั กช์ ันพ้ืนฐานท่ีใชง้ านอยู่เป็นประจาในการเขียนโปรแกรมนั้น คอื ฟังก์ชันรบั ขอ้ มลู และฟังกช์ นั แสดงผลขอ้ มูล โดยแต่ละฟงั กช์ ันมรี ายละเอียดดังต่อไปนี้ ฟังกช์ ัน scanf( ) เปน็ ฟังกช์ ันที่ใช้ในการรบั ข้อมูล จากคยี ์บอรด์ เขา้ ไปเก็บไวใ้ นตัวแปรท่ีกาหนดไว ้้โดยสามารถรบั ข้อมลู ที่เป็นตัวเลขจานวนเตม็ ตัวเลขทศนิยม ตวั อักขระตัวเดยี ว หรือข้อความกไ็ ด้ รปู แบบกำรใช้งำนฟังก์ชนั scanf(control string, argument list); โดยที่ control string คอื รหสั รูปแบบขอ้ มูล (format code) โดยจะต้องเขียนอยู่ภายใต้ เครอ่ื งหมาย “……..” (double quotation) argument list คอื ชื่อตวั แปรท่ีใช้เกบ็ ข้อมูลโดยจะต้องใช้เครื่องหมาย & (ampersand) นาหนา้ ช่ือตัวแปร ยกเวน้ ตวั แปรชนดิ string ไม่ตอ้ งมีเคร่อื งหมาย & นาหน้าชื่อ ถ้ามตี วั แปรมากกวา่ 1 ตัวแปร ให้ใช้เครื่องหมาย , (comma) คั่นระหว่างตัวแปรแตล่ ะตวั ชุดกิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 10 รำยวชิ ำภำษำซี ง30243 ช้ันมัธยมศกึ ษำปีที่ 5

ชดุ ท3ี่ คำส่ังรบั ค่ำและแสดงผล ตำรำงท่ี 3.1 แสดงรหสั แบบข้อมูล ทสี่ ามารถใชใ้ นฟังก์ชัน scanf( ) รหัสรปู แบบ ควำมหมำย (format code) %c ใชก้ บั ขอ้ มูลชนิดตัวอกั ขระตวั เดียว (single character : char) %d ใช้กบั ข้อมูลชนิดตวั เลขจานวนเตม็ (integer : int) โดยสามารถใช้กับ ตวั เลขฐาน 10 เทา่ นัน้ %e ใช้กับขอ้ มลู ชนดิ ตัวเลขจุดทศนิยม (floating point : float) %f, %lf ใช้กบั ข้อมูลชนิด float และ double ตามลาดับ %g ใชก้ ับข้อมูลชนิด float %h ใช้กับขอ้ มูลชนิด short integer %l ใช้กบั ข้อมูลชนดิ int โดยใช้กับตวั เลขฐาน 8, ฐาน 10 และฐาน 16 %o ใชก้ บั ข้อมูลชนดิ int โดยสามารถใช้กบั ตวั เลขฐาน 8 เทา่ นนั้ %u ใชก้ ับขอ้ มูลชนิด unsigned int โดยใช้กับตวั เลขฐาน 10 เท่านั้น %x ใช้กบั ข้อมูลชนิด int โดยสามารถใชก้ ับตวั เลขฐาน 16 เท่านนั้ %s ใช้กบั ขอ้ มูลชนดิ string เพอ่ื ให้เกดิ ความเขา้ ใจการใชง้ านฟังก์ชนั scanf( ) ไดด้ ียงิ่ ขน้ึ ควรศึกษาโปรแกรมตวั อย่างที่ 3.1, 3.2 และ 3.3 ดงั ตอ่ ไปน้ี โปรแกรมตัวอยำ่ งที่ 3.1 แสดงโปรแกรมการใช้ฟงั ก์ชัน scanf( ) ในการรบั ขอ้ มูลจากคีย์บอร์ดเข้าไป เกบ็ ไว้ในตวั แปรชนดิ จานวนเต็ม /* scanf1.c */ #include<stdio.h> void main(void) /* บรรทัดที่ 1 */ { /* บรรทัดท่ี 2 */ /* บรรทัดที่ 3 */ int a; /* บรรทดั ที่ 4 */ scanf(\"%d\", &a); /* บรรทดั ท่ี 5 */ } /* บรรทัดท่ี 6 */ ชุดกจิ กรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 11 รำยวชิ ำภำษำซี ง30243 ช้ันมธั ยมศกึ ษำปีท่ี 5

ชดุ ท3่ี คำสั่งรบั ค่ำและแสดงผล ผลลพั ธ์ที่ไดจ้ ำกโปรแกรม หนา้ จอวา่ ง ๆ มีเคอรเ์ ซอรก์ ระพริบเพอ่ื รอ รบั ข้อมลู จากคีย์บอร์ด (ข้อมูลท่ตี ้องการน้นั เปน็ จานวนเต็ม เพ่อื นาไปเก็บไวท้ ่ตี ัวแปร a) ซึ่งผใู้ ช้ ควรเติมข้อมลู ตัวเลขจานวนเตม็ เพ่อื ให้สมั พันธก์ บั ชนดิ ของตัวแปร คำอธิบำยโปรแกรม จากโปรแกรมตัวอย่างที่ 3.1 สามารถอธบิ ายการทางานของโปรแกรมท่ีสาคัญ ๆ ได้ดงั นี้ บรรทดั ท่ี 1 เปน็ คาสั่งเรยี กแฟ้มท่ชี ่อื ว่า stdio.h ซงึ่ ภายในจะบรรจุคาส่งั หรือฟังกช์ นั ท่จี าเปน็ ต้อง ใช้ในภาษา C เช่น printf( ) บรรทัดท่ี 2 เปน็ ฟังกช์ นั หลักของโปรแกรม และบอกให้ C compiler รูว้ า่ ฟังก์ชัน main( ) ไมม่ ีการสง่ คา่ ขอ้ มลู และไม่มีการรับค่าข้อมูลกลับ บรรทัดที่ 3 เป็นการแสดงจุดเร่มิ ตน้ ของฟงั กช์ นั main( ) บรรทดั ท่ี 4 เป็นการประกาศตัวแปรชอ่ื a เป็นชนดิ จานวนเต็ม หรือ int บรรทัดที่ 5 ฟงั ก์ชัน scanf( ) เพื่อรอรับข้อมูลจากคียบ์ อรด์ เข้าไปเก็บไว้ในตัวแปร a ซึง่ เปน็ ชนิด จานวนเตม็ บรรทดั ท่ี 6 เปน็ การแสดงจุดส้นิ สุดของฟังก์ชนั main( ) ชุดกิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 12 รำยวชิ ำภำษำซี ง30243 ช้ันมธั ยมศกึ ษำปีที่ 5

ชุดท3ี่ คำสั่งรับคำ่ และแสดงผล โปรแกรมตวั อย่ำงที่ 3.2 แสดงโปรแกรมกำรใช้ฟังกช์ นั scanf( ) ในกำรรับขอ้ มูลจำกคยี บ์ อรด์ เข้ำ ไปเก็บไวใ้ นตัวแปรชนิดจำนวนเต็ม และนำคำ่ ของตัวแปรออกแสดงผลที่จอภำพ /* scanf2.c */ #include<stdio.h> /* บรรทัดท่ี 1 */ void main(void) /* บรรทัดท่ี 2 */ { /* บรรทดั ที่ 3 */ int a; /* บรรทดั ที่ 4 */ scanf(\"%d\", &a); /* บรรทดั ท่ี 5 */ printf(\"Your enter is ...%d\", a); /* บรรทัดท่ี 6 */ } /* บรรทดั ท่ี 7 */ ผลลัพธ์ทีไ่ ดจ้ ำกโปรแกรม 13 50 Your enter is …50 คำอธิบำยโปรแกรม ในโปรแกรมตัวอยา่ งท่ี 3.2 โปรแกรมจะรับขอ้ มลู จากคีย์บอรด์ ท่ีเปน็ ชนดิ จานวนเตม็ เก็บไว้ในตัวแปร และนาค่าของตัวแปรแสดงผลออกจอภาพดว้ ยคาสั่งบรรทดั ท่ี 6 คือ printf(“Your enter is…%d”, a); จุดประสงค์ของกำรวิเครำะห์งำน ในการวิเคราะหง์ านแตล่ ะอย่างมจี ุดประสงคข์ องการวเิ คราะห์งานทส่ี าคัญดังน้ี 1. เพือ่ หาวัตถปุ ระสงคข์ องการเขยี นโปรแกรม 2. เพ่ือหารูปแบบผลลัพธ์ทต่ี ้องการ ชุดกจิ กรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ รำยวชิ ำภำษำซี ง30243 ชนั้ มัธยมศึกษำปีที่ 5

ชดุ ท3ี่ คำสัง่ รบั คำ่ และแสดงผล โปรแกรมตัวอยำ่ งท่ี 3.2 แสดงโปรแกรมกำรใช้ฟังกช์ นั scanf( ) ในกำรรบั ขอ้ มลู จำกคียบ์ อรด์ เข้ำ ไปเกบ็ ไวใ้ นตัวแปรชนิดจำนวนเต็ม และนำคำ่ ของตัวแปรออกแสดงผลท่ีจอภำพ /* scanf2.c */ #include<stdio.h> /* บรรทดั ที่ 1 */ void main(void) /* บรรทดั ที่ 2 */ { /* บรรทดั ท่ี 3 */ int a; /* บรรทัดท่ี 4 */ scanf(\"%d\", &a); /* บรรทัดท่ี 5 */ printf(\"Your enter is ...%d\", a); /* บรรทดั ที่ 6 */ } /* บรรทัดที่ 7 */ ผลลพั ธ์ท่ไี ดจ้ ำกโปรแกรม 50 Your enter is …50 คำอธิบำยโปรแกรม ในโปรแกรมตัวอย่างท่ี 3.2 โปรแกรมจะรับขอ้ มลู จากคีย์บอร์ดทีเ่ ปน็ ชนดิ จานวนเต็มเกบ็ ไว้ในตวั แปร และนาคา่ ของตัวแปรแสดงผลออกจอภาพดว้ ยคาส่งั บรรทดั ท่ี 6 คอื printf(“Your enter is…%d”, a); ชดุ กิจกรรมกำรเรยี นรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 14 รำยวชิ ำภำษำซี ง30243 ชัน้ มัธยมศึกษำปที ี่ 5

ชุดท3ี่ คำสั่งรบั ค่ำและแสดงผล โปรแกรมตัวอย่ำงท่ี 3.3 แสดงโปรแกรมการใช้ฟงั กช์ ัน scanf( ) ในการรบั ข้อมูลจากคยี ์บอร์ดเข้าไป เกบ็ ไว้ในตวั แปรชนดิ ตวั อักษร เลขจานวนเต็ม และเลขทศนยิ ม และนาคา่ ของตวั แปรออกแสดงผลท่ี จอภาพ /* scanf3.c */ #include<stdio.h> /* บรรทดั ท่ี 1 */ #include<conio.h> /* บรรทัดท่ี 2 */ void main(void) /* บรรทัดท่ี 3 */ { char name[50]; /* บรรทัดที่ 4 */ int age; /* บรรทัดที่ 5 */ float weight, height; /* บรรทัดท่ี 6 */ clrscr( ); /* บรรทัดที่ 7 */ printf(\"Enter your Name and Age: \"); /* บรรทดั ท่ี 8 */ scanf(\"%s %d\", name, &age); /* บรรทัดท่ี 9 */ printf(\"Enter your Weight and Height : \"); /* บรรทดั ท่ี 10 */ scanf(\"%f %f\", &weight, &height); /* บรรทัดท่ี 10 */ printf(\"\\nYour name is ...%s.\\n\",name); /* บรรทดั ที่ 11 */ printf(\"You are %d years old.\\n\",age); /* บรรทัดท่ี 13 */ printf(\"Your weight is ...%f kg.\\n\",weight); /* บรรทดั ที่ 14 */ printf(\"Your height is ...%f cm.\\n\",height); /* บรรทดั ท่ี 15 */ } ผลลัพธ์ท่ีไดจ้ ำกโปรแกรม 15 Enter your Name and Age: KANNIKAR 25 Enter your Weight and Height : 160.5 55.5 Your name is ... KANNIKAR You are 25 years old. Your weight is ... 55.500000 kg. Your height is ... 160.500000 cm. ชุดกจิ กรรมกำรเรียนรู้กำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ รำยวชิ ำภำษำซี ง30243 ชัน้ มัธยมศกึ ษำปที ่ี 5

ชดุ ท3ี่ คำสัง่ รบั คำ่ และแสดงผล คำอธบิ ำยโปรแกรม จากโปรแกรมตัวอย่างท่ี 3.3 สามารถอธิบายการทางานของโปรแกรมทส่ี าคญั ๆ ไดด้ ังต่อไปน้ี บรรทัดท่ี 4 เป็นการชดุ ชนิด char ซ่ึงจองไว้ 50 ตัวอักษร (เรอื่ งตวั แปรชดุ ได้อธบิ าย รายละเอียดไวใ้ นบทที่ 5) บรรทัดท่ี 7 ฟังกช์ นั clrscr( ) ใชล้ บขอ้ ความใด ๆ ออกจากจอภาพ ซงึ่ จะเรยี กใช้งานควบคู่กับ แฟม้ ท่ชี อื่ conio.h ดังน้ันกอ่ นฟงั กช์ ัน main( ) จึงต้องเรียกใช้ #include <conio.h> ก่อน (บรรทัดที่ 2) บรรทัดที่ 8 จะแสดงข้อความและรอรับคา่ Name และ Age จากผู้ใช้ ดังนน้ั เวลาเติมขอ้ มูลให้ เวน้ ช่องว่างอยา่ งน้อย 1 ชอ่ ง เพอื่ แยกขอ้ มูล Name กับ Age บรรทัดที่ 9 จะรับขอ้ มลู จากคยี ์บอร์ด 2 ค่า มาเกบ็ ไวใ้ นตวั แปร name เป็นข้อความ และเก็บ ในตวั แปร age เป็นตัวเลขจานวนเตม็ บรรทดั ท่ี 10 จะทางานคล้ายกับบรรทัดท่ี 8 แตจ่ ะรบั ขอ้ มูลที่เป็นตวั เลขทศนิยม บรรทัดท่ี 11 – 15 จะนาข้อมูลท่ีเก็บไวใ้ นตัวแปรตา่ ง ๆ ออกมาแสดงผลที่จอภาพตามรหัสรปู แบบขอ้ มลู ต่าง ๆ ฟังก์ชนั getchar( ) เป็นฟังก์ชันที่ใช้รับข้อมูลจากคีย์บอร์ดเพียง 1 ตัวอักขระ โดยการรับข้อมูลของฟังก์ชันนี้จะต้องกด แป้น enter ทุกคร้ังท่ีป้อนข้อมูลเสรจ็ จึงทาให้เห็นขอ้ มูลที่ป้อนปรากฏบนจอภาพด้วย ถ้าต้องการนาข้อมูลท่ี ป้อนผ่านทางคีย์บอร์ดไปใช้งานจะต้องกาหนดตัวแปรชนิด single character (char) ขึ้นมา 1 ตัวเพื่อเก็บค่า ข้อมลู ท่ีรับผ่านทางคีย์บอร์ด ในทางตรงกันข้ามถ้าไม่ต้องการใช้ข้อมูลที่ป้อนผ่านทางคีย์บอร์ดก็ไม่ต้องกาหนด ตัวแปรชนดิ char ขึน้ มา รูปแบบกำรใชง้ ำนฟังก์ชนั getchar( ); หรือ char_var = getchar( ); ชุดกจิ กรรมกำรเรยี นรู้กำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 16 รำยวชิ ำภำษำซี ง30243 ชัน้ มธั ยมศึกษำปีที่ 5

ชุดท3ี่ คำสง่ั รับค่ำและแสดงผล โดยท่ี getchar( ) คอื ฟังกช์ ันทใ่ี ช้รับข้อมูลเพยี ง 1 ตัวอักขระจากคยี บ์ อรด์ โดยฟังกช์ นั นี้จะไม่ มี argument ซึง่ อาจจะใช้ getchar(void) แทนคาว่า getchar( ) กไ็ ด้ แตน่ ิยมใช้ getchar( ) มากกว่า char_var คือ ตัวแปรชนดิ char ซ่ึงจะเก็บข้อมลู 1 ตวั อักขระท่ปี ้อนผา่ นทางคยี ์บอรด์ เพ่ือให้เกิดความเขา้ ใจการใชง้ านฟงั ก์ชัน getchar( ) ได้ดียงิ่ ข้ึนควรศึกษาโปรแกรมตัวอยา่ ง ท่ี 3.4 ดังตอ่ ไปนี้ โปรแกรมตัวอยำ่ งท่ี 3.4 แสดงโปรแกรมการใช้ฟังก์ชนั getchar( ) /* getchar1.c */ #include<stdio.h> /* บรรทัดที่ 1 */ #include<conio.h> /* บรรทดั ที่ 2 */ void main(void) /* บรรทัดที่ 3 */ { /* บรรทัดท่ี 4 */ char cha; /* บรรทัดท่ี 5 */ clrscr( ); /* บรรทดั ที่ 6 */ printf(\"Enter a single character : \"); /* บรรทัดที่ 7 */ cha = getchar( ); /* บรรทดั ท่ี 8 */ printf(\"You type a character is ...%c \\n\",cha); /* บรรทดั ที่ 9 */ } /* บรรทดั ท่ี 10 */ ผลลพั ธ์ที่ไดจ้ ำกโปรแกรม Enter a single character : k You type a character is ...k ชุดกจิ กรรมกำรเรียนรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 17 รำยวชิ ำภำษำซี ง30243 ช้ันมธั ยมศกึ ษำปที ี่ 5

ชดุ ท3่ี คำสัง่ รบั คำ่ และแสดงผล คำอธิบำยโปรแกรม จากโปรแกรมตัวอยา่ งท่ี 3.4 สามารถอธบิ ายการทางานของโปรแกรมที่สาคัญ ๆ ไดด้ ังต่อไปน้ี บรรทดั ที่ 1 เรียกใชแ้ ฟ้มที่ชื่อ stdio.h ซ่ึงในโปรแกรมน้ีจะใชค้ กู่ ับฟังก์ชัน printf( ) ในบรรทดั ท่ี 7 และ 9 บรรทัดท่ี 2 เรยี กใชแ้ ฟ้มที่ชื่อ conio.h ซึ่งใชค้ ่กู บั ฟงั ก์ชัน clrscr( ) เพื่อลบข้อมูลท่จี อภาพใน บรรทัดท่ี 6 บรรทัดที่ 5 ประกาศตวั แปรช่อื cha เปน็ ชนิดตัวอักขระ หรอื char บรรทดั ท่ี 8 รับข้อมลู 1 ตวั อักขระจากคียบ์ อรด์ แลว้ นาคา่ ท่ีรบั มาเก็บไวใ้ นตัวแปร cha บรรทดั ท่ี 9 นาข้อมูลทเี่ ก็บในตัวแปร cha มาแสดงตรงตาแหน่ง %c และขึ้นบรรทัด ใหม่ (\\n คอื new line) ฟังก์ชัน getch( ) เปน็ ฟงั ก์ชนั ทใ่ี ช้รับขอ้ มูลเพียง 1 ตวั อกั ขระเหมือนกบั ฟงั ก์ชนั getchar( ) แตกต่างกนั ตรงท่ี เม่ือใช้ฟังก์ชันน้ีรับขอ้ มูล ข้อมลู ทปี่ ้อนเข้าไปจะไมป่ รากฏให้เหน็ บนจอภาพและไม่ตอ้ งกดแป้น enter ตาม รปู แบบกำรใชง้ ำนฟงั กช์ ัน getch( ); หรอื char_var = getch( ); โดยท่ี getch( ) คือ ฟังก์ชันที่ใช้รับข้อมูลเพียง 1 ตัวอักขระจากคีย์บอร์ด โดยฟังก์ชันนี้จะไม่ มี argument ดังนั้นอาจจะใช้ getch(void) แทนคาว่า getch( ) กไ็ ดแ้ ต่นิยมใช้ getch( ) มากกวา่ char_var คอื ตัวแปรชนิด char ซ่งึ จะเก็บขอ้ มลู 1 ตัวอกั ขระท่ีปอ้ นผ่านทางคยี ์บอรด์ เพอ่ื ใหเ้ กดิ ความเขา้ ใจการใชง้ านฟังก์ชนั getch( ) ไดด้ ยี งิ่ ขึน้ ควรศึกษาโปรแกรมตวั อยา่ งท่ี 3.5 ดังตอ่ ไปน้ี ชุดกิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 18 รำยวชิ ำภำษำซี ง30243 ชัน้ มัธยมศกึ ษำปีท่ี 5

ชุดท3่ี คำสงั่ รบั ค่ำและแสดงผล โปรแกรมตวั อยำ่ งท่ี 3.5 แสดงโปรแกรมการใช้ฟังก์ชนั getch( ) /* getch1.c */ #include<stdio.h> /* บรรทัดที่ 1 */ #include<conio.h> /* บรรทัดท่ี 2 */ void main(void) /* บรรทัดที่ 3 */ { /* บรรทดั ท่ี 4 */ char ch; /* บรรทดั ที่ 5 */ clrscr( ); /* บรรทัดท่ี 6 */ printf(\"Enter a single character : \"); /* บรรทัดท่ี 7 */ ch = getch( ); /* บรรทดั ที่ 8 */ printf(\"\\nYou type a character is ...%c \\n\",ch); /* บรรทัดท่ี 9 */ getch( ); /* บรรทดั ที่ 10 */ } ผลลัพธ์ทีไ่ ด้จำกโปรแกรม Enter a single character : You type a character is ...p คำอธบิ ำยโปรแกรม 19 การทางานของโปรแกรมตัวอย่างท่ี 3.5 จะคล้ายกับโปรแกรมตวั อย่างท่ี 3.4 ต่างกันตรงคาสั่งบรรทัดท่ี 8 จะ เป็นการใช้ฟังก์ชัน getch( ) คือ ch = getch( ); ให้นาค่าที่รับมาเก็บไว้ในตัวแปร ch ซึ่งเวลาเรารับข้อมูล จากคยี บ์ อร์ดจะไม่ปรากฎข้อมูลท่ีเราปอ้ นเขา้ ไปให้เหน็ บนจอภาพ และไม่ตอ้ งกด enter ตาม โปรแกรมกจ็ ะไป ทางานคาสั่งบรรทัดที่ 9 คือ นาข้อมูลที่เก็บในตัวแปร ch มาแสดงตรงตาแหน่ง %c และขึ้นบรรทัด ใหม่ ส่วนคาสั่งบรรทัดที่ 10 ฟังก์ชัน getche( ); โปรแกรมก็จะหยุดรอรับค่าใด ๆ จากคีย์บอร์ด เช่น เรา กด enter ก็จะกลับเข้าสู่โปรแกรมบรรทดั ท่ี 8 รบั ขอ้ มูล 1 ตัวอกั ขระจากคีย์บอรด์ แล้วนาคา่ ทรี่ บั มาเก็บไวใ้ น ตัวแปร cha บรรทัดที่ 9 นาข้อมูลที่เก็บในตัวแปร cha มาแสดงตรงตาแหน่ง %c และขึ้นบรรทัด ใหม่ (\\n คือ new line) ชดุ กิจกรรมกำรเรยี นร้กู ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ รำยวชิ ำภำษำซี ง30243 ชน้ั มัธยมศึกษำปีท่ี 5

ชดุ ท3่ี คำสั่งรับค่ำและแสดงผล ฟงั กช์ ัน getche( ) เป็นฟงั กช์ นั ทใี่ ช้รับข้อมลู จากคยี บ์ อร์ดเพยี ง 1 ตวั อกั ขระ เหมือนฟงั กช์ นั getch( ) แตกตา่ ง กนั ตรงทีข่ ้อมลู ท่ปี อ้ นเขา้ ไป จะปรากฏให้เหน็ บนจอภาพดว้ ย นอกนนั้ มีการทางาน และลักษณะการใช้งาน เหมอื นฟังกช์ นั getch( ) ทกุ ประการ รปู แบบกำรใช้งำนฟังกช์ นั getche( ); หรือ char_var = getche( ); โดยท่ี getche( ) คือ ฟังก์ชนั ที่ใช้รบั ข้อมูลเพียง 1 ตัวอกั ขระจากคยี บ์ อร์ด โดยฟงั ก์ชันนจ้ี ะไม่ มี argument ดงั นั้นอาจจะใช้ getche(void) แทนคาวา่ getche( ) กไ็ ดแ้ ตน่ ิยมใช้ getche( ) มากกว่า char_var คอื ตัวแปรชนดิ char ซึ่งจะเก็บข้อมลู 1 ตัวอักขระทป่ี อ้ นผ่านทางคีย์บอรด์ เพ่ือใหเ้ กดิ ความเขา้ ใจการใช้งานฟังก์ชัน getche( ) ไดด้ ยี ง่ิ ข้ึนควรศึกษาโปรแกรมตวั อยา่ ง ท่ี 3.6 ดังตอ่ ไปน้ี ชดุ กจิ กรรมกำรเรียนรู้กำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 20 รำยวชิ ำภำษำซี ง30243 ชน้ั มัธยมศกึ ษำปีท่ี 5

ชุดท3่ี คำส่งั รับคำ่ และแสดงผล โปรแกรมตวั อย่ำงที่ 3.6 แสดงโปรแกรมการใช้ฟงั ก์ชัน getche( ) /* getche1.c */ #include<stdio.h> /* บรรทัดท่ี 1 */ #include<conio.h> /* บรรทัดที่ 2 */ void main(void) /* บรรทดั ท่ี 3 */ { /* บรรทัดท่ี 4 */ char e; /* บรรทัดท่ี 5 */ clrscr( ); /* บรรทัดที่ 6 */ printf(\"Enter a single character : \"); /* บรรทดั ท่ี 7 */ e = getche( ); /* บรรทัดท่ี 8 */ printf(\"\\nYou type a character is ...%c \\n\",e); /* บรรทัดท่ี 9 */ getch( ); /* บรรทัดท่ี 10 */ } /* บรรทดั ท่ี 11 */ ผลลพั ธท์ ไี่ ด้จำกโปรแกรม Enter a single character : r You type a character is ...r คำอธิบำยโปรแกรม การทางานของโปรแกรมตัวอย่างที่ 3.6 จะคล้ายกับโปรแกรมตัวอย่างที่ 3.5 ต่างกันตรงคาส่ังบรรทัด ท่ี 8 จะเปน็ การใช้งานฟังก์ชัน getche( ) คอื e = getche( ); คาสง่ั น้ีให้นาค่าท่ีรับมาเกบ็ ไว้ในตวั แปร e ซึ่ง ข้อมูลที่เติมเข้าไปจะปรากฎให้เห็นบนจอภาพด้วย แต่ไม่ต้องกด enter ตาม โปรแกรมก็จะไปทางานคาสั่ง บรรทดั ท่ี 9 คือ นาขอ้ มลู ทเ่ี กบ็ ในตัวแปร e มาแสดงตรงตาแหน่ง %c และขนึ้ บรรทดั ใหม่ สว่ นคาสง่ั บรรทัด ที่ 10 getch( ); โปรแกรมกจ็ ะหยุดรอรบั คา่ ใด ๆ จากคยี บ์ อร์ด เชน่ เรากด enter ก็จะกลับเข้าสโู่ ปรแกรม ชุดกิจกรรมกำรเรยี นร้กู ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 21 รำยวชิ ำภำษำซี ง30243 ชนั้ มธั ยมศกึ ษำปีที่ 5

ชดุ ท3ี่ คำส่งั รบั คำ่ และแสดงผล ฟังก์ชนั gets( ) เปน็ ฟงั ก์ชันทใ่ี ชร้ บั ขอ้ มูลชนดิ ข้อความ (string) จากคีย์บอรด์ จากนนั้ นาข้อมูลท่รี บั เขา้ ไปเกบ็ ไวใ้ น ตัวแปรสตรงิ (string variables) ทกี่ าหนดไว้ รูปแบบกำรใช้งำนฟงั กช์ นั gets(string_var); โดยที่ string_var คือ ตัวแปรสตรงิ ซง่ึ จะใชเ้ ก็บขอ้ มลู ชนดิ ข้อความ (string constant) gets( ) คือ ฟังก์ชันท่ใี ชร้ ับข้อความจากคยี ์บอรด์ แล้วไปเกบ็ ไว้ในตัวแปรสตรงิ เพอ่ื ใหเ้ กดิ ความเขา้ ใจการใชง้ านฟังก์ชัน gets( ) ได้ดยี ิง่ ข้นึ ควรศกึ ษาโปรแกรมตัวอยา่ ง ท่ี 3.7 ดงั ต่อไปนี้ โปรแกรมตวั อยำ่ งท่ี 3.7 แสดงโปรแกรมการใช้ฟังกช์ นั gets( ) /* gets1.c / #include<stdio.h> /* บรรทัดท่ี 1 */ #include<conio.h> /* บรรทัดท่ี 2 */ void main(void) /* บรรทดั ท่ี 3 */ { /* บรรทดั ที่ 4 */ char pro[50]; /* บรรทัดท่ี 5 */ clrscr( ); /* บรรทัดที่ 6 */ printf(\"Enter your province : \"); /* บรรทัดที่ 7 */ gets(pro); /* บรรทดั ท่ี 8 */ printf(\"Your province is ...%s\\n\", pro); /* บรรทัดท่ี 9 */ getch( ); /* บรรทัดที่ 10 */ } /* บรรทัดท่ี 11 */ ชดุ กิจกรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 22 รำยวชิ ำภำษำซี ง30243 ช้ันมัธยมศึกษำปที ่ี 5

ชุดท3ี่ คำสั่งรบั คำ่ และแสดงผล ผลลพั ธท์ ี่ไดจ้ ำกโปรแกรม Enter your province : Ratchaburi Your province is ... Ratchaburi คำอธบิ ำยโปรแกรม โปรแกรมตัวอย่างที่ 3.7 เป็นโปรแกรมที่รอรับการเติมชื่อจังหวัด แล้วนาไปเก็บไว้ในตัวแปร pro ด้วยคาสั่งบรรทัดที่ 8 คือ gets(pro); แล้วนาค่าที่เก็บไว้ในตัวแปร pro ออกมาแสดงตรงตาแหน่ง %s และขึ้นบรรทัดใหม่ ส่วนคาสั่งบรรทัดที่ 10 getch( ); โปรแกรมก็จะหยุดรอรับค่าใด ๆ จากคีย์บอร์ด เช่น เรากด enter กจ็ ะกลบั เข้าสู่โปรแกรม สรุปขอ้ แนะนำกำรใชฟ้ ังกช์ นั รับขอ้ มลู (input functions) - เมอ่ื ต้องการรับค่าขอ้ มูล string ควรใช้ฟังกช์ นั gets( ) หรอื scanf( ) - เมื่อตอ้ งการรบั ตัวเลขหรอื ตวั อักษรเพยี ง 1 ตัว ท่ไี ม่ตอ้ งการเห็นบนจอภาพ และไมต่ ้อง กดแป้น enter ควรใชฟ้ ังก์ชนั getch( ) แตถ่ ้าต้องการเห็นบนจอภาพด้วยควรใชฟ้ ังกช์ นั getche( ) - เมือ่ ต้องการรบั ขอ้ มูลตวั เลขทม่ี ากกว่า 1 ตัว เชน่ ตัวเลขจานวนเตม็ หรือตวั เลข ทศนิยม ควรใช้ฟังกช์ นั scanf( ) - กรณีท่ใี ชฟ้ ังกช์ นั scanf( ) รับขอ้ มลู ติดตอ่ กนั มากกว่า 2 ครั้ง อาจเกดิ ความผิดพลาดใน การรับข้อมลู ดงั นั้นจึงควรใช้คาสงั่ ch = getchar( ); คัน่ ก่อนทจ่ี ะรบั ข้อมูลครัง้ ที่ 3 โดยจะตอ้ งมี คาสงั่ ประกาศตวั แปร char ch; ไว้ด้วย ชดุ กิจกรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 23 รำยวชิ ำภำษำซี ง30243 ชั้นมธั ยมศกึ ษำปีที่ 5

ชุดท3่ี คำส่ังรบั ค่ำและแสดงผล บัตรกิจกรรมกำรเรยี นรทู้ ่ี 1 10 เร่ืองฟังกช์ นั รบั ข้อมลู (input functions) 1. ให้นักเรยี นอธบิ าย อกั ขระควบคมุ รปู แบบการแสดงผล ในขอ้ ดงั ต่อไปน้ี 1. %d …………………………………………………………………………………………………………. 2. %u …………………………………………………………………………………………………………. 3. %o …………………………………………………………………………………………………………. 4. %x …………………………………………………………………………………………………………. 5. %f …………………………………………………………………………………………………………. 6. %e …………………………………………………………………………………………………………. 7. %c …………………………………………………………………………………………………………. 8. %s …………………………………………………………………………………………………………. 9. %p …………………………………………………………………………………………………………. 10. %l …………………………………………………………………………………………………………. ชุดกิจกรรมกำรเรยี นรู้กำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 24 รำยวชิ ำภำษำซี ง30243 ชน้ั มัธยมศึกษำปีที่ 5

ชุดท3ี่ คำสั่งรับค่ำและแสดงผล บตั รกจิ กรรมกำรเรยี นรทู้ ี่ 1 10 เรอ่ื งฟงั ก์ชันรบั ข้อมูล (input functions) 2. ให้นกั เรียนพิมพ์โปแกรมทกี่ าหนดใหด้ ังน้ี #include <stdio.h> /* 1 */ Main() /* 2 */ { /* 3 */ int width, length, RecArea; /* 4 */ printf(“Input width :”); /* 5 */ scanf(“%d”,&width); /* 6 */ printf(“\\n Input length :”); /* 7 */ scanf(“%d”,&length); /* 8 */ RecArea=width*length; /* 9 */ printf(“\\n Area of rectangle is %5d \\n”,RecArea); /* 10 */ } /* 11 */ ใหน้ กั เรียนรันโปรแกรมแลว้ ตอบคาถามต่อไปนี้ (กาหนดคา่ width=5, length=6) 2.1 เขยี นผลลพั ธ์ท่ีไดจ้ ากการรนั โปรแกรม …………………………………………………………………………………………………………………………………… ……………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………. 2.2 คาส่งั ใดในโปรแกรมทท่ี าหนา้ ทีร่ ับข้อมูลจากผใู้ ช้โดยป้อนผา่ นแปน้ พิมพ์ …………………………………………………………………………………………………………………………………… ……………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………. 2.3 จากคาสัง่ ในบรรทัดท่ี 10 ใหอ้ ธบิ ายผลของการใชร้ ปู แบบควบคุม %5d …………………………………………………………………………………………………………………………………… ……………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………. ชุดกิจกรรมกำรเรยี นรู้กำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 25 รำยวชิ ำภำษำซี ง30243 ชนั้ มัธยมศกึ ษำปที ่ี 5

ชดุ ท3ี่ คำสง่ั รบั คำ่ และแสดงผล บตั รเน้ือหำท่ี 2 ฟังก์ชนั แสดงผลข้อมลู ในเน้ือหาฟังก์ชันการแสดงผลข้อมูลของภาษา C มีฟังก์ชันที่ใช้ในการแสดงผลลัพธ์ออกทางจอภาพ อยู่หลายฟังก์ชันท่ีจะกล่าวถึง ดังน้ีคือ ฟังก์ชัน printf( ), ฟังก์ชัน putchar( ) และฟังก์ชัน puts( ) ซึ่งแต่ ละฟงั กช์ ันมรี ายละเอยี ดของการใช้งานดงั น้ี ฟังก์ชัน printf( ) เปน็ ฟังกช์ นั ท่ใี ชร้ บั ขอ้ มูลชนดิ ข้อความ (string) จากคีย์บอร์ด จากน้ันนาขอ้ มูลทรี่ ับเขา้ ไปเก็บไว้ใน ตัวแปรสตริง (string variables) ที่กาหนดไว้ รูปแบบกำรใชง้ ำนฟงั กช์ ัน printf(control string, argument list); โดยท่ี control string คอื รหสั รูปแบบขอ้ มูลทใี่ ช้ในการพิมพผ์ ลลพั ธใ์ ช้รหัสเหมือนฟังกช์ ัน scanf( ) และในฟงั ก์ชนั printf( ) นี้ยังสามารถใชร้ หสั ควบคุมเพ่ือช่วยจัดรูปแบบการพมิ พ์ผลลพั ธ์ใหส้ วยงาม ขึ้น โดยท่ี control string จะตอ้ งเขยี นอยูภ่ ายใตเ้ คร่อื งหมาย “………” (double quotation) เช่นเดียวกับฟงั กช์ ัน scanf( ) argument list คือ คา่ คงท่ี หรือตัวแปร หรอื นิพจน์ ในกรณที ม่ี คี า่ คงท่ี ตัวแปร หรือนิพจน์ หลาย ๆ คา่ ให้ใช้เครื่องหมาย , (comma) ค่ันระหว่างคา่ คงที่ ตัวแปร หรอื นิพจน์แตล่ ะค่า ชดุ กิจกรรมกำรเรยี นรูก้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 26 รำยวชิ ำภำษำซี ง30243 ชั้นมธั ยมศึกษำปีท่ี 5

ชุดท3่ี คำสัง่ รบั ค่ำและแสดงผล ตำรำงที่ 3.2 แสดงรหสั รปู แบบข้อมูลท่ีสามารถใชใ้ นฟังกช์ ัน printf( ) รหัสรูปแบบ ควำมหมำย (format code) ใชก้ ับข้อมูลชนิดตวั อกั ขระตวั เดียว (single character : char) %c ใช้กบั ข้อมลู ชนดิ ตัวเลขจานวนเต็ม (integer : int) โดยสามารถใชก้ ับ %d ตวั เลขฐาน 10 เท่านนั้ ใชก้ ับขอ้ มูลชนดิ ตวั เลขจุดทศนยิ ม (floating point : float) %e ใชก้ บั ข้อมูลชนดิ float และ double ตามลาดับ %f, %lf ใชก้ ับข้อมูลชนิด float ใชก้ บั ข้อมูลชนิด short integer %g ใชก้ ับขอ้ มูลชนิด int โดยใชก้ บั ตวั เลขฐาน 8, ฐาน 10 และฐาน 16 %h ใชก้ บั ข้อมูลชนิด int โดยสามารถใช้กบั ตวั เลขฐาน 8 เท่านน้ั %l ใชก้ บั ขอ้ มูลชนดิ unsigned int โดยใช้กบั ตวั เลขฐาน 10 เท่านั้น %o ใช้กบั ขอ้ มูลชนดิ int โดยสามารถใชก้ บั ตัวเลขฐาน 16 เท่านัน้ %u ใช้แสดงข้อมูลชนิด string %x ใชแ้ สดงคา่ address ของตัวแปรพอยน์ เตอร์ %s %p ตำรำงที่ 3.3 แสดงรหสั ควบคมุ ขอ้ มูลที่สามารถใชใ้ นฟังก์ชัน printf( ) รหัสควบคุม ควำมหมำย คำ่ ASCII (control code) Bell 007 \\a Backspace 008 \\b Horizontal tab 009 \\t Newline (line feed) 010 \\n Vertical tab 011 \\v From feed 012 \\f Carriage return 013 \\r Quotation mark (“) 034 \\” Apostrophe (‘) 039 \\’ ชุดกจิ กรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 27 รำยวชิ ำภำษำซี ง30243 ชน้ั มัธยมศกึ ษำปที ี่ 5

ชุดท3ี่ คำส่งั รบั ค่ำและแสดงผล รหัสควบคมุ ควำมหมำย ค่ำ ASCII (control code) \\? Question mark (?) 063 \\\\ Backslash (\\) 092 \\0 Null (ศนู ย)์ 000 \\ooo Octal number (o) - \\xhh Hexadecimal number (h) - เพ่ือใหเ้ กดิ ความเขา้ ใจการใชง้ านฟังกช์ นั printf( ) ไดด้ ียิ่งขึ้นควรศกึ ษาโปรแกรมตัวอย่างท่ี 3.8, 3.9 และ 3.10 ดังต่อไปนี้ ชดุ กจิ กรรมกำรเรยี นรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 28 รำยวชิ ำภำษำซี ง30243 ชัน้ มัธยมศึกษำปีที่ 5

ชุดท3ี่ คำสัง่ รบั คำ่ และแสดงผล โปรแกรมตวั อย่ำงท่ี 3.8 แสดงโปรแกรมการใช้ฟงั ก์ชัน printf( ) พิมพข์ อ้ ความออกแสดงทจ่ี อภาพ /* printf1.c */ #include<stdio.h> /* บรรทดั ที่ 1 */ #include<conio.h> /* บรรทดั ที่ 2 */ void main(void) /* บรรทดั ที่ 3 */ { /* บรรทัดที่ 4 */ clrscr( ); /* บรรทัดที่ 5 */ printf(\"Welcome to Thailand !!!\"); /* บรรทดั ท่ี 6 */ getch( ); /* บรรทัดที่ 7 */ } /* บรรทดั ที่ 8 */ ผลลพั ธ์ทีไ่ ด้จำกโปรแกรม Welcome to Thailand !!! คำอธิบำยโปรแกรม จากโปรแกรมตัวอย่างท่ี 3.8 สามารถอธิบายการทางานของโปรแกรมที่สาคัญ ๆ ไดด้ งั ตอ่ ไปนี้ บรรทัดท่ี 6 คาสั่ง printf(“Welcome to Thailand !!!”); เปน็ คาสัง่ ท่นี าขอ้ ความ Welcome to Thailand !!! แสดงท่จี อภาพ และหยุดรอรับค่าใด ๆ จากคยี ์บอร์ด ซ่งึ ถา้ เรากด enter ก็จะกลับสโู่ ปรแกรม ชุดกิจกรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 29 รำยวชิ ำภำษำซี ง30243 ช้ันมัธยมศึกษำปีท่ี 5

ชดุ ท3่ี คำสง่ั รับค่ำและแสดงผล โปรแกรมตัวอยำ่ งท่ี 3.9 แสดงโปรแกรมการใช้ฟังก์ชนั printf( ) ควบคูก่ บั รหัสรปู แบบ %c และ %s เพอื่ แสดงขอ้ มูลทจ่ี อภาพ /* printf2.c */ #include<stdio.h> /* บรรทดั ท่ี 1 */ #include<conio.h> /* บรรทดั ท่ี 2 */ void main(void) /* บรรทดั ท่ี 3 */ { /* บรรทัดท่ี 4 */ char ch='A'; /* บรรทัดที่ 5 */ char str[]=\"Computer\"; /* บรรทัดที่ 6 */ clrscr( ); /* บรรทดั ที่ 7 */ printf(\"%5c \\t\\tCHARACTER %s\", ch, str); /* บรรทัดที่ 8 */ getch( ); /* บรรทัดที่ 9 */ } /* บรรทดั ที่ 10 */ ผลลัพธ์ท่ไี ด้จำกโปรแกรม A CHARACTER Computer คำอธิบำยโปรแกรม จากโปรแกรมตวั อย่างท่ี 3.9 สามารถอธิบายการทางานของโปรแกรมทีส่ าคัญ ๆ ได้ดงั ต่อไปน้ี บรรทดั ท่ี 5 ประกาศตัวแปรชนิดอกั ขระ ชื่อ ch ให้เกบ็ ตวั อักษร A บรรทดั ที่ 6 ประกาศตัวแปรชุดชนดิ อกั ขระ ชอ่ื str ให้เก็บขอ้ ความ Computer บรรทดั ที่ 8 ใหน้ าค่าของตวั แปร ch มาแสดงตรงตาแหนง่ %c กอ่ นแสดงใหเ้ วน้ ช่องว่าง 5 ช่อง และพบ \\t \\t คือให้เว้น tab ไป 2 ครั้ง (tab 1 ครั้ง มี 8 ช่องว่าง) แล้วค่อยพิมพ์ข้อความ CHARACTER และนาข้อความที่เก็บในตัวแปร str มาแสดงตรงตาแหน่ง %s แล้วหยดุ รอรบั ค่าใด ๆ จากคียบ์ อร์ด ซง่ึ ถ้าเรากด enter กจ็ ะกลบั สโู่ ปรแกรม ชุดกิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 30 รำยวชิ ำภำษำซี ง30243 ชน้ั มธั ยมศึกษำปีท่ี 5

ชุดท3่ี คำส่ังรบั ค่ำและแสดงผล โปรแกรมตวั อยำ่ งที่ 3.10 แสดงโปรแกรมการใช้ฟังก์ชัน printf( ) ควบค่กู บั รหัสรปู แบบ %d, %c, %s และ %f เพือ่ แสดงขอ้ มลู ที่จอภาพ /* printf3.c */ #include<stdio.h> /* บรรทัดที่ 1 */ #include<conio.h> /* บรรทัดที่ 2 */ void main(void) /* บรรทดั ที่ 3 */ { /* บรรทัดที่ 4 */ int a=5, b=2; /* บรรทดั ท่ี 5 */ char c='D', d='F'; /* บรรทดั ท่ี 6 */ char e[20]=\"Thailand\"; /* บรรทดั ท่ี 7 */ float f = 9.5 , g; /* บรรทัดท่ี 8 */ clrscr( ); /* บรรทัดที่ 9 */ b+=a; d+=5; g = f + 2.5; /* บรรทัดที่ 10 */ printf(\"%5d \\t%-5d\\n\",a, b); /* บรรทดั ที่ 11 */ printf(\"%3c \\t%-3c\\n\",c--, ++d); /* บรรทดั ที่ 12 */ printf(\"%s\\n\",e); /* บรรทัดที่ 13 */ printf(\"%.3f \\t%-.3f\\n\", f+2, g); /* บรรทดั ท่ี 14 */ getch( ); /* บรรทัดที่ 15 */ } /* บรรทดั ท่ี 16 */ ผลลพั ธ์ทีไ่ ด้จำกโปรแกรม 57 Dl Thailand 11.500 12.000 ชุดกิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 31 รำยวชิ ำภำษำซี ง30243 ชั้นมัธยมศกึ ษำปที ่ี 5

ชุดท3่ี คำสัง่ รับค่ำและแสดงผล คำอธบิ ำยโปรแกรม จากโปรแกรมตวั อย่างท่ี 3.10 สามารถอธบิ ายการทางานของโปรแกรมท่ีสาคญั ๆ ได้ดงั ตอ่ ไปน้ี บรรทัดที่ 10 คาส่งั b+ = a คือ b = b + a เพราะฉนนั้ b = 2 + 5 = 7 คาสงั่ d+ = 5 คอื d = d + 5 เพราะฉนัน้ d = ‘K’ คาสง่ั g = f + 2.5 คือ g = 9.5 + 2.5 = 12.0 บรรทัดที่ 11 ใช้ฟังก์ชัน printf( ) พิมพ์ขอ้ มลู ชนดิ int ของตวั แปร a และ b โดยใช้รสั ควบคมุ เปน็ %d สาหรบั ตวั เลข 5 เปน็ การบอกใหเ้ วน้ ช่องว่าง 5 ช่องก่อนแล้ว ค่อยนาค่าตวั แปร a มาแสดง ส่วนเครอ่ื งหมาย – หนา้ ตัวเลขเป็นการบอกใหพ้ มิ พ์ ตวั เลขชดิ ซ้าย สาหรบั รูปแบบการแสดงตวั แปร b บรรทัดท่ี 12 ใชฟ้ ังกช์ นั printf( ) พมิ พข์ ้อมลู ชนดิ char โดยใชร้ หัสควบคุม %c ของตัว แปร c กอ่ นแลว้ คอ่ ยลดคา่ ตวั แปรลง 1 และ ++d คอื เพ่มิ ค่าตวั แปร d ข้ึน 1 คา่ ก่อนแลว้ ค่อยแสดงผลออกจอภาพ บรรทดั ที่ 13 ใชฟ้ ังกช์ ัน printf( ) พิมพข์ ้อมูลชนิด string โดยใชร้ หสั ควบคุม %s ของตัว แปร e ออกจอภาพ บรรทัดที่ 14 ใช้ฟงั กช์ นั printf( ) พมิ พข์ อ้ มลู ชนดิ float โดยใช้รหัสควบคุม %f ของตัวแปร f + 2 คอื 11.500 (%3f คือ ทศนยิ ม 3 ตาแหนง่ ) และแสดงคา่ ตวั แปร g ออก จอภาพ แล้วหยุดรอรับค่าใด ๆ จากคีย์บอรด์ ซ่ึงถ้าเรากด enter ก็จะกลับสู่ โปรแกรม ชดุ กจิ กรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 32 รำยวชิ ำภำษำซี ง30243 ชัน้ มธั ยมศึกษำปีที่ 5

ชดุ ท3่ี คำสัง่ รบั ค่ำและแสดงผล ฟงั กช์ นั putchar( ) เป็นฟังก์ชันที่ใช้ในการแสดงผลลัพธ์ออกจอภาพทีละ 1 ตัวอักขระ โดยลักษณะของฟังก์ชันนี้เป็น ฟังกช์ ันที่ตอ้ งการ argument 1 ค่าท่ีเปน็ ข้อมูลชนิด single character (char) รูปแบบกำรใช้งำนฟังก์ชัน putchar(char_argument); โดยท่ี putchar( ) คอื ฟังก์ชันท่ใี ชแ้ สดงผลลัพธท์ ลี ะ 1 ตัวอกั ขระออกทางจอภาพ char_argument คอื ตวั แปรชนดิ single character (char) เพื่อให้เกิดความเข้าใจการใช้งานฟังก์ชัน putchar( ) ได้ดียิ่งขึ้นควรศึกษาโปรแกรมตัวอย่าง ท่ี 3.11 และ 3.12 ดังตอ่ ไปน้ี ชุดกจิ กรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 33 รำยวชิ ำภำษำซี ง30243 ช้นั มัธยมศึกษำปที ่ี 5

ชดุ ท3ี่ คำสั่งรับคำ่ และแสดงผล โปรแกรมตัวอย่ำงที่ 3.11 แสดงโปรแกรมการใชฟ้ งั กช์ นั putchar( ) เพอ่ื แสดงขอ้ มลู ออกจอภาพ /* putchar1.c */ #include<stdio.h> /* บรรทัดท่ี 1 */ #include<conio.h> /* บรรทัดที่ 2 */ void main(void) /* บรรทัดที่ 3 */ { /* บรรทัดท่ี 4 */ char p; /* บรรทัดท่ี 5 */ clrscr( ); /* บรรทัดท่ี 6 */ printf(\"Enter a single character :\"); /* บรรทัดที่ 7 */ p=getche( ); /* บรรทดั ท่ี 8 */ printf(\"\\nYour character is ...%c\"); /* บรรทัดที่ 9 */ putchar(p); /* บรรทดั ท่ี 10 */ getch( ); /* บรรทัดที่ 11 */ } /* บรรทัดที่ 12 */ ผลลพั ธ์ทไี่ ด้จำกโปรแกรม Enter a single character : t Your character is ...<<t คำอธิบำยโปรแกรม จากโปรแกรมตัวอย่างท่ี 3.11 สามารถอธิบายการทางานของโปรแกรมท่ีสาคัญ ๆ ได้ดังตอ่ ไปนี้ บรรทัดท่ี 8 ใชฟ้ งั กช์ ัน getche( ) โดยนาคา่ ท่ีรับจากคยี บ์ อรด์ ไปเก็บไว้ในตัวแปร p บรรทัดที่ 10 ใช้ฟงั กช์ ัน putchar( ) โดยนาคา่ ที่เกบ็ ไวใ้ นตวั แปร p ออกแสดงผลที่จอภาพตรง ตาแหนง่ %c ในฟังก์ชัน printf( ) ของบรรทดั ที่ 9 แล้วหยดุ รอรบั คา่ ใด ๆ จาก คีย์บอรด์ ซ่ึงถา้ เรากด enter ก็จะกลับสโู่ ปรแกรม ชดุ กจิ กรรมกำรเรียนรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 34 รำยวชิ ำภำษำซี ง30243 ชั้นมัธยมศกึ ษำปีที่ 5

ชุดท3ี่ คำสัง่ รับคำ่ และแสดงผล โปรแกรมตวั อยำ่ งท่ี 3.12 แสดงโปรแกรมการใช้ฟงั ก์ชนั putchar( ) เพื่อแสดงขอ้ มูลออก จอภาพ และแทรกด้วยการใช้ฟังกช์ นั printf( ) ก่อนนาขอ้ มูลออกแสดงผล /* putchar2.c */ #include<stdio.h> /* บรรทดั ท่ี 1 */ #include<conio.h> /* บรรทดั ที่ 2 */ void main(void) /* บรรทดั ท่ี 3 */ { /* บรรทัดท่ี 4 */ char p; /* บรรทัดท่ี 5 */ clrscr( ); /* บรรทดั ท่ี 6 */ printf(\"Enter a single character : \"); /* บรรทัดที่ 7 */ p=getche( ); /* บรรทัดที่ 8 */ printf(\"\\nThank you !!!\"); /* บรรทัดที่ 9 */ printf(\"\\nYour character is ...%c\"); /* บรรทัดท่ี 10 */ putchar(p); /* บรรทดั ที่ 11 */ getch( ); /* บรรทัดที่ 12 */ } /* บรรทดั ท่ี 13 */ ผลลัพธท์ ่ไี ด้จำกโปรแกรม Enter a single character : r Thank you !!! Your character is ...<<r คำอธิบำยโปรแกรม โปรแกรมตัวอย่างที่ 3.12 จะทางานคล้ายกับโปรแกรมตัวอย่างที่ 3.11 โดยการเก็บค่าที่รับจาก คีย์บอร์ดไว้ในตัวแปร แล้วนาค่าที่เก็บไว้ในตัวแปรออกแสดงผลด้วยฟังก์ชัน putchar( ) ซ่ึงกอ่ นจะแสดงผลมี การใช้ฟังก์ชัน printf( ) พิมพ์ข้อความ Thank you !!! ออกมาแทรกก่อน 1 บรรทัด แล้วหยุดรอรับค่าใด ๆ จากคยี ์บอร์ด ซง่ึ ถา้ เรากด enter ก็จะกลับสโู่ ปรแกรม ชุดกจิ กรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 35 รำยวชิ ำภำษำซี ง30243 ชั้นมธั ยมศึกษำปที ี่ 5

ชุดท3่ี คำส่งั รับคำ่ และแสดงผล ฟงั ก์ชัน puts( ) เป็นฟังก์ชันที่พิมพ์ข้อความออกแสดงทางจอภาพ โดยลักษณะของฟังก์ชันนี้เป็นฟังก์ชันที่ต้องการ argument 1 คา่ ทเ่ี ป็นชนิดขอ้ ความ (string constant) รูปแบบกำรใช้งำนฟังก์ชัน puts(string_argument); โดยที่ puts( ) คอื ฟงั กช์ ันทีใ่ ช้พิมพ์ข้อความออกทางจอภาพ string_argument คอื คา่ คงที่ชนิดสตริง (string constant) ซ่ึงคา่ คงทส่ี ตริงน้ี จะถูกพมิ พอ์ อกแสดงทางจอภาพผ่านฟงั กช์ นั puts( ) เพื่อให้เกิดความเข้าใจการใช้งานฟังก์ชัน puts( ) ได้ดียิ่งขึ้นควรศึกษาโปรแกรมตัวอย่าง ท่ี 3.13 ดังต่อไปน้ี ชุดกิจกรรมกำรเรียนร้กู ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 36 รำยวชิ ำภำษำซี ง30243 ช้ันมธั ยมศึกษำปีท่ี 5

ชุดท3่ี คำสัง่ รับคำ่ และแสดงผล โปรแกรมตวั อย่ำงท่ี 3.13 แสดงโปรแกรมการใชฟ้ ังก์ชัน puts( ) /* puts1.c / #include<stdio.h> /* บรรทดั ท่ี 1 */ #include<conio.h> /* บรรทัดที่ 2 */ void main(void) /* บรรทดั ที่ 3 */ { /* บรรทัดท่ี 4 */ clrscr( ); /* บรรทดั ที่ 5 */ printf(\"Computer Programming Language 1\"); /* บรรทัดที่ 6 */ puts(\" is your course.\" ); /* บรรทดั ที่ 7 */ getch( ); /* บรรทัดที่ 8 */ } /* บรรทัดที่ 9 */ ผลลพั ธ์ทไี่ ด้จำกโปรแกรม Computer Programming Language 1 is your course. คำอธิบำยโปรแกรม 37 จากโปรแกรมตัวอย่างท่ี 3.13 สามารถอธบิ ายการทางานของโปรแกรมท่สี าคัญ ๆ ไดด้ งั ตอ่ ไปนี้ บรรทัดท่ี 6 ใช้ฟังกช์ ัน printf( ) พมิ พข์ อ้ ความออกจอภาพ คือ Computer Programming Language 1 แสดงที่จอภาพ บรรทัดท่ี 7 ใช้ฟังกช์ นั puts( ) พมิ พข์ ้อความ is your course. ต่อทา้ ยของฟังก์ชัน printf( ) ในบรรทัดที่ 6 จะได้ Computer Programming Language 1 is your course. แลว้ หยุดรอรบั คา่ ใด ๆ จากคยี บ์ อรด์ ซึง่ ถ้าเรากด enter ก็จะกลับสู่ โปรแกรม ชุดกจิ กรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ รำยวชิ ำภำษำซี ง30243 ชั้นมธั ยมศึกษำปที ่ี 5

ชุดท3ี่ คำสงั่ รับคำ่ และแสดงผล สรปุ ทำ้ ยบท ฟังกช์ นั พ้นื ฐานที่ใช้งานอย่เู ปน็ ประจาในการเขียนโปรแกรมน้ันคือ ฟงั ก์ชนั รบั ขอ้ มลู และ ฟงั ก์ชนั แสดงผลขอ้ มูล โดยฟงั กช์ ันรับขอ้ มลู มีดงั ต่อไปน้ี 1. ฟงั กช์ ัน scanf( ) เปน็ ฟงั ก์ชันท่ีใช้ในการรับขอ้ มูลจากคีย์บอรด์ เขา้ ไปเก็บไว้ในตวั แปรท่ี กาหนดไวโ้ ดยสามารถรบั ขอ้ มลู ที่เปน็ ตัวเลขจานวนเต็ม ตัวเลขทศนิยม ตวั อักขระตวั เดยี ว หรือ ข้อความกไ็ ด้ 2. ฟังก์ชนั getchar( ) เปน็ ฟงั กช์ ันทใ่ี ช้รับขอ้ มลู จากคีย์บอร์ดเพยี ง 1 ตัวอักขระ โดย การรับข้อมลู ของฟังกช์ นั นี้จะต้องกดแป้น enter ทกุ ครั้งทปี่ ้อนขอ้ มลู เสร็จ จึงทาให้เหน็ ข้อมูลทีป่ ้อน ปรากฏบนจอภาพด้วย ถา้ ต้องการนาข้อมลู ทปี่ ้อนผา่ นทางคีย์บอร์ดไปใชง้ าน จะต้องกาหนดตัวแปร ชนิด single character (char) ข้ึนมา 1 ตวั เพือ่ เก็บคา่ ข้อมลู ทรี่ ับผา่ นทางคีย์บอรด์ ในทาง ตรงกันขา้ มถา้ ไมต่ ้องการใช้ข้อมลู ท่ีป้อนผ่านทางคียบ์ อร์ดก็ไมต่ ้องกาหนดตวั แปรชนิด char ขึน้ มา 3. ฟงั ก์ชนั getch( ) เปน็ ฟงั กช์ ันทใ่ี ชร้ บั ข้อมูลเพยี ง 1 ตัวอกั ขระเหมอื นกบั ฟังก์ชนั getchar( ) แตกตา่ งกันตรงทีเ่ ม่อื ใชฟ้ ังก์ชนั น้ีรบั ขอ้ มลู ขอ้ มลู ท่ีปอ้ นเข้าไปจะไมป่ รากฏใหเ้ หน็ บน จอภาพและไม่ตอ้ งกดแป้น enter ตาม 4. ฟงั ก์ชนั getche( ) เปน็ ฟังกช์ ันท่ีใช้รบั ข้อมลู จากคยี บ์ อร์ดเพยี ง 1 ตวั อักขระ เหมือน ฟงั ก์ชนั getch( ) แตกต่างกนั ตรงท่ีขอ้ มูลท่ีป้อนเข้าไปจะปรากฏใหเ้ ห็นบนจอภาพดว้ ย นอกน้ันมี การทางานและลักษณะการใช้งานเหมือนฟงั ก์ชนั getch( ) ทกุ ประการ 5. ฟังก์ชัน gets( ) เปน็ ฟงั กช์ ันทใ่ี ชร้ ับขอ้ มลู ชนิดขอ้ ความ (string) จาก คียบ์ อร์ด จากนัน้ นาขอ้ มลู ทีร่ ับเข้าไปเก็บไว้ในตัวแปรสตริง (string variables) ท่ีกาหนดไว้ สาหรับฟังกช์ ันแสดงผลข้อมลู มีดงั ตอ่ ไปนี้ฟังกช์ ัน printf( ) เป็นฟังกช์ ันทีใ่ ช้ในการแสดงผลลพั ธ์ออก ทางจอภาพ โดยสามารถกาหนดรหัสรปู แบบข้อมูล (format code) และ รหสั ควบคมุ (control code) ให้เหมาะสมกบั ข้อมูลและรูปแบบผลลพั ธ์ทตี่ ้องการ 6. ฟงั กช์ ัน putchar( ) เป็นฟังกช์ ันทีใ่ ช้ในการแสดงผลลพั ธ์ออกจอภาพทีละ 1 ตวั อักขระ โดยลักษณะของฟังกช์ นั น้เี ปน็ ฟงั กช์ ันทีต่ อ้ งการ argument 1 ค่าที่เปน็ ขอ้ มลู ชนดิ single character (char) 7. ฟังกช์ ัน puts( ) เปน็ ฟงั กช์ นั ทพี่ มิ พ์ขอ้ ความออกแสดงทางจอภาพ โดยลักษณะ ของฟงั กช์ นั น้ีเปน็ ฟงั ก์ชันท่ีตอ้ งการ argument 1 ค่าท่ีเปน็ ชนิดขอ้ ความ (string constant) ชุดกจิ กรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 38 รำยวชิ ำภำษำซี ง30243 ช้นั มธั ยมศกึ ษำปีที่ 5

ชดุ ท3่ี คำสงั่ รบั คำ่ และแสดงผล บัตรกิจกรรมกำรเรยี นรทู้ ่ี 2 10 เร่อื ง ฟังก์ชันแสดงผลขอ้ มลู 1. ให้นกั เรียนอธบิ ายรหสั ควบคมุ ข้อมลู ในขอ้ ต่อไปนี้ 1. \\a …………………………………………………………………………………………………………. 2. \\n …………………………………………………………………………………………………………. 3. \\t …………………………………………………………………………………………………………. 4. \\b …………………………………………………………………………………………………………. 5. \\v …………………………………………………………………………………………………………. 6. \\f …………………………………………………………………………………………………………. 7. \\r …………………………………………………………………………………………………………. 8. \\\\ …………………………………………………………………………………………………………. 9. \\000 …………………………………………………………………………………………………………. 10. \\xhh …………………………………………………………………………………………………………. ชดุ กิจกรรมกำรเรยี นรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 39 รำยวชิ ำภำษำซี ง30243 ชนั้ มธั ยมศกึ ษำปีที่ 5

ชุดท3่ี คำสั่งรับคำ่ และแสดงผล บตั รกิจกรรมกำรเรยี นรูท้ ่ี 2 10 เร่อื ง ฟังกช์ ันแสดงผลขอ้ มูล 2. ให้นกั เรียนพิมพโ์ ปแกรมที่กาหนดให้ดังนี้ #include <stdio.h> /* 1 */ Main() /* 2 */ { /* 3 */ int base, hight; /* 4 */ float TriArea; /* 5 */ printf(“Input base :”); /* 6 */ scanf(“%d”,&base); /* 7 */ printf(“\\n Input hight :”); /* 8 */ scanf(“%d”,&hight); /* 9 */ TriArea=(0.5)*base*hight; /* 10 */ printf(“\\n Area of triangle is %8.2f \\n”,TriArea); /* 11 */ } /* 12 */ ใหน้ ักเรยี นรนั โปรแกรมแล้วตอบคาถามตอ่ ไปนี้ (กาหนดค่า base=5, hight=6) 2.1 เขยี นผลลัพธท์ ไ่ี ดจ้ ากการรันโปรแกรม ……………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………… 2.2 คาสงั่ ใดในโปรแกรมทีท่ าหน้าท่ีแสดงผลทางจอภาพ ……………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………… 2.3 ชุดควบคมุ ใดมีความหมายให้ข้ึนบรรทดั ใหม่ ……………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………… ชุดกจิ กรรมกำรเรียนรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 40 รำยวชิ ำภำษำซี ง30243 ชัน้ มัธยมศึกษำปที ่ี 5

ชุดท3่ี คำส่งั รบั ค่ำและแสดงผล แบบทดสอบหลังเรียน เรื่อง คำสงั่ รับคำ่ และแสดงผล คำชแ้ี จง 1. แบบทดสอบเป็นแบบปรนยั จานวน 10 ข้อ 2. ใหน้ กั เรยี นเลือกคาตอบที่ถกู ตอ้ งที่สดุ เพียงคาตอบเดียว แลว้ ใสเ่ คร่อื งหมายกากบาท (x) ลงในกระดาษคาตอบ 1. ถ้าตอ้ งการแสดงผลค่าขอ้ ความ ตอ้ งใช้รหัสควบคุมรปู แบบใด ก %s ข %u ค %d ง %f 2. คาส่ังแสดงผลออกทางจอภาพ ตอ้ งอ้างอิงไลบรารีเปน็ แบบใด ก stdio.h ข conio.h ค math.h ง time.h 3. ขอ้ มลู ท่ีตอ้ งการแสดงผลออกทางจอภาพ ตอ้ งเขยี นในเครื่องหมายใด ก เครอ่ื งหมาย : : ข เครอื่ งหมาย ' ' ค เครอื่ งหมาย \" \" ง เครือ่ งหมาย # # 4. ถ้าต้องการแสดงขอ้ ความ Hello แลว้ ขึน้ บรรทัดใหม่ จากนน้ั แสดงข้อความ Good bye ตอ้ งใช้คาสัง่ รปู แบบใด ก printf(“Hello\\bGood bye\\n); ข printf(“Hello\\tGood bye”); ค printf(“Hello\\nGood bye”); ง print(‘Hello\\nGood bye’); 5. ถา้ x=45 y=’thai’ แลว้ ต้องการให้แสดงแสดงขอ้ ความ value=45 ตามด้วยเว้นชอ่ งวา่ ง 1 แท็บ ตาม ดว้ ยขอ้ ความ you are thai ตอ้ งใชค้ าส่งั รปู แบบใด ก printf(“value=%d\\tyou are %s”); ข printf(“value=%d\\nyou are %c”); ค printf(“value=%d\\tyou are %s”,x,z); ง printf(“value=%d\\tyou are %s”,x,y); ชุดกจิ กรรมกำรเรยี นรู้กำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 41 รำยวชิ ำภำษำซี ง30243 ชน้ั มธั ยมศึกษำปีท่ี 5

ชุดท3่ี คำสัง่ รบั ค่ำและแสดงผล 6. ถา้ ต้องการแสดงผลคา่ ของตวั แปรชนดิ จานวนทศนยิ ม ตอ้ งใชร้ หัสควบคุมรูปแบบใด ก %u ข %c ค %f ง %d 7. คาส่งั แสดงผลออกทางจอภาพ ภาษาซเี ป็นคาสั่งใด ก main(); ข getch(); ค printf(); ง scanf(); 8. ถ้าตอ้ งการแสดงผลให้ข้นึ บรรทดั ใหม่ ต้องใช้อักขระควบคุมรูปแบบใด ก \\t ข \\n ค \\f ง \\b 9. ข้อมูลประเภทแบบใดที่สามารถแสดงผลออกทางจอภาพได้ ก ข้อความธรรมดา และตัวเลข ข ข้อความธรรมดา และค่าของตัวแปร ค ขอ้ ความธรรมดา และรปู ภาพ ง ขอ้ ความพิเศษ และตวั แปรพิเศษ 10. ถา้ ต้องการแสดงผลค่าของตวั แปรชนิดจานวนเต็ม ต้องใช้รหสั ควบคมุ รปู แบบใด ก %s ข %u ค %f ง %d ชุดกจิ กรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 42 รำยวชิ ำภำษำซี ง30243 ชน้ั มธั ยมศึกษำปที ี่ 5

ชดุ ท3่ี คำสงั่ รับคำ่ และแสดงผล กระดำษคำตอบ เรื่อง คำส่ังรบั คำ่ และแสดงผล  ก่อนเรียน  หลังเรียน ช่ือ .................................................................................... ชนั้ ................ เลขท่ี .............. ขอ้ ท่ี ก ข ค ง 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ชุดกจิ กรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 43 รำยวชิ ำภำษำซี ง30243 ชนั้ มัธยมศึกษำปที ี่ 5

ชดุ ท3ี่ คำสัง่ รับค่ำและแสดงผล บรรณำนุกรม กิตติชัย ชวี าสุขถาวร. (2550). ภำษำซีทีละกำ้ ว. กรงุ เทพฯ : เคทพี ี คอมพ์ แอนด์ คอนซลั ท์. กลุ รพี ศิวาพรรักษ์. (2557). เทคโนโลยสี ำรสนเทศและคอมพวิ เตอร์ 4-6. กรงุ เทพฯ : สานักพิมพ์เอมพนั ธ์. ธรี วฒั น์ ประกอบผล. (2550). กำรเขียนโปรแกรมระบบปฏิบัติกำรเท็กโหมด(ด้วยภำษำซี). กรงุ เทพฯ : ซัคเซสมีเดีย. นิรุธ อานวยศิลป์. (ม.ป.ป.). C Programming เขียนโปรแกรมภำษำซฉี บบั สมบูรณ์. ม.ป.ท. : ดา่ นสทุ ธาการพิมพ์ พฒั พงษ์ อมรวงศ.์ (2554). กำรเขยี นโปรแกรมภำษำซ.ี ปทมุ ธานี : มีเดียอินเทลลิเจนซ์ เทคโนโลยี. มณั ฑนา ปราการสมุทร. (2534). กำรเขยี นชดุ คำสัง่ ภำษำซ.ี กรงุ เทพมหานคร : ดวงกมลสมัย. สถาบนั สง่ เสริมการสอนวทิ ยาศาสตรแ์ ละเทคโนโลยี กระทรวงศกึ ษาธกิ าร. (2551). ภำษำซี ช่วงชน้ั ที่ 4 ชั้นมัธยมศึกษาปีที่ 4 - 6. กรุงเทพฯ : โรงพมิ พค์ ุรุสภาลาดพรา้ ว. สมชาย รัตนเลิศนสุ รณ์. (2545). กำรเขยี นโปรแกรมคอมพิวเตอร์ดว้ ยภำษำซี. กรุงเทพฯ : สมาคมส่งเสริมเทคโนโลยี (ไทย-ญปี่ นุ่ ) โอภาส เอย่ี มสิริวงศ.์ (2552). กำรเขยี นโปรแกรมด้วยภำษำซี (Programming with C). กรุงเทพมหานคร : ซีเอด็ . ชุดกจิ กรรมกำรเรยี นร้กู ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 44 รำยวชิ ำภำษำซี ง30243 ชัน้ มัธยมศกึ ษำปที ี่ 5

ชุดท3่ี คำสั่งรบั คำ่ และแสดงผล ภำคผนวก ชุดกิจกรรมกำรเรียนรูก้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 45 รำยวชิ ำภำษำซี ง30243 ชนั้ มัธยมศกึ ษำปีที่ 5

ชดุ ท3่ี คำสง่ั รบั ค่ำและแสดงผล แบบบันทกึ คะแนนระหวำ่ งเรยี น เรอื่ ง คำสง่ั รับคำ่ และแสดงผล ชดุ กิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 46 รำยวชิ ำภำษำซี ง30243 ชน้ั มัธยมศกึ ษำปีที่ 5

ชุดท3่ี คำสงั่ รบั ค่ำและแสดงผล เฉลยแบบทดสอบกอ่ นเรยี น เรือ่ ง คำสงั่ รบั คำ่ และแสดงผล ช่อื .................................................................................... ชั้น ................ เลขท่ี .............. ขอ้ ที่ ก ข ค ง 1. × 2. × 3. × 4. × 5. × 6. × 7. × 8. × 9. × 10. × ชดุ กิจกรรมกำรเรียนรกู้ ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 47 รำยวชิ ำภำษำซี ง30243 ชัน้ มธั ยมศกึ ษำปีท่ี 5

ชุดท3่ี คำส่ังรบั คำ่ และแสดงผล เฉลยบัตรกิจกรรมกำรเรยี นรูท้ ่ี 1 10 เรอ่ื งฟังก์ชันรับข้อมลู 1. ใหน้ ักเรยี นอธบิ าย อักขระควบคุมรูปแบบการแสดงผล ในขอ้ ดังตอ่ ไปนี้ 1. %d สาหรับแสดงผลค่าของตัวแปรชนดิ จานวนเต็ม 2. %u สาหรบั แสดงผลตัวเลขจานวนเต็มบวก 3. %o สาหรับแสดงผลออกมาในรูปแบบของเลขฐานแปด 4. %x สาหรบั แสดงผลออกมาในรปู แบบของเลขฐานสิบหก 5. %f สาหรับแสดงผลคา่ ของตวั แปรชนดิ จานวนทศนิยม 6. %e สาหรบั แสดงผลตวั เลขทศนิยมออกมาในรปู แบบของ ( E หรือ e ) ยกกาลัง 7. %c สาหรบั แสดงผลอกั ขระ 1 ตวั 8. %s สาหรับแสดงผลข้อความ (อกั ขระมากกวา่ 1 ตวั ) 9. %p สาหรบั แสดงผลตวั ชตี้ าแหนง่ 10. %l สาหรบั แสดงข้อมูลชนดิ int โดยใชก้ ับตัวเลขฐาน 8, ฐาน 10 และฐาน 16 ชดุ กิจกรรมกำรเรยี นร้กู ำรเขยี นโปรแกรมภำษำคอมพวิ เตอร์ 48 รำยวชิ ำภำษำซี ง30243 ชั้นมธั ยมศึกษำปที ่ี 5

ชดุ ท3ี่ คำสง่ั รบั คำ่ และแสดงผล เฉลยบตั รกจิ กรรมกำรเรยี นรทู้ ่ี 1 10 เร่ืองฟังกช์ นั รบั ขอ้ มลู 2. ใหน้ กั เรียนพิมพโ์ ปแกรมท่กี าหนดใหด้ งั น้ี #include <stdio.h> /* 1 */ Main() /* 2 */ { /* 3 */ int width, length, RecArea; /* 4 */ printf(“Input width :”); /* 5 */ scanf(“%d”,&width); /* 6 */ printf(“\\n Input length :”); /* 7 */ scanf(“%d”,&length); /* 8 */ RecArea=width*length; /* 9 */ printf(“\\n Area of rectangle is %5d \\n”,RecArea); /* 10 */ } /* 11 */ ให้นกั เรียนรนั โปรแกรมแล้วตอบคาถามตอ่ ไปน้ี (กาหนดค่า width=5, length=6) 2.1 เขียนผลลพั ธท์ ไ่ี ดจ้ ากการรนั โปรแกรม 30 2.2 คาสงั่ ใดในโปรแกรมที่ทาหนา้ ท่รี บั ข้อมูลจากผใู้ ชโ้ ดยปอ้ นผ่านแป้นพมิ พ์ คาสง่ั scanf(); 2.3 จากคาสงั่ ในบรรทดั ที่ 10 ใหอ้ ธบิ ายผลของการใชร้ ูปแบบควบคุม %5d ชุดควบคุมการจดั รูปแบบ %5d ใชก้ าหนดวา่ ขอ้ มลู ที่นาเข้าจะต้องเปน็ จานวนเต็มฐานสบิ และ ชดุ ควบคมุ การจดั รปู แบบนี้มคี วามยาวห้าตวั อักษรและข้อมูลจะแสดงชิดขวา โดยนาคา่ ในตวั แปร RecArea มาแสดง ซ่ึงมีรูปแบบการแสดงดงั น้ี Area of Rectangle is _ _ _ 30 ชดุ กิจกรรมกำรเรยี นรกู้ ำรเขยี นโปรแกรมภำษำคอมพิวเตอร์ 49 รำยวชิ ำภำษำซี ง30243 ชัน้ มัธยมศึกษำปีท่ี 5


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook