SlideShare a Scribd company logo
1 of 39
Download to read offline
รายงาน
         วิชา การเขียนโปรแกรมเพืองานอาชีพ

         เรือง การเขียนคําสั งควบคุมขันพืนฐาน
                       จัดทําโดย
นายณัฐนันท์            วันเพ็ญ           เลขที &
นายกุลธวัช             จันทร์ อมรสิ นธุ์ เลขที &(
นางสาวกนิษฐา           เนตรสว่ าง        เลขที ,(
นางสาวทิพย์ วรรณ       เชือวงษ์          เลขที ,&
นางสาวมนัสนันต์        ทับทิมใส          เลขที ,.
นางสาวสุ กานดา         เฉินจุณวรรณ เลขที ,0
                 ชันมัธยมศึกษาปี ที 3/,

                        เสนอ
           อาจารย์     ทรงศักดิ5 โพธิ5เอียม

          ภาคเรียนที (      ปี การศึกษา &000

โรงเรียนเฉลิมพระเกียรติสมเด็จพระศรีนครินทร์ กาญจนบุรี
รายงาน
         วิชา การเขียนโปรแกรมเพืองานอาชีพ

         เรือง การเขียนคําสั งควบคุมขันพืนฐาน
                       จัดทําโดย
นายณัฐนันท์            วันเพ็ญ           เลขที &
นายกุลธวัช             จันทร์ อมรสิ นธุ์ เลขที &(
นางสาวกนิษฐา           เนตรสว่ าง        เลขที ,(
นางสาวทิพย์ วรรณ       เชือวงษ์          เลขที ,&
นางสาวมนัสนันต์        ทับทิมใส          เลขที ,.
นางสาวสุ กานดา         เฉินจุณวรรณ เลขที ,0
                 ชันมัธยมศึกษาปี ที 3/,

                        เสนอ
           อาจารย์     ทรงศักดิ5 โพธิ5เอียม

          ภาคเรียนที (      ปี การศึกษา &000

โรงเรียนเฉลิมพระเกียรติสมเด็จพระศรีนครินทร์ กาญจนบุรี
คํานํา
         รายงานเล่มนีเป็ นส่ วนหนึงของวิชา การเขียนโปรแกรมเพืองานอาชีพ ซึ งฝึ กให้ทุกคนได้มี
ความรู ้ความสามารถด้านคอมพิวเตอร์ ในการใช้ภาษาซี เพือไปประกอบอาชีพ รายงานเล่มนีจะ
ประกอบไปด้วย ลักษณะการทํางานของภาษาซี ความเป็ นมา คําสังควบคุมการทํางานขันพืนฐาน
และต่างๆ ซึ งได้ถูกจัดทําขึนเพือเป็ นความรู ้แก่ผอ่านไม่มากก็นอย ทําให้เข้าใจมากยิงขึนเกียวกับ
                                                 ู้           ้
โปรแกรมนี
         ถ้าผิดพลาดประการใดก็ขออภัย ณ ทีนีด้วย




                                                            จัดทําโดย
                                                 นายณัฐนันท์              วันเพ็ญ
                                                 นายกุลธวัช               จันทร์ อมรสิ นธุ์
                                                 นางสาวกนิษฐา             เนตรสว่าง
                                                 นางสาวทิพย์วรรณ          เชือวงษ์
                                                 นางสาวมนัสนันต์          ทับทิมใส
                                                 นางสาวสุ กานดา           เฉิ นจุณวรรณ
สารบัญ
เรือง                                           หน้ า
คํานํา                                          ก
ลักษณะการทํางานของภาษาซี                        8-2
ส่ วนประกอบโครงสร้างของภาษาซี                   ;-<
คําสังจัดเก็บข้อมูลลงหน่วยความจํา               <-=
คําสังควบคุมการทํางานขันพืนฐาน                  =-88
คําสังแสดงผล – รับข้อมูล เฉพาะอักขระ            88-8>
คําสังแสดงผล- รับข้อมูล เฉพาะข้อความ            8>-8?
กรณี ศึกษาการใช้คาสังควบคุมขันพืนฐาน
                   ํ                            8?-AB
สรุ ปเนื อหา                                    A8
Mind Maping                                     32
คําถามท้ายบท                                    AA-AK
เฉลย                                            A<
การเขียนคําสั งควบคุมขันพืนฐาน&

        1. ลักษณะการทํางานของภาษาซี
        ภาษาซี เป็ นภาษาทีมีพฒนาการมาอย่างต่อเนือง ภาษาซี รุ่นแรกทํางานภายใต้
                             ั
ระบบปฏิบติการคอส (cos) ปั จจุบนทํางานภายใต้ระบบปฏิบติการวินโดวส์ (Windows) ภาษาซี ใช้
        ั                     ั                    ั
วิธีแปลรหัสคําสังให้เป็ นเลขฐานสองเรี ยกว่า คอมไพเลอร์ การศึกษาภูมิหลังการเป็ นมาของภาษาซี
และกระบวนการแปลภาษาจะช่วยให้ผใช้ภาษาซี ในรุ่ นและบริ ษทผูผลิตแตกต่างกัน
                             ู้                       ั ้                         สามารถใช้
ภาษาได้อย่างเข้าใจมากขึน

    (.( ความเป็ นมาของภาษาซี
         ภาษาซี ได้รับการพัฒนาเมือปี ค.ศ. 8V=; โดยนายเดนนิส ริ ตซี ตังชื อว่าซี เพราะพัฒนามา
จากภาษา BCLP และภาษา B ในช่วงแรกใช้ทดลองเขียนคําสังควบคุมในห้องปฏิบติการเบล( Bell
                                                                                ั
Laboratoories) เท่านัน เมือปี ค.ศ. 8V=? นายไบรอัน เคอร์ นิกฮัน และนายเดนนิส ริ ตซี ร่ วมกัน
กําหนดนิยามรายละเอียดของภาษาซี เผยแพร่ ความรู ้โดยจัดทําหนังสื อ The C Programming
Language มีหลายบริ ษทให้ความสนใจนําไปพัฒนาต่อ จนมีภาษาซี หลายรู ปแบบและแพร่ หลายไป
                        ั
ทัวโลก แต่ยงไม่มีมาตรฐานคําสังเพือให้สามารถใช้งานร่ วมกันได้ ดังนันเมือปี ค.ศ. 8V?? นายริ ตซี
            ั
ได้ร่วมกับสถาบันกําหนดมาตรฐาน ANSI สร้างมาตรฐานภาษาซี ขึนมา มีผลให้ โปรแกรมคําสังที
สร้างด้วยภาษาซี สังกัดบริ ษทใดๆ ก็ตามทีใช้คาสังมาตรฐานของภาษาสามารถนํามาทํางานร่ วมกัน
                           ั                 ํ
ได้
     1.2 การทํางานของคอมไพเลอร์ ภาษาซี
        คอมไพเลอร์ เป็ นโปรแกรมทีได้รับการพัฒนามาเพือแปลภาษาคอมพิวเตอร์ รูปแบบหนึง
       ั
มักใช้กบโปรแกรมเชิงโครงสร้าง        ลักษณะการแปลจะอ่านรหัสคําสังทังโปรแกรมตังแต่บรรทัด
คําสังแรกถึงบรรทัดสุ ดท้าย หากมีขอผิดพลาดจะรายงานทุกตําแหน่งคําสังทีใช้งานผิดกฎไวยากรณ์
                                 ้
ของภาษา กระบวนการคอมไพล์โปรแกรมคําสังของภาษาซี มีดงนี
                                                  ั
        1. จัดทําโปรแกรมต้ นฉบับ (Source Program) หลักจากพิมพ์คาสังงาน ตามโครงสร้าง
                                                               ํ
            ภาษาทีสมบูรณ์แล้วทุกส่ วนประกอบ ให้บนทึกโดยกําหนดชนิ ดงานเป็ น .c เช่น
                                                ั
            work.c
รู ปที &.( แสดงโปรแกรมต้ นฉบับภาษาซี                            รู ปที &.& การบันทึกกําหนดชนิดเป็ น .C


    2. การแปลรหัสคําสั งเป็ นภาษาเครือง (Compile) หรื อการบิวด์ (Build) เครื องจะ
                                              ่
        ตรวจสอบคําสังทีละคําสัง เพือวิเคราะห์วาใช้งานได้ถูกต้องตามรู ปแบบไวยากรณ์ที
                ํ
        ภาษาซี กาหนดไว้หรื อไม่หากมีขอผิดพลาดจะแจ้งให้ทราบ หากไม่มีขอผิดพลาดจะ
                                     ้                              ้
        ไปกระบวนการ A
    3. การเชื อมโยงโปรแกรม( Link) ภาษาซี มีฟังก์ชนมาตรฐานให้ใช้งาน เช่น printf () ซึ ง
                                                 ั
        จัดเก็บไว้ในเฮดเดอร์ ไพล์ หรื อเรี ยกว่า ไลบรารี ในตําแหน่งทีกําหนดชื อแตกต่างกัน
             ้ ้                                  ั
        ไป ผูใช้ตองศึกษาและเรี ยกใช้เฮดเดอร์ ไฟล์กบฟังก์ชนให้สัมพันธ์ เรี ยกว่าเชื อมโยงกับ
                                                         ั
        ไลบรารี กระบวนการนีได้ผลลัพธ์เป็ นไฟล์ชนิด exe




                            รู ปที &., แสดงกระบวนการแปลรหัสคําสั งของภาษาซี


2. ส่ วนประกอบโครงสร้ างภาษาซี
    สําหรับโครงสร้างของภาษาซี ในเบืองต้นนีจะกล่าวถึงเฉพาะรายละเอียดทีนําไปใช้ในการ
   เขียนคําสังควบคุมระดับพืนฐาน              ผูสร้างงานโปรแกรมจะใช้งานส่ วนประกอบในภาษาซี
                                               ้
   เพียง ; ส่ วน คือ ส่ วนหัวและส่ วนฟังก์ชนหลัก ดังนี
                                           ั
# include < header file >            1
               Main ( )
               {
                   Statements ;                      2
               }


                         รู ปที &.. แสดงส่ วนประกอบในโครงสร้ างภาษาซี


&.( ส่ วนหัวของโปรแกรม (Header File)
   หรื อเรี ยกว่าฟรี โปรเซสเซอร์ ไดเรกทีฟ ใช้ระบุชือเฮดเดอร์ ไฟล์ ควบคุมการทํางานของฟังก์ชน   ั
มาตรฐานทีถูกเรี ยกใช้งานในส่ วนของ main ( ) เฮดเดอร์ ไฟล์มีชนิ ดเป็ น.h จัดเก็บในไลบรารี
       ั                                    ั              ่
ฟังก์ชน ผูเ้ ขียนคําสังงานต้องศึกษาว่าฟังก์ชนทีใช้งานนันอยูในเฮดเดอร์ ไฟล์ชืออะไร จึงจะเรี ยกใช้
งานได้ถูกต้อง นิยมใช้รูปแบบคําสัง ดังนี

รู ปแบบ    # include < header_name>

อธิบาย header_name ชือเฮดเดอร์ ไฟล์ทีควบคุมฟังก์ชนมาตรฐาน เช่น ฟังก์ชน printf ใช้ควบคุม
                                                      ั                  ั
การแสดงผล จัดเก็บในไลบรารี ชือ #include <stdio.h>
ตัวอย่ างคําสั ง ประกาศฟรี โปรเซสเซอร์ ไดเรกทีฟ ทีใช้ควบคุมฟังก์ชนมาตรฐานภาษาซี
                                                                 ั

            # include <stdio.h>
อธิบาย ให้คอมไพเลอร์ คนหาไลบรารี ไฟล์ชือ stdio.h จากไดเรกเทอรี include
                      ้

          ข้ อควรจํา
          #include <stdio.h>เก็บฟังก์ชนรับข้อมูลแสดงผลทีต้องใช้งานทุกโปรแกรม
                                      ั
          ดังนัน ส่ วนดันทุกโปรแกรมจึงปรากฏคําสังนี
รู ปที &.0 แสดงตําแหน่ งไฟล์ stdio.h ในไดเรกทอรี include




2.2 ส่ วนฟังก์ ชันหลัก (Main Function)
    เป็ นส่ วนเขียนคําสังควบคุมการทํางานภายในขอบเขตเครื องหมาย { }ของฟังก์ชนหลักคือ main
                                                                                 ั
    ( ) ต้องเขียนคําสังตามลําดับขันตอนจากกระบวนการวิเคราะห์ระบบงานเบืองต้นและขัน
    วางแผนลําดับการทํางานทีได้จดทําล่วงหน้าไว้ เช่น ลําดับการทํางานด้วยแผนผังโปรแกรม
                                   ั
    เพือลดข้อผิดพลาดในขันตอนลําดับคําสังควบคุมงาน ในส่ วนนีพึงระมัดระวังเรื องเดียวคือ ต้อง
    ใช้งานคําสังตามรู ปแบบไวยากรณ์ของภาษาซี ทีกําหนดไว้
2.3 การพิมพ์ คําสั งควบคุมงานในโครงสร้ างภาษาซี
    คําแนะนําในการพิมพ์คาสังงาน ซึ งภาษาซี รียกว่า ฟังก์ชน (ต่อไปนีจะเรี ยกว่า คําสัง ตามทีนิยม
                            ํ                            ั
    ทัวไป) ในส่ วนประกอบภายในโครงสร้างภาษาซี มีแนวทางปฏิบติดงนี  ั ั
    1. คําสังทีใช้ควบคุมการประมวลผลตามลําดับทีได้วเิ คราะห์ไว้ ต้องเขียนภายในเครื องหมาย
                  ่
         {}ทีอยูภายใต้การควบคุมของ ฟังก์ชนหลักชือ main ()
                                             ั
    2. ปกติคาสังควบคุมงานจะเป็ นอักษรตัวพิมพ์เล็ก ยกเว้นบางคําสังทีภาษากําหนดว่าต้องเป็ น
                ํ
         อักษรตัวพิมพ์ใหญ่ ต้องปฏิบติตามนัน เพราะภาษาซี มีความแตกต่างในเรื องตัวอักษร
                                     ั
    3. เมือสิ นสุ ดคําสังงาน ต้องพิมพ์เครื องหมายเซมิโคลอน (;)
4. ใน 1 บรรทัด พิมพ์ได้มากกว่า 1 คําสัง แต่นิยมบรรทัดละ 1 คําสัง เพราะว่าอ่านโปรแกรม
   ง่ายเมือมีขอผิดพลาด ย่อมตรวจสอบและค้นหาเพือแก้ไขได้เร็ ว
              ้
5. การพิมพ์คาสัง หากมีส่วนย่อย นิยมเคาะเยืองเข้าไป เพืออ่านโปรแกรมได้ง่ายขึน เมือมี
                ํ
   ข้อผิดพลาดย่อมตรวจสอบและค้นหาเพือแก้ไขได้รวดเร็ ว




                        รู ปที &.3 แสดงลักษณะการพิมพ์ คาสั งในโครงสร้ างภาษาซี
                                                       ํ



3. คําสั งจัดเก็บข้ อมูลลงหน่ วยความจํา (1)
    การจัดเก็บข้อมูลลงหน่วยความจําคอมพิวเตอร์            ภาษากําหนดให้ดาเนินการผ่านซื อ
                                                                            ํ
                                            ้ํ
    (identifier) ทีผูสร้างงานโปรแกรมเป็ นผูกาหนดเอง ระบบคอมพิวเตอร์ จะจัดเก็บชือและ
                      ้
    ตําแหน่งทีอยู่ (Address ) ในหน่วยความจํา เพืออ้างอิงนําข้อมูลทีจัดเก็บนันมาใช้งาน การ
                                                                          ํ
    กําหนดชือทีใช้เก็บข้อมูลต้องทําภายใต้กฎเกณฑ์ และต้องศึกษาวิธีกาหนดลักษณะการ
    จัดเก็บข้อมูลตามทีภาษากําหนดไว้ ลักษณะการจัดเก็บข้อมูลมี 2 แบบคือ แบบค่าคงทีและ
    แบบตัวแปร ทังนีก่อนทีจะเขียนคําสังกําหนดการจัดเก็บข้อมูล ควรมีความรู ้ในเรื องชนิด
    ข้อมูลก่อน
,.( ชนิดข้ อมูลแบบพืนฐาน
    การจัดเก็บข้อมูลลงหน่วยความจําทังแบค่าคงทีหรื อแบบตัวแปร ต้องกําหนดชนิ ดข้อมูลให้
    ระบบรับทราบ ในทีนีกล่าวถึงชนิดข้อมูลแบบพืนฐาน 3 กลุ่มหลักเท่านัน
    ตารางที 2.1 ชนิดข้อมูลแบบพืนฐาน
      ชนิดข้อมูล                     ขอบเขตของข้อมูล                             อธิบาย
        char                           -128ถึง 8;=                         เก็บข้อมูลแบบอักขระ
         int                         -A;=>?ถึง A;=>=                   เก็บข้อมูลแบบตัวเลขจํานวน
                                                                                    เต็ม
         float                       A.Kx8B ถึงA.Kx10                  เก็บข้อมูลแบบตัวเลขทศนิยม
                                                                            ตัวเลขหลังจุด >หลัก
ข้ อควรจํา
       ข้อมูลแบบข้อความใช้แบบข้อมูลแบบตัวแปรชุ ด เช่น char a [20] :

               หมายเหตุ
       ตารางแสดงชนิดข้อมูลของภาษาซีทุกชนิดแสดงในภาคผนวก


,.& คําสั งจัดเก็บข้ อมูลแบบค่ าคงที
    ประสิ ทธิภาพคําสั ง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจําไม่สามารถเปลียนแปลงได้
    รู ปแบบ Const data_type var = data ;

   อธิบาย data_type คือทีชนิ ดข้อมูลแบบพืนฐาน
            Var          คือชือหน่วยความจําทีผูใช้ตองกําหนดตามกฎการตังชื อ
                                               ้ ้
            Data         คือข้อมูลทีกําหนดเป็ นค่าคงที
   ตัวอย่ างคําสั ง จัดเก็บข้อมูลแบบค่าคงที
     Const float pi = 3.14 ;
     Const char ans = ‘n ‘ ;
   ข้อควรจํา char words [9] = “ computer”
     Const

                 ข้ อควรจํา
                                       ่
     กรณี ขอมูลมี 1 อักขระ กําหนดให้อยูใน ‘ ‘ (single quotation)
           ้
                                                 ่
     กรณี ขอมูลมีมากกว่า 1 อักขระ กําหนดให้อยูใน “ ” (double
             ้
     quotation)
                                                    ้ ่
     กรณี ขอมูลเป็ นชนิดตัวเลขใช้ในการคํานวณไม่ตองอยูใน ‘’ หรื อ “ ”
               ้

,., คําสั งจัดเก็บข้ อมูลแบบตัวแปร
    ประสิ ทธิ ภาพคําสัง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจําสามารถเปลียนแปลงได้

                var_type var_name[,….];
   รู ปแบบ 1


   รู ปแบบ 2   var_type var_name = data ;

   อธิ บาย var_type คือหน่วยชนิดข้อมูลแบบพืนฐาน
var name คือชือหน่วยความจํา ทีผูใช้ตองกําหนดตามกฎการตังชื อ
                                                  ้ ้
                 data     คือข้อมูลทีกําหนดเป็ นค่าเริ มต้น (อาจมีหรื อไม่ก็ได้)

          หมายเหตุ หากมีตวแปรมากกว่า 1 ตัว แต่เป็ นตัวแปรเก็บข้อมูลประเภทเดียว ใช้คอมม่า (,)
                         ั
คัน

          ตัวอย่ างคําสั ง กําหนดคุณสมบัติให้ตวแปรในการจัดเก็บข้อมูล
                                              ั

            Char ans ;
            List salary , bonus ;
            Short value = 2;


      4. คําสั งควบคุมการทํางานขันพืนฐาน
          คําสังทีใช้ควบคุมการทํางานขันพืนฐานมี 3 กลุ่มคือ คําสังรับข้อมูลจากแป้ นพิมพ์แล้ว
          นําไปจัดเก็บหน่ายความจํา (input ) การเขียนสมการคํานวณโดยใช้นิพจน์ทางคณิ ตศาสตร์
          (Process) และคําสังแสดงผลข้อมูล หรื อข้อมูลทีจัดเก็บในหน่วยความจํา (Qutput )
      ..( คําสั งแสดงผล : printf ( )
          ประสิ ทธิภาพคําสั ง : ใช้แสดงผล สิ งต่อไปนี เช่น ข้อความ ข้อมูลจากค่าคงที หรื อตัวแปร
          ทีจอภาพ
          รู ปแบบ 1 Printf (“ string_format” , data_list ) ;

          รู ปแบบ 2     Printf (“string_format” ) ;

          อธิบาย string_format คือลักษณะของสิ งต่อไปนี เช่น ข้อความ (text ) รหัสรู ปแบบ
          ข้อมูล เช่น %d รหัสควบคุม เช่นn
                     Data_list    คือข้อมูลแสดงผลอาจเป็ นค่าคงที ตัวแปร นิพจน์ หากมีหลายตัว
          ใช้ , คัน
ตารางที 2.2 รหัสรู ปแบบข้อมูลระดับพืนฐาน
             รหัส format code                                           ความหมาย
                     %c                                               ั
                                                                 ใช้กบข้อมูลแบบ char
                     %d                                       ั
                                                          ใช้กบข้อมูลแบบ int เฉพาะฐาน10
                     %s                                             ั
                                                                ใช้กบข้อมูลแบบ string



       หมายเหตุ       รหัสรู ปแบบข้อมูลรู ปแบบ แสดงในภาคผนวก


       ตัวอย่ างคําสั ง ควบคุมการแสดงผลด้วย printf

         Printf ( “ Data is %d n ” , score ) ;



       อธิบาย พิมพ์ขอความคําว่า data is ตามด้วยค่าข้อมูลในหน่วยความจําตัวแปรชื อ score ซึ ง
                         ้
       เป็ นข้อมูลชนิ ดจํานวนเต็ม (%) แล้วเลือนคอร์ เซอร์ ไปไว้บรรทัดถัดไป (n)
   ..& คําสั งรับข้ อมูล : รับข้อมูลจากแป้ นพิมพ์ แล้วจัดเก็บลงหน่วยความจําของตัวแปร

       รู ปแบบ        Scanf ( “ string_format” , & address_list ) ;

      อธิบาย string_format        คือรู ปแบบการแสดงผลของข้อมูลเท่านัน เช่น %d
                 Address_list                           ่
                                  คือการระบุตาแหน่งทีอยูในหน่วยความจําต้องใช้สัญลักษณ์&
                                              ํ
(Ampersand) นําหน้าชื อตัวแปรเสมอ
       ข้ อควรจํา กรณี เป็ นตัวแปรข้อความ (String) สามารถยกเว้นไม่ตองใช้ & นําหน้าได้
                                                                   ้

      ตัวอย่ างคําสั ง เขียนคําสังควบคุมการรับค่าจากแป้ นพิมพ์ดวย scanf
                                                               ้
         Scanf ( “%d ” , &score ) ;

        อธิบาย รับข้อมูลจากแป้ นพิมพ์ นําไปเก็บในหน่วยความจําชือ score เป็ นข้อมูลประเภท
จํานวนเต็ม
.., คําสั งประมวลผล : expression
         ประสิ ทธิภาพคําสั ง : เขียนคําสังแบบนิพจน์เพือประมวลผล แล้วนําข้อมูลทีได้ไปจัดเก็บ
         ในหน่วยความจําของตัวแปรทีต้องกําหนดชือและชนิดข้อมูลไว้แล้ว
         รู ปแบบ Var = expression ;

           อธิบาย var คือชือหน่วยความจําชนิดตัวแปร
                     Expression คือสมการนิพจน์ เช่น สู ตรคํานวณทางคณิ ตศาสตร์
           ตัวอย่ างคําสั ง นิพจน์ทีเป็ นสู ตรคํานวณทางคณิ ตศาสตร์

                     Sum = a+b ;
           อธิบาย ให้นาค่าในหน่วยความจําตัวแปรชือ a กับ b มา+กันแล้วนําค่าไปเก็บใน
                      ํ
           หน่วยความจําตัวแปรชือ sum

ตารางที 2.3 สั ญลักษณ์ ตัวดําเนินการคณิตศาสตร์   ตารางที2.4 ลําดับการคํานวณตัวดําเนินการคณิตศาสตร์




                                                        หมายเหตุ : หากลําดับเท่ ากันให้ คํานวณ


ตัวอย่ างโปรแกรมที 2.1 เขียนคําสังควบคุมให้ประมวลผลนิพจน์คณิ ตศาสตร์
#include <stdio . h >
            /*file name // project_loop // operator3. C */
            Main ( )
            {
               Int x ,y,r,s,t,;
               Printf (“t arithmetic operator n”);
               Printf (“-------------------------n”);
                 Printf ( “ Data x=” ) ; scanf (“%d” , &x ) ;                         ปอนข้ อมูลเข้ าระบบ
                                                                                       ้
                 Printf ( “ Data x=” ) ; scanf(“%d” , &y) ;
                 Printf (“n”);
                     R=x+y *2;
                                                                                    ประมวลผลตามนิพจน์ คณิตศาสตร์
                     S = (x+y) *;;
                     T = x+y *2-1 ;
                     Printf ( “R=x+y *2 = %d n” , r ) ;
                     Printf ( “R= (x+y) *;= %d n” , s ) ;                         แสดงผลข้ อมูลทีจัดเก็บในตัวแปร
                     Printf ( “R= x+y *2-1 = %d n” , t) ;
                Printf (“-------------------------n”);
            }




                                        รู ปที &.[ ผลทดสอบโปรแกรมตัวอย่ างที &.(


แนวคิดในการเขียนคําสั งควบคุมการทํางาน
     1. ส่ วนปอนข้ อมูล ผูใช้ระบบงานป้ อนค่า ; เก็บในหน่วยความจํา x และป้ อนค่า A เก็บใน
                ้          ้
          หน่วยความจํา y ด้วยคําสัง
          Printf ( “data x=” ) ; scanf ( “%d ,&x ) ;
          Printf ( “data y=” ) ; scanf ( “%d ,&y ) ;
    &.ส่ วนประมวลผล ระบบจะนําค่าไปประมวลผลตามนิ พจน์คณิ ตศาสตร์
r = 2 + 3 * 2 ; ได้คาตอบคือ ?
                      ํ
s = (; + A ) * ; ; ได้คาตอบคือ 8B
                        ํ
t = 2 + 3 * 2-1 ; ได้คาตอบคือ 7
                          ํ
ทังนีคอมพิวเตอร์ ประมวลผล โดยยึดหลักลําดับความสําคัญของเครื องหมายทางคณิ ตศาสตร์ เช่น
คํานวณเครื องหมาย * ก่อนเครื องหมาย +
,.ส่ วนแสดงผล คําสังควบคุมให้แสดงผลลัพธ์
  Printf ( “r = x + y * 2 = %d n” , r ) ;
  Printf ( “r = (x + y X* 2 = %d n” , s ) ;
  Printf ( “r = x + y * 2-1 = %d n” , t ) ;
5.คําสั งแสดงผล-รับข้ อมูล เฉพาะอักขระ
ภาษาซี มีคาสังแสดงผลและรับข้อมูลเฉพาะข้อมูลประเภท 8 อักขระ (char )ดังนี
            ํ
      5.1 คําสัง putchar ( ) <.; คําสัง getchar ( )
      <.A คําสัง getch ( )       <.K คําสัง getche ( )
5.1 คําสั ง putchar ( )
          แสดงผลข้อมูลจากหน่วยความจําของตัวแปร ทางจอภาพครังละ1อักขระเท่านัน

       รู ปแบบ         Putchar ( char_argument) ;

       อธิบาย putchar_argument คือ ข้อมูลชนิดอักขระ

       ตัวอย่ างโปรแกรมที 2.2 แสดงประสิ ทธิ ภาพคําสัง putchar ( )
           #include <stdio.h>
           /*// exput 1// exput.c*/
           main( )
           {
           Char word1 =’A’ ,word2 = ‘1’ ;
           printf ( “t * Test putchar ( ) command * n” );
           printf (“ ***********************************n” );
           printf ( “ Display 2 character = “ ) ;

            putchar ( word1) ;
            putchar ( word1) ;


           printf (“n”);
           printf (“***************************n”);
           }
รู ปที &.^ ผลทดสอบโปรแกรมตัวอย่ างที &.&


แนวคิดในการเขียนคําสั งควบคุมการทํางาน
   1. กําหนดค่ า ‘A’ เก็บในตัวแปรประเภท char ชื อ word1 และกําหนดค่า ‘1’ เก็บในตัวแปรชื อ

        word2 ด้วยคําสัง char word1=’A’ , word2=’1’
   2.   เขียนคําสั งควบคุมการแสดงผลทีละ 1 อักขระโดยไม่ตองใช้สัญลักษณ์ขึนบรรทัดใหม่ดวย
                                                       ้                           ้
        คําสัง putchar(word1); putcar(word2);
        จึงพิมพ์คาว่า A1 ทีจอภาพ
                 ํ

5.2คําสั ง getchar ( )
           รับข้อมูลจากแป้ นพิมพ์ครังละ 1 อักขระ และแสดงอักขระทีจอภาพ จากนันต้องกด
        แป้ นพิมพ์ที Enter เพือนําข้อมูลบันทึกลงหน่วยความจําด้วย
         รู ปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร
                       ํ
                                 getchar ( ) ;
         รู ปแบบ 2 นําข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร
                           char_var = getchar ( ) ;
        อธิบาย char_var คือ ข้อมูลชนิด char
        ตัวอย่ างโปรแกรมที 2.3 แสดงประสิ ทธิภาพคําสั ง getchar ( )
#include <stdio.h>
   /*// getchar//getchar.c*/
   main( )
   {
   Char word1;
        printf ( “t * Test getchar ( ) command * n” );
        printf (“ ***********************************n” );
        printf( “Key 1 Character = “ );
        Word = getchar ( ) ;

       printf (“n”);
       printf( You key Character is = %c n”, word) ;
       printf (“***************************n”);
   }




                                รู ปที &.d ผลทดสอบโปรแกรมตัวอย่ างที &.,

แนวคิดในการเขียนคําสั งควบคุมการทํางาน
          1.เขียนคําสั งควบคุมการปอนข้ อมูลประเภทอักขระด้ วยคําสั ง
                                  ้

         printf ( “Key 1 Character = “ ) ;
           word = getchar ( );
            หมายถึงป้ อนอักขระ 1 ตัว เช่น a จะแสดงค่า ให้เห็นทีหน้าจอด้วย แล้ว ต้องกดแป้ น
            Enter เพือนําข้อมูลบันทึกลงหน่วยความจําตัวแปรประเภท char ชือ word
            2 . เขียนคําสั งควบคุมการแสดงผลจากหน่ วยความจํา word จึงเห็นค่ า a ( แทนที
            word)
            printf ( “You key Character is = %cn”, word ) ;
5.3 คําสั ง getch ( )
               รับข้อมูลจากแป้ นพิมพ์ครังละ 1 อักขระ แต่ ไม่ปรากฏ อักษรบนจอภาพ และ ไม่ตอง
                                                                                       ้
กดแป้ น Enter
           รู ปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร
                         ํ
                                       getch( ) ;
           รู ปแบบ 2 นําข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร

                                         char_var = getch 1( ) ;

           อธิบาย char_var คือ ข้อมูลชนิดอักขระ
           ตัวอย่ างโปรแกรมที 2.4 แสดงประสิ ทธิภาพคําสั ง getch ( )

      #include <stdio.h>
      /*// getch//getch.c*/
      main( )
      {
      Char word;
          printf ( “t * Test getch ( ) command * n” );
           printf (“ ***********************************n” );
           printf( “Key 1 Character = “ );
            word = getch( );
           printf (“n”);
           printf( You key Character is = %c n”, word) ;
           printf (“***************************n”);
      }



           แนวคิดในการเขียนคําสั งควบคุมการทํางาน
           1.เขียนคําสั งควบคุมการปอนข้ อมูลประเภทอักขระด้ วยคําสั ง
                                   ้

                printf ( “Key 1 Character = “ ) ;
                word = getch ( );
       หมายถึงป้ อนค่าใดทางแป้ นพิมพ์เป็ นอักขระ 1 ตัว เช่น a จะ ไม่แสดง ค่าให้เห็นทีหน้าจอ
       ไม่ตอง กดแป้ น Enter เพือนําข้อมูลบันทึกลงหน่วยความจําตัวแปรประเภท char ชือ word
           ้
2.เขียนคําสั งควบคุมการแสดงผลจากหน่ วยความจํา word จึงเห็นค่ า a ( แทนทีword )
               printf ( “You key Character is = %cn”, word ) ;

5.4 คําสั ง getche( )
              รับข้อมูลจากแป้ นพิมพ์ครังละ 1 อักขระ และ แสดง อักษรบนจอภาพ และ ไม่ตอง กด
                                                                                  ้
แป้ น Enter
               รู ปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร
                             ํ
                           getche ( );
               รู ปแบบ 2 นําข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร
                            char_var = getche ( );
               อธิบาย char_var คือ ข้อมูลชนิดอักขระ
               ตัวอย่ างโปรแกรมที 2.5 แสดงประสิ ทธิภาพคําสั ง getche ( )
              #include <stdio.h>
              #include <conio.h>
              /*// getch//getche.c*/
              main( )
              {
              Char word;
                  printf ( “t * Test getche ( ) command * n” );
                  printf (“ ***********************************n” );
                  printf( “Key 1 Character = “ );

                     word = getche ( ) ;
                  printf (“n”);
                  printf( You key Character is = %c n”, word) ;
                  printf (“***************************n”);
              }




                                   รู ปที &.(( ผลทดสอบโปรแกรมตัวอย่ างที &.0
แนวคิดในการเขียนคําสั งควบคมการทํางาน
              1.เขียนคําสั งควบคุมการปอนข้ อมูลประเภทอักขระด้ วยคําสั ง
                                      ้

              printf ( “Key 1 Character = “ ) ;
              word = getche ( );
         หมายถึงป้ อนค่าใดทางแป้ นพิมพ์เป็ นอักขระ 1 ตัว เช่น a จะ แสดง ค่าให้เห็นทีหน้าจอ และ
ไม่ตอง กดแป้ น Enter เพือนําข้อมูลบันทึกลงหน่วยความจําตัวแปรประเภท char ชือ word
    ้
              2.เขียนคําสั งควบคุมการแสดงผลเพือแสดงค่ าจากหน่ วยความจํา word จึงเห็นค่ า a
( แทนทิword )
              printf ( “You key Character is = %cn”, word ) ;

6.คําสั งแสดงผล-รับข้ อมูล เฉพาะข้ อความ
              ภาษาซี มีคาสังใช้ในการรับข้อมูลเฉพาะประเภทข้อความ (String) ในภาษาซี คือ
                          ํ
ชนิดข้อมูล char [n] จัดเก็บในหน่วยความจํา และแสดงผลข้อมูลประเภทข้อความเท่านัน มี
รายละเอียดดังนี
              6.1.คําสัง puts( )
              6.2.คําสัง gets( )
6.1.คําสั ง puts( )
         แสดงผลข้อมูลเฉพาะประเภทข้อความทางจอภาพครังละ 1 ข้อความ
              รู ปแบบ        puts ( string_argument ) ;
              อธิบาย string_argument คือ ข้อมูลชนิดข้อความ
              ตัวอย่ างโปรแกรมที2.6 แสดงประสิ ทธิภาพคําสั ง puts ( )

                      #include <stdio.h>
                      #include <conio.h>
                      /*// puts//puts.c*/
                      main ( )
                      {
                      char word [15] = “*Example * “ ;

                          puts(word) ;
                          puts(“**************”) ;



                      }
รู ปที &.(& ผลทดสอบโปรแกรมตัวอย่ างที &.3


แนวคิดในการเขียนคําสั งควบคุมการทํางาน
    1.เขียนคําสั งกําหนดค่ าข้ อความเก็บในตัวแปรชื อ word
    Char word [15] = “*Example * “ ;
    2.เขียนคําสั งควบคุมการแสดงผลในลักษณะข้ อความด้ วย puts
    Puts ( word ) ;
    Puts (“**************”);
6.2คําสั ง gets ( )
     รับข้อมูล ข้อความ จากแป้ นพิมพ์ และต้องกดแป้ น Enter
    รู ปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร
                  ํ

                       gets ( );

    รู ปแบบ 2 นําข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร

                      string_var =gets ( ) ;

    อธิบาย string_var คือ ข้อมูลชนิดข้อความ
    ตัวอย่ างโปรแกรมที2.7 แสดงประสิ ทธิภาพคําสั ง gets ( )
#include <stdio.h>
     /* gets.c */
     main( )
     {
     Char word[40];
         printf ( “t * Test gets ( ) command * n” );
           printf (“ ***********************************n” );
           printf( “Key your name = “ );
            gets (word) ;

           printf (“n”); printf( “You name is %s n”, word) ;
           printf (“***************************n”);
     }




                                     รู ปที &.(, ผลทดสอบโปรแกรมตัวอย่ างที &.[



         แนวคิดในการเขียนคําสั งควบคมการทํางาน
            1.เขียนคําสั งให้ รับข้ อมูล ชนิดข้ อความ จากแปนพิมพ์ และต้อง กดแป้ น Enter เพือนํา
                                                           ้
            ข้อความบันทึกลงตัวแปรชนิ ดข้อความ ด้วยคําสัง gets (word) ;
            2.เขียนคําสั งควบคุมให้ แสดงผลลักษณะข้ อความด้ วย
            printf ( “You name is = %sn”, word ) ;
7.กรณีศึกษาการใช้ คําสั งควบคุมขันพืนฐาน
         7.1กรณีศึกษาการใช้ คําสั งควบคุมพืนฐาน ดําเนินงานข้ อมูลประเภทตัวแปร
โจทย์ : จงเขียนโปนแกรมให้ประมวลผลหาผลรวมเลข 2 จํานวนตามทีผูใช้ป้อนเข้าระบบ
                                                           ้
         ตัวอย่ างโปรแกรมที2.8กรณีศึกษาระบบงานคํานวณหาผลรวมเลข 2 จํานวน
#include <stdio.h>
/* calulate // call.c*/
main( )
{
     int n1 ,n2 ,result ;
     printf ( “*Calulate Add * nn “ );
     Printf (“Key number 1 = “) ; scanf (“%d “ ,& n1);
                                                                                    ส่ วนปอนข้ อมูล
                                                                                          ้
     Printf (“Key number 2 = “) ; scanf (“%d “ ,& n2);
     Rusule = n1+n2 ;                                                               ส่ วนประมวลผล

     Printf(“n ** Result = %d  n” , result) ;                                      ส่ วนแสดงผล
}




                                                  รู ปที &.(. ผลทดสอบโปรแกรมตัวอย่ างที &.^



          แนวคิดในการเขียนคําสั งควบคุมการทํางาน
          1.ประกาศพรีดปรเซสเซอร์ ไดเรกทีฟ #include <stdio.h>ระบุไลบรารี ควบคุมคําสัง
          2.เขียนหมายเหตุ (remark) เช่ น /* calculate// cal1.c*/ชือแฟ้ มงานทีจัดเก็บโปรแกรมนี
          3.กําหนดชื อหน่ วยความจํา                 ประเภทตัวแปรและชนิ ดข้อมูลทีจัดเก็บในทีนีคือ      int
n1,n2,result;(ตัวแปร3ตัว คือ n1,n2และresult เก็บค่าจํานวนเต็ม)
          4.พิมพ์ หัวข้ อรายงานของโปรแกรมระบบงานนี เช่ น printf(“*calculate Add*nn*);n คือ
เลือนเคอร์ เซอร์ ขึนบรรทัดใหม่
          5.ส่ วนปอนข้ อมูลเข้ าระบบ เขียนคําสังควบคุม printf (“key number 1 =”) ; scanf(“%d”
                  ้
,&n1); ผลลัพธ์ คือ key number 1 =(ป้ อนข้อมูลตัวเลขจํานวนเต็ม)
          6.ส่ วนเขียนนิพจน์ เพือประมวลผลสมการ เช่น result= n1+n2;(นําค่าในตัวแปร n1 กับ n2
บวกกัน แล้วเก็บในตัวแปรชื อ result
7.ส่ วนแสดงผล ทีเก็บไว้ในตัวแปรจากนิพจน์ เช่น printf (“n**Result =%dn” ,result);
     (เลือนเคอร์ เซอร์ ขึนบรรทัดใหม่แล้วพิมพ์ ** Result = ตามด้วยค่า result ทีเป็ นเลขจํานวนเต็ม %d
     แล้วเลือนเคอร์ เซอร์ ขึนบรรทัดใหม่)
             7.2 กรณีศึกษาใช้ คําสั งควบคุมพืนฐาน ดําเนินงานข้ อมูลประเภทค่ าคงทีและแสดงนิพจน์ ที
     ระบบคํานวณตามลําดับความสํ าคัญของเครืองหมาย
             โจทย์ : จงเขียนโปรแกรมให้ประมวลผลสองเท่าของสมการผลบวกของเลข 2 จํานวนที
     ผูใช้ป้อนเข้าระบบ
       ้
                  ตัวอย่ างโปรแกรมที2.9กรณี ศึกษาโปรแกรมระบบงานคํานวณหาสองเท่าของผลรวม
                  เลข 2 จํานวน
#include <stdio.h>
/* calulate // cal2.c*/
main( )
{
   const char line [20] = “******************” ;
   const int n3 = 2 ; int n1, n2 ,result ;
    printf ( “* Calculate Value *nn”) ;
      printf (line) ;

                 printf (*n key number 1 = “ ; scanf (”%d” , &n1 ) ;                   ส่ วนปอนข้ อมูล
                                                                                              ้
                 Printf (“ key number 2 = “ ; scanf (”%d” , &n2 ) ;


                  Result = n1 +n2 *n3 ;                                                 ส่ วนประมวลผล

printf (“n” ) ; printf (line);

                 printf (“n %d +%d x %d =%d n” ,n1,n2,n3,result);                     ส่ วนแสดงผล
    printf (line) ; printf (“n”);
}




                                     รู ปที &.(0 ผลทดสอบโปรแกรมตัวอย่ างที &.d
อธิบาย ผลของ คําตอบผิด เพราะต้องการให้แสดงสองเท่าของผลบวกของเลข 2 จํานวน
นันคือ 2+3 ได้ 5แล้วจึงนําไปคูณกับ 2 ต้องได้ 10 มิใช่ 8 ดังนันจึงต้องแก้ไขนิพจน์เป็ น

                                Result = ( n1+n2 ) * n3 ;




                         รู ปที ;.8> ผลทดสอบโปรแกรมตัวอย่างที ;.V ทีแก้ไขนิ พจน์แล้ว


          แนวคิดในการเขียนคําสั งควบคุมการทํางาน
         1.เขียนคําสั งกําหนดชื อหน่ วยความจํา
  1.1)หน่วยความจําประเภทค่าคงที พร้อมกําหนดค่าให้เก็บในหน่วยความจํา
        const char line[20] = “**************”;
         const int n3 =2;
    1.2)หน่วยความจําประเภทตัวแปร
       int n1,n2 ,result ;
         &. พิมพ์ หัวข้ อรายงาน
                    printf("*Calculate Value * nn");
                     printf(line);
         ,. ส่ วนปอนข้ อมูล เขียนคําสั งควบคุมให้ พมพ์ ข้อความ และคําสั งควบคุมให้ ปอนข้ อมูลเข้ า
                  ้                                   ิ                             ้
ระบบ
                     printf("n key number 8 = "); scanf("%d" , &n8);
                    printf(" key number ; = "); scanf("%d" , &n;);
         .. ส่ วนประมวลผล เขียนคําสั งควบคุมประมวลผลนิพจน์ คณิตศาสตร์
                     result = n8 + n; * nA;
         0. ส่ วนแสดงผล เขียนคําสั งควบคุมการแสดงผลตัวแปร
                    printf("n %d + %d * %d = %d n" , n8, n;, nA, result);
7.3 กรณีศึกษาการใช้ คําสั งควบคุมพืนฐานดําเนินงานข้ อมูลประเภททศนิยม
       โจทย์: จงเขียนโปรแกรมควบคุมการทํางานให้สามารถรับข้อมูลชือนักศึกษาและคะแนน
เพือประมวลผลหาคะแนนร้อยละของคะแนนนัน กําหนดให้การสอบครังนีมีคะแนนเต็ม ;<B
คะแนน


#include <stdio.h>
/* file name //calculate //ca14.c */
main ( )                                                 ป้ อนข้อมูลชื อและคะแนนดิบ

{
                                                         คะแนนร้อยละจากการคํานวณ
          const char line [26] = “==========================”;
          int score ; float result ; char name [30] ;
          printf(“* calculate score * n n”);
          printf(line);

           printf(“n key student name :”); scanf(“%s” , name);
                                                                                      ส่วนป้ อนข้อมูล
           printf(“ key score :”) ; scanf(“%d” , &score);
           result = (score * 100) /250;                                               ส่วนประมวลผล
         printf(“n”); printf(line) ;
          printf(“n * percentage = %f n” , result);
          printf(line) ;                                                              ส่วนแสดงผล
          printf(“n press any key to continue”) ; scanf(“%d” , &score) ;
        printf(line) ; printf(“n”);
}


        ตัวอย่ างโปรแกรมที &.(m กรณี ศึกษาโปรแกรมระบบงานคํานวณหาร้อยละของคะแนน
                             รู ปที &.([ ผลทดสอบโปรแกรมตัวอย่ างที &.(m
แนวคิดในการเขียนคําสั งควบคุมการทํางาน
       (. ส่ วนปอนข้ อมูล เขียนคําสังควบคุมให้ผใช้ระบบป้ อนข้อมูลชือนักศึกษาและคะแนนด้วย
                ้                                ู้
คําสัง
       printf (“n key syudent name :”) ; scanf (“%s” , name);
       printf (“key score :”); scanf(“%d” , &score);

                                                                    ํ
        2. ส่ วนประมวลผล เขียนคําสังควบคุมการประมวลผลนิพจน์ตามโจทย์กาหนด
result = (score * 100) /250 ;
       ,. ส่ วนแสดงผล เขียนคําสังควบคุมการแสดงผลด้วยคําสัง
       printf(“n * percentage = %f n” , result) ;
        แนะนํา กําหนดตําแหน่งทศนิยม เขียนฟังก์ชนได้ดงนี
                                                    ั      ั
                Printf (“n * percentage = %.2f n” , result);




               รู ปที &.(^ ผลทดสอบโปรแกรมตัวอย่ างที &.(mทีแก้ไขรู ปแบบแสดงผลแล้ ว


7.4 กรณีศึกษา แสดงขันตอนการสร้ างงานโปรแกรม และชุ ดคําสั งควบคุมพืนฐาน
       จากโจทย์บทที 8 (คัดมาทบทวนเฉพาะบางส่ วนเท่านัน)
       โจทย์ : บริ ษท OK ต้องการคํานวณยอดขายเฉลียของพนักงานขายแต่ละราย และ
                    ั
กําหนดการแสดงผลทางจอภาพ ดังนี

                                           Report Average
             **************************************************************
                          Code (รหัสพนักงาน) = ………
                          Name (ชือพนักงาน)       =………..
                          Summit (ยอดขาย)        =………..
                          Number (จํานวนสิ นค้า) =……….
              **************************************************************
                                   Average (ยอดขายเฉลีย) =………
              **************************************************************
1. การวิเคราะห์ ระบบงานเบืองต้ น (หัวข้ อ (.( – (.. ให้ ไปศึกษาได้ จากบทที ()
กําหนดคุณสมบัติตัวแปร
2. ลําดับการทํางานด้ วยผังงานโปรแกรม

                                                 start



                                        พิมพ์ heading


                              ป้ อนค่า no, name, sum, num

                                   คํานวณ avg = sum/num


                                           พิมพ์ค่า avg


                                                   end

                       รู ปผังงานที &.( ผังงานจากโปรแกรมตัวอย่ างที &.((


3. คําสั งควบคุมการทํางาน
   ตัวอย่ างโปรแกรมที &.(( กรณี ศึกษาโปรแกรมระบบงาน คํานวณหายอดขายเฉลีย
#include <stdio.h>
#include <conio.h>
/* ok // summit.c */
main ( )
{
          char name [30];
          int code,sum,num;                                          ส่ วนกําหนดคุณสมบัติตวแปร
                                                                                          ั
          float avg;

         printf(“*******************n”);
         printf(“ report average n”);
         printf(“*******************nn”);

       printf(“code => ”); scanf(“%d”, &code);
       printf(“name =>”); scanf(“%s”, name);                        ส่ วนป้ อนข้อมูล
       printf(“summit =>”); scanf(“%d”, &sum);
       printf(“number =>”); scanf(“%d”, &num);
         printf(“*******************n”);
       avg = sum/num;                                               ส่ วนประมวลผล

         printf(“*********************n”);
         printf(“*******************n”);
       printf(“* average = %.2f n”, avg);                          ส่ วนแสดงผล
         printf(“n press any key to continue”) ; scanf(“%d”);
         printf(“*****************n”);
}
}




                                       ป้ อนข้อมูลเข้าระบบ


                                               ผลการคํานวณ หลังการคํานวณตามนิ พจน์




                    รู ปที &.(d ผลทดสอบโปรแกรมตัวอย่ างที &.((
แนวคิดในการเขียนคําสั งควบคุมการทํางาน
         1. วิเคราะห์ คุณสมบัติหน่ วยความจํา ด้วยการกําหนดชือตัวแปรและชนิดข้อมูล
               char name[30];
               int code, sum,num;
               float avg;
         2. ส่ วนปอนข้ อมูล เขียนคําสังควบคุมการนําข้อมูลเข้าหน่วยความจําตัวแปร
                     ้
               printf(“ code =>”); scanf(“%d”, &code);
               printf(“ name =>”); scanf(“%s”, &name);
               printf(“ summit =>”); scanf(“%d”, &sum);
               printf(“ number =>”); scanf(“%d”, &num);
         3. ส่ วนประมวลผล เขียนคําสังควบคุมการทํางานของนิพจน์
               avg = sum/num;
         4. ส่ วนแสดงผล เขียนคําสังควบคุมแสดงผลลัพธ์จากตัวแปร
               printf(“* average = % .2f n” , avg);
โจทย์ : บริ ษท Thank you ต้องการวิเคราะห์เงินคงเหลือของโครงการวิจยทีนําเสนอ กําหนด
             ั                                                     ั
แสดงผล ดังนี

                                           Report Thank you Company
                 ***************************************************************
                                 Project Name (ชือโครงการวิจย)........
                                                              ั
                                 Budget         (งบประมาณ)..............
                 ****************************************************************
                                 Maintenance (หักค่าบํารุ ง ;B%).........
                                 Public utility (หักค่าสาธารณูปโภค <%)........
                                 Remaining (เงินคงเหลือ).......

        1. การวิเคราะห์ ระบบงานเบืองต้ น
   สิ งทีต้องการ เงินหักค่าบํารุ ง ;B% เงินหักค่าสาธารณูปโภค <% และเงินคงเหลือ
   สมการคํานวณ
                1.) เงินหักค่าบํารุ ง ;B % คํานวณตามสมการดังนี
                     เงินหักค่าบํารุ ง ;B% = งบประมาณ * ;B/8BB
                2.) เงินหักค่าสาธารณูปโภค <% คํานวณตามสมการดังนี
                     เงินหักค่าสาธารณูปโภค <% = (งบประมาณ – เงินหักค่าบํารุ ง ;B %) * </8BB
3.) เงินคงเหลือ คํานวณตามสมการดังนี
                   เงินคงเหลือ = งบประมาณ – เงินหักค่าบํารุ ง ;B% - เงินหักค่าสาธารณูปโภค
                   <%
ข้อมูลนําเข้า ชื อโครงการวิจย งบประมาณ
                             ั
การแสดงผลตามโจทย์กาหนด    ํ
กําหนดคุณสมบัติตวแปร  ั

                ข้อมูล                      ชือหน่วยความจํา      ชนิดข้อมูล
                ชือโครงการวิจย   ั          Name                 กลุ่มอักขระ
                งบประมาณ                    Budget               ตัวเลขทศนิยม
                เงินหักค่าบํารุ ง 20%       Maint                ตัวเลขทศนิยม
                หักค่าสาธารณูปโภค 5%        Pub                  ตัวเลขทศนิยม
                เงินคงเหลือ                 Remain               ตัวเลขทศนิยม


ลําดับขันตอนการทํางาน action
                    1. พิมพ์หวข้อรายงาน
                               ั
                    2. ป้ อนข้อมูล ชื อโครงการวิจย name งบประมาณ budget
                                                  ั
                    3. เงินหักค่าบํารุ ง ;B% คํานวณตามสมการดังนี
                       Maint = budget * 20/100
                    4. เงินหักค่าสาธารณูปโภค 5% คํานวณตามสมการดังนี
                       pub = (budget – maint) *5/100
                    5. เงินคงเหลือ คํานวณตามสมการดังนี
                       Remain = budget – maint – pub
                    6. พิมพ์ค่า maint, pub, remain
                    7. จบการทํางาน
     2. ลําดับการทํางานด้ วยผังงานโปรแกรม
start


                                       พิมพ์ heading


                               ป้ อนค่า name,budget

                         คํานวณ maint = budget *20/100

                    คํานวณ pub = (budget - maint) *</8BB

                 คํานวณ remain = budget – maint - pub


                             พิมพ์ค่า maint,pub,remain



                                         end

                  รู ปผังงานที &.& ผังงานจากตัวอย่ างโปรแกรมที &.(&


3. คําสั งควบคุมการทํางาน
ตัวอย่ างโปรแกรมที &.(& กรณี ศึกษาโปรแกรมระบบงานคํานวณหาเงินคงเหลือของ
โครงการวิจย ั
#include <stdio.h>
/* lesson2// remain.c */
main ( )
{
          char name[40];                                                 ส่ วนกําหนดคุณสมบัติ
          float budget, maint, pub, remain ;                             ตัวแปร

          printf(“* report thank you company * nn”);
          printf(“--------------------------------n”);

          printf(“project name = ”); scanf(“%s” , name);
          printf(“n”);                                                  ส่ วนป้ อนข้อมูล
          printf(“budget = ”) ; scanf(“%f” , &budget) ;
          printf (“n”);

          maint = budget * 20/100 ;
          pub = (budget - maint) * </8BB ;                               ส่ วนประมวลผล
          remain = budget – maint – pub ;
          printf(“-------------------------n”);

          printf(“n ** maintenance = %.2f n” , maint);
          printf(“n ** public utility = %.2f n” , pub);                ส่ วนแสดงผล
          printf(“n ** remain = %.2f n” , remain);
          printf(“-----------------------------------n”);
}




                            รู ปที &.&m ผลทดสอบโปรแกรมตัวอย่ างที &.(&
แนวคิดในการเขียนคําสั งควบคุมการทํางาน
1.   วิเคราะห์ คุณสมบัติหน่ วยความจํา ด้วยการกําหนดชือตัวแปรและชนิดข้อมูล
     char name[40];
     float budget, maint, pub, remain ;
2.   ส่ วนปอนข้ อมูล เขียนคําสังควบคุมการนําข้อมูลเข้า หน่วยความจําตัวแปร
           ้
     printf(“project name = ”); scanf(“%s” , name);
     printf(“budget = ”) ; scanf(“%f” , &budget) ;
3.   ส่ วนประมวลผล เขียนคําสังควบคุมประมวลผลนิพจน์
     maint = budget * 20/100 ;
     pub = (budget - maint) * </8BB ;
     remain = budget – maint – pub ;
4.   ส่ วนแสดงผล เขียนคําสังควบคุมการแสดงผลลัพธ์จากตัวแปร
     printf(“n ** maintenance = %.2f n” , maint);
     printf(“n ** public utility = %.2f n” , pub);
     printf(“n ** remain = %.2f n” , remain);
สรุ ปเนือหา
         การเริ มต้นฝึ กทักษะเขียนคําสังควบคุมการทํางาน เพือสร้างโปรแกรมประยุกต์งานด้วย
ภาษาซี ตองเรี ยนรู ้วธีเขียนคําสังในส่ วนประกอบทัง ; ส่ วน ของโครงสร้างภาษา กล่าวคือ
         ้           ิ
         โครงสร้างส่ วนที 8 เรี ยกว่า ส่ วนหัวโปรแกรมนันใช้เขียนคําสังเหล่านี เช่น ประกาศ
ไลบรารี #include<stdio.h> เพือใช้ควบคุมการทํางานฟั งก์ชนมาตรฐานในกลุ่มนําเข้าข้อมูล กลุ่ม
                                                             ั
แสดงผลข้อมูล นอกจากนียังใช้เขียนคําสังประกาศคุณสมบัติของหน่วยความจําประเภทตัวแปร
หรื อค่าคงที ทีต้องทําภายใต้กฎเกณฑ์ทีภาษากําหนดไว้ และผูสร้างงานโปรแกรมควรจะต้อง
                                                                  ้
วิเคราะห์ได้ดวยว่าข้อมูลทีจะใช้งาน หรื อทีได้จากนิพจน์คณิ ตศาสตร์ นนเป็ นข้อมูลชนิดใด เช่น
              ้                                                       ั
ข้อมูลประเภทอักขระ (char) ข้อมูลประเภทข้อความ (string) ข้อมูลประเภทจํานวนเต็ม (int) หรื อ
ข้อมูลประเภททศนิยม (float) ทังนีการเขียนคําสังเพือกําหนดชนิ ดหน่วยความจํา อาจเลือกเขียนใน
ส่ วนฟังก์ชนหลัก main() ได้
            ั
         โครงสร้างส่ วนที ; เป็ นส่ วนฟังก์ชนหลัก หรื อ main() ใช้เขียนคําสังควบคุมการทํางาน
                                             ั
ภายใต้เครื องมือ { } ทังนีต้องเขียนตามลําดับขันตอนทีได้วเิ คราะห์และวางแผนแล้ว การเขียนคําสัง
ควบคุมการทํางานขันพืนฐานแบ่งได้เป็ น A กลุ่มคือ
         1.) คําสังควบคุมการรับข้อมูลเข้าหน่วยความจําคือ scanf, getchar(), getch(),
              getche(),gets()
         2.) คําสังควบคุมการแสดงผลทางจอภาพคือ printf, putchar(), puts() และ
         3.) คําสังควบคุมให้ประมวลผลสมการคณิ ตศาสตร์ ทีเรี ยกว่านิพจน์ ระบบจะประมวลผล
              โดยยึดหลักลําดับความสําคัญของสัญลักษณ์ตวดําเนินการ
                                                           ั
         บทนีเป็ นการฝึ กทักษะทีมีความสําคัญมาก เพราะเป็ นรากฐานในการเขียนคําสังควบคุมการ
ทํางานของคอมพิวเตอร์ ในลําดับต่อไปอีกด้วย
คําถามท้ ายบท

8. ภาษาซี มีพฒนาการจากรุ่ นแรกโดยการทํางานภายใต้ระบบอะไร
             ั
       ก. ระบบปฏิบติการ cos
                    ั                               ข. Windows
       ค. คอมไพเลอร์                                ง. ถูกทุกข้อ

;. เครื องหมายใดทีใช้เขียนแทนคําสังควบคุมการประมวลผล
          ก. ( )                                    ข. { }
          ค. ( ; )                                  ง. ,

A. เมือสิ นสุ ดคําสังงานจะต้องพิมพ์เครื องหมายใด
          ก. { }                                        ข. ( )
          ค. ( ; )                                      ง. ,

K. การจัดเก็บข้อมูลลงหน่วยความจําทังแบบค่าคงทีหรื อแบบตัวแปร เป็ นความหมายของชนิด
ข้อมูลประเภทใด
         ก. ชนิดข้อมูลแบบพืนฐาน                       ข. คําสังจัดเก็บข้อมูลแบบค่าคงที
         ค. คําสังจัดเก็บข้อมูลแบบตัวแปร              ง. ไม่มีขอมูล
                                                               ้

<. คําสัง printf () เป็ นคําสังอะไร
          ก. ชนิดข้อมูลแบบพืนฐาน                        ข. คําสังแสดงผล
          ค. คําสังประมวลผล                             ง. คําสังเก็บข้อมูล

>. คําสังรับข้อมูล จะรับข้อมูลจากส่ วนใดของคอมพิวเตอร์
         ก. เมาส์                                      ข. หน้าจอ
         ค. ซี พียู                                    ง. แป้ นพิมพ์

=. คําสัง putchar () แสดงผลข้อมูลจากหน่วยความจําของตัวแปรทางจอภาพได้ครังละกีอักขระ
          ก. 8 อักขระ                                  ข. ; อักขระ
          ค. A อักขระ                                  ง. K อักขระ
?. คําสัง put () แสดงข้อมูลเฉพาะประเภทข้อความทางจอภาพได้ครังละกีข้อความ
          ก. 8 ข้อความ                              ข. A ข้อความ
          ค. < ข้อความ                              ง. > ข้อความ

V. คําสัง gets () รับข้อมูลข้อความจากแป้ นพิมพ์มีกีรู ปแบบ
          ก. 8 รู ปแบบ                                     ข. ; รู ปแบบ
          ค. A รู ปแบบ                                     ง. < รู ปแบบ

8B. การสร้างโปรแกรมประยุกต์งานด้วยภาษาซี ตองเรี ยนรู ้สิงใด
                                          ้
        ก. การรับข้อมูล                                  ข. การวิเคราะห์ขอมูล
                                                                         ้
        ค. การเขียนคําสัง                                ง. การประมวลผล
เฉลย
1.    ตอบ    ก
2.    ตอบ    ข
3.    ตอบ    ค
4.    ตอบ    ก
5.    ตอบ    ข
6.    ตอบ    ง
7.    ตอบ    ก
8.    ตอบ    ก
9.    ตอบ    ข
10.   ตอบ    ค

More Related Content

What's hot

การใช้งานเบื้องต้น Adobe photoshop cs5
การใช้งานเบื้องต้น Adobe photoshop cs5การใช้งานเบื้องต้น Adobe photoshop cs5
การใช้งานเบื้องต้น Adobe photoshop cs5Rattapadol Gunhakoon
 
พื้นฐาน Adobe Flash CS3 ตอนที่1
พื้นฐาน Adobe Flash CS3 ตอนที่1พื้นฐาน Adobe Flash CS3 ตอนที่1
พื้นฐาน Adobe Flash CS3 ตอนที่1Thanawat Boontan
 
ใบความรู้ที่ 2.3 รู้จักภาษาhtml
ใบความรู้ที่ 2.3 รู้จักภาษาhtmlใบความรู้ที่ 2.3 รู้จักภาษาhtml
ใบความรู้ที่ 2.3 รู้จักภาษาhtmlSamorn Tara
 
Authorware
AuthorwareAuthorware
Authorwarepui3327
 
ใบความรู้ที่1
ใบความรู้ที่1ใบความรู้ที่1
ใบความรู้ที่1krupick
 
งานนำเสนอ(เริ่มต้นกับAuthorware)
งานนำเสนอ(เริ่มต้นกับAuthorware)งานนำเสนอ(เริ่มต้นกับAuthorware)
งานนำเสนอ(เริ่มต้นกับAuthorware)Anekphongtupan
 
แนะนำโปรแกรม Macromedia authorware 7.0
แนะนำโปรแกรม Macromedia authorware 7.0 แนะนำโปรแกรม Macromedia authorware 7.0
แนะนำโปรแกรม Macromedia authorware 7.0 pom_2555
 
คู่มือMicrosoftword2010
คู่มือMicrosoftword2010คู่มือMicrosoftword2010
คู่มือMicrosoftword2010noismart
 
โปรแกรมคอมพิวเตอร
โปรแกรมคอมพิวเตอรโปรแกรมคอมพิวเตอร
โปรแกรมคอมพิวเตอรTay Atcharawan
 
รู้จักโปรแกรม Adobe Photoshop CS6
รู้จักโปรแกรม Adobe Photoshop CS6รู้จักโปรแกรม Adobe Photoshop CS6
รู้จักโปรแกรม Adobe Photoshop CS6Khon Kaen University
 
การสร้างสื่อสิ่งพิมพ์และ Interactive Magazine Indesign CS6
การสร้างสื่อสิ่งพิมพ์และ Interactive Magazine Indesign  CS6  การสร้างสื่อสิ่งพิมพ์และ Interactive Magazine Indesign  CS6
การสร้างสื่อสิ่งพิมพ์และ Interactive Magazine Indesign CS6 Nattapong Manlee
 
Java Programming [10/12]: Java Applet
Java Programming [10/12]: Java AppletJava Programming [10/12]: Java Applet
Java Programming [10/12]: Java AppletIMC Institute
 
การจัดการเว็บเพจ การออกแบบหน้าด้วยตารางและ Layout
การจัดการเว็บเพจ การออกแบบหน้าด้วยตารางและ Layoutการจัดการเว็บเพจ การออกแบบหน้าด้วยตารางและ Layout
การจัดการเว็บเพจ การออกแบบหน้าด้วยตารางและ LayoutKhon Kaen University
 
การสร้างบทเรียน Cai ด้วย Flash
การสร้างบทเรียน Cai ด้วย Flashการสร้างบทเรียน Cai ด้วย Flash
การสร้างบทเรียน Cai ด้วย Flashmathawee wattana
 
ความรู้พื้นฐานเกี่ยวกับโปรแกรม Adobe FlashCS5
ความรู้พื้นฐานเกี่ยวกับโปรแกรม  Adobe  FlashCS5ความรู้พื้นฐานเกี่ยวกับโปรแกรม  Adobe  FlashCS5
ความรู้พื้นฐานเกี่ยวกับโปรแกรม Adobe FlashCS5kroorat
 

What's hot (20)

การใช้งานเบื้องต้น Adobe photoshop cs5
การใช้งานเบื้องต้น Adobe photoshop cs5การใช้งานเบื้องต้น Adobe photoshop cs5
การใช้งานเบื้องต้น Adobe photoshop cs5
 
พื้นฐาน Adobe Flash CS3 ตอนที่1
พื้นฐาน Adobe Flash CS3 ตอนที่1พื้นฐาน Adobe Flash CS3 ตอนที่1
พื้นฐาน Adobe Flash CS3 ตอนที่1
 
บทที่ 6
บทที่ 6บทที่ 6
บทที่ 6
 
ใบความรู้ที่ 2.3 รู้จักภาษาhtml
ใบความรู้ที่ 2.3 รู้จักภาษาhtmlใบความรู้ที่ 2.3 รู้จักภาษาhtml
ใบความรู้ที่ 2.3 รู้จักภาษาhtml
 
ใบงาน1ประมวลผลคำ
ใบงาน1ประมวลผลคำใบงาน1ประมวลผลคำ
ใบงาน1ประมวลผลคำ
 
Pbl2
Pbl2Pbl2
Pbl2
 
Authorware
AuthorwareAuthorware
Authorware
 
ใบความรู้ที่1
ใบความรู้ที่1ใบความรู้ที่1
ใบความรู้ที่1
 
งานนำเสนอ(เริ่มต้นกับAuthorware)
งานนำเสนอ(เริ่มต้นกับAuthorware)งานนำเสนอ(เริ่มต้นกับAuthorware)
งานนำเสนอ(เริ่มต้นกับAuthorware)
 
แนะนำโปรแกรม Macromedia authorware 7.0
แนะนำโปรแกรม Macromedia authorware 7.0 แนะนำโปรแกรม Macromedia authorware 7.0
แนะนำโปรแกรม Macromedia authorware 7.0
 
คู่มือMicrosoftword2010
คู่มือMicrosoftword2010คู่มือMicrosoftword2010
คู่มือMicrosoftword2010
 
คู่มือFlash
คู่มือFlashคู่มือFlash
คู่มือFlash
 
โปรแกรมคอมพิวเตอร
โปรแกรมคอมพิวเตอรโปรแกรมคอมพิวเตอร
โปรแกรมคอมพิวเตอร
 
รู้จักโปรแกรม Adobe Photoshop CS6
รู้จักโปรแกรม Adobe Photoshop CS6รู้จักโปรแกรม Adobe Photoshop CS6
รู้จักโปรแกรม Adobe Photoshop CS6
 
การสร้างสื่อสิ่งพิมพ์และ Interactive Magazine Indesign CS6
การสร้างสื่อสิ่งพิมพ์และ Interactive Magazine Indesign  CS6  การสร้างสื่อสิ่งพิมพ์และ Interactive Magazine Indesign  CS6
การสร้างสื่อสิ่งพิมพ์และ Interactive Magazine Indesign CS6
 
Java Programming [10/12]: Java Applet
Java Programming [10/12]: Java AppletJava Programming [10/12]: Java Applet
Java Programming [10/12]: Java Applet
 
Photoshop cs3
Photoshop cs3Photoshop cs3
Photoshop cs3
 
การจัดการเว็บเพจ การออกแบบหน้าด้วยตารางและ Layout
การจัดการเว็บเพจ การออกแบบหน้าด้วยตารางและ Layoutการจัดการเว็บเพจ การออกแบบหน้าด้วยตารางและ Layout
การจัดการเว็บเพจ การออกแบบหน้าด้วยตารางและ Layout
 
การสร้างบทเรียน Cai ด้วย Flash
การสร้างบทเรียน Cai ด้วย Flashการสร้างบทเรียน Cai ด้วย Flash
การสร้างบทเรียน Cai ด้วย Flash
 
ความรู้พื้นฐานเกี่ยวกับโปรแกรม Adobe FlashCS5
ความรู้พื้นฐานเกี่ยวกับโปรแกรม  Adobe  FlashCS5ความรู้พื้นฐานเกี่ยวกับโปรแกรม  Adobe  FlashCS5
ความรู้พื้นฐานเกี่ยวกับโปรแกรม Adobe FlashCS5
 

Similar to การเขียนคำสั่งควบคุมขั้นพื้นฐาน

การพัฒนาโปรแกรม วิชญา
การพัฒนาโปรแกรม วิชญาการพัฒนาโปรแกรม วิชญา
การพัฒนาโปรแกรม วิชญาwinewic199
 
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2winewic199
 
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2winewic199
 
หน่วยการเรียนรู้ที่ 1
หน่วยการเรียนรู้ที่ 1หน่วยการเรียนรู้ที่ 1
หน่วยการเรียนรู้ที่ 1SubLt Masu
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอมPassawan' Koohar
 
การเขียนคำสั่งข้อมูลขั้นพื้นฐาน
การเขียนคำสั่งข้อมูลขั้นพื้นฐานการเขียนคำสั่งข้อมูลขั้นพื้นฐาน
การเขียนคำสั่งข้อมูลขั้นพื้นฐานRatchanok Nutyimyong
 
โปรแกรม
โปรแกรมโปรแกรม
โปรแกรมthanapon51105
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาAeew Autaporn
 
โปรแกรมคอมพิวเตอร์
โปรแกรมคอมพิวเตอร์โปรแกรมคอมพิวเตอร์
โปรแกรมคอมพิวเตอร์Sarocha Makranit
 
โครงงานคอม 5
โครงงานคอม 5โครงงานคอม 5
โครงงานคอม 5wipawanmmiiww
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1HamHam' Kc
 
การเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุมการเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุมBaramee Chomphoo
 

Similar to การเขียนคำสั่งควบคุมขั้นพื้นฐาน (20)

การพัฒนาโปรแกรม วิชญา
การพัฒนาโปรแกรม วิชญาการพัฒนาโปรแกรม วิชญา
การพัฒนาโปรแกรม วิชญา
 
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
 
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
 
กำเนิดภาษาซี
กำเนิดภาษาซีกำเนิดภาษาซี
กำเนิดภาษาซี
 
หน่วยการเรียนรู้ที่ 1
หน่วยการเรียนรู้ที่ 1หน่วยการเรียนรู้ที่ 1
หน่วยการเรียนรู้ที่ 1
 
บทที่ 1
บทที่ 1บทที่ 1
บทที่ 1
 
บทที่ 1
บทที่ 1บทที่ 1
บทที่ 1
 
งานนำเสนอ
งานนำเสนองานนำเสนอ
งานนำเสนอ
 
งาน #1
งาน #1งาน #1
งาน #1
 
ภาษาซี
ภาษาซีภาษาซี
ภาษาซี
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอม
 
การเขียนคำสั่งข้อมูลขั้นพื้นฐาน
การเขียนคำสั่งข้อมูลขั้นพื้นฐานการเขียนคำสั่งข้อมูลขั้นพื้นฐาน
การเขียนคำสั่งข้อมูลขั้นพื้นฐาน
 
โปรแกรม
โปรแกรมโปรแกรม
โปรแกรม
 
Pbl2
Pbl2Pbl2
Pbl2
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวา
 
โปรแกรมคอมพิวเตอร์
โปรแกรมคอมพิวเตอร์โปรแกรมคอมพิวเตอร์
โปรแกรมคอมพิวเตอร์
 
Pbl 2
Pbl 2Pbl 2
Pbl 2
 
โครงงานคอม 5
โครงงานคอม 5โครงงานคอม 5
โครงงานคอม 5
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1
 
การเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุมการเขียนคำสั่งควบคุม
การเขียนคำสั่งควบคุม
 

More from KEk YourJust'one

งานย่อยภาณุพงศ์
งานย่อยภาณุพงศ์งานย่อยภาณุพงศ์
งานย่อยภาณุพงศ์KEk YourJust'one
 
งานย่อยที่ 1 การแข่งขัน
งานย่อยที่ 1 การแข่งขันงานย่อยที่ 1 การแข่งขัน
งานย่อยที่ 1 การแข่งขันKEk YourJust'one
 
อ.ทรงศักดิ์งานกลุ่ม
อ.ทรงศักดิ์งานกลุ่มอ.ทรงศักดิ์งานกลุ่ม
อ.ทรงศักดิ์งานกลุ่มKEk YourJust'one
 
การเขียนคำสั่งควบคุมมีทางเลือก
การเขียนคำสั่งควบคุมมีทางเลือกการเขียนคำสั่งควบคุมมีทางเลือก
การเขียนคำสั่งควบคุมมีทางเลือกKEk YourJust'one
 
การเขียนคำสั่งควบคุมแบบมีทางเลือก กลุ่ม 3
การเขียนคำสั่งควบคุมแบบมีทางเลือก กลุ่ม 3การเขียนคำสั่งควบคุมแบบมีทางเลือก กลุ่ม 3
การเขียนคำสั่งควบคุมแบบมีทางเลือก กลุ่ม 3KEk YourJust'one
 
Canon เรียกคืนกล้อง PowerShot S100
Canon เรียกคืนกล้อง PowerShot S100Canon เรียกคืนกล้อง PowerShot S100
Canon เรียกคืนกล้อง PowerShot S100KEk YourJust'one
 

More from KEk YourJust'one (8)

งานย่อยภาณุพงศ์
งานย่อยภาณุพงศ์งานย่อยภาณุพงศ์
งานย่อยภาณุพงศ์
 
งานย่อย 6
งานย่อย 6งานย่อย 6
งานย่อย 6
 
งานย่อย1
งานย่อย1งานย่อย1
งานย่อย1
 
งานย่อยที่ 1 การแข่งขัน
งานย่อยที่ 1 การแข่งขันงานย่อยที่ 1 การแข่งขัน
งานย่อยที่ 1 การแข่งขัน
 
อ.ทรงศักดิ์งานกลุ่ม
อ.ทรงศักดิ์งานกลุ่มอ.ทรงศักดิ์งานกลุ่ม
อ.ทรงศักดิ์งานกลุ่ม
 
การเขียนคำสั่งควบคุมมีทางเลือก
การเขียนคำสั่งควบคุมมีทางเลือกการเขียนคำสั่งควบคุมมีทางเลือก
การเขียนคำสั่งควบคุมมีทางเลือก
 
การเขียนคำสั่งควบคุมแบบมีทางเลือก กลุ่ม 3
การเขียนคำสั่งควบคุมแบบมีทางเลือก กลุ่ม 3การเขียนคำสั่งควบคุมแบบมีทางเลือก กลุ่ม 3
การเขียนคำสั่งควบคุมแบบมีทางเลือก กลุ่ม 3
 
Canon เรียกคืนกล้อง PowerShot S100
Canon เรียกคืนกล้อง PowerShot S100Canon เรียกคืนกล้อง PowerShot S100
Canon เรียกคืนกล้อง PowerShot S100
 

การเขียนคำสั่งควบคุมขั้นพื้นฐาน

  • 1. รายงาน วิชา การเขียนโปรแกรมเพืองานอาชีพ เรือง การเขียนคําสั งควบคุมขันพืนฐาน จัดทําโดย นายณัฐนันท์ วันเพ็ญ เลขที & นายกุลธวัช จันทร์ อมรสิ นธุ์ เลขที &( นางสาวกนิษฐา เนตรสว่ าง เลขที ,( นางสาวทิพย์ วรรณ เชือวงษ์ เลขที ,& นางสาวมนัสนันต์ ทับทิมใส เลขที ,. นางสาวสุ กานดา เฉินจุณวรรณ เลขที ,0 ชันมัธยมศึกษาปี ที 3/, เสนอ อาจารย์ ทรงศักดิ5 โพธิ5เอียม ภาคเรียนที ( ปี การศึกษา &000 โรงเรียนเฉลิมพระเกียรติสมเด็จพระศรีนครินทร์ กาญจนบุรี
  • 2. รายงาน วิชา การเขียนโปรแกรมเพืองานอาชีพ เรือง การเขียนคําสั งควบคุมขันพืนฐาน จัดทําโดย นายณัฐนันท์ วันเพ็ญ เลขที & นายกุลธวัช จันทร์ อมรสิ นธุ์ เลขที &( นางสาวกนิษฐา เนตรสว่ าง เลขที ,( นางสาวทิพย์ วรรณ เชือวงษ์ เลขที ,& นางสาวมนัสนันต์ ทับทิมใส เลขที ,. นางสาวสุ กานดา เฉินจุณวรรณ เลขที ,0 ชันมัธยมศึกษาปี ที 3/, เสนอ อาจารย์ ทรงศักดิ5 โพธิ5เอียม ภาคเรียนที ( ปี การศึกษา &000 โรงเรียนเฉลิมพระเกียรติสมเด็จพระศรีนครินทร์ กาญจนบุรี
  • 3. คํานํา รายงานเล่มนีเป็ นส่ วนหนึงของวิชา การเขียนโปรแกรมเพืองานอาชีพ ซึ งฝึ กให้ทุกคนได้มี ความรู ้ความสามารถด้านคอมพิวเตอร์ ในการใช้ภาษาซี เพือไปประกอบอาชีพ รายงานเล่มนีจะ ประกอบไปด้วย ลักษณะการทํางานของภาษาซี ความเป็ นมา คําสังควบคุมการทํางานขันพืนฐาน และต่างๆ ซึ งได้ถูกจัดทําขึนเพือเป็ นความรู ้แก่ผอ่านไม่มากก็นอย ทําให้เข้าใจมากยิงขึนเกียวกับ ู้ ้ โปรแกรมนี ถ้าผิดพลาดประการใดก็ขออภัย ณ ทีนีด้วย จัดทําโดย นายณัฐนันท์ วันเพ็ญ นายกุลธวัช จันทร์ อมรสิ นธุ์ นางสาวกนิษฐา เนตรสว่าง นางสาวทิพย์วรรณ เชือวงษ์ นางสาวมนัสนันต์ ทับทิมใส นางสาวสุ กานดา เฉิ นจุณวรรณ
  • 4. สารบัญ เรือง หน้ า คํานํา ก ลักษณะการทํางานของภาษาซี 8-2 ส่ วนประกอบโครงสร้างของภาษาซี ;-< คําสังจัดเก็บข้อมูลลงหน่วยความจํา <-= คําสังควบคุมการทํางานขันพืนฐาน =-88 คําสังแสดงผล – รับข้อมูล เฉพาะอักขระ 88-8> คําสังแสดงผล- รับข้อมูล เฉพาะข้อความ 8>-8? กรณี ศึกษาการใช้คาสังควบคุมขันพืนฐาน ํ 8?-AB สรุ ปเนื อหา A8 Mind Maping 32 คําถามท้ายบท AA-AK เฉลย A<
  • 5. การเขียนคําสั งควบคุมขันพืนฐาน& 1. ลักษณะการทํางานของภาษาซี ภาษาซี เป็ นภาษาทีมีพฒนาการมาอย่างต่อเนือง ภาษาซี รุ่นแรกทํางานภายใต้ ั ระบบปฏิบติการคอส (cos) ปั จจุบนทํางานภายใต้ระบบปฏิบติการวินโดวส์ (Windows) ภาษาซี ใช้ ั ั ั วิธีแปลรหัสคําสังให้เป็ นเลขฐานสองเรี ยกว่า คอมไพเลอร์ การศึกษาภูมิหลังการเป็ นมาของภาษาซี และกระบวนการแปลภาษาจะช่วยให้ผใช้ภาษาซี ในรุ่ นและบริ ษทผูผลิตแตกต่างกัน ู้ ั ้ สามารถใช้ ภาษาได้อย่างเข้าใจมากขึน (.( ความเป็ นมาของภาษาซี ภาษาซี ได้รับการพัฒนาเมือปี ค.ศ. 8V=; โดยนายเดนนิส ริ ตซี ตังชื อว่าซี เพราะพัฒนามา จากภาษา BCLP และภาษา B ในช่วงแรกใช้ทดลองเขียนคําสังควบคุมในห้องปฏิบติการเบล( Bell ั Laboratoories) เท่านัน เมือปี ค.ศ. 8V=? นายไบรอัน เคอร์ นิกฮัน และนายเดนนิส ริ ตซี ร่ วมกัน กําหนดนิยามรายละเอียดของภาษาซี เผยแพร่ ความรู ้โดยจัดทําหนังสื อ The C Programming Language มีหลายบริ ษทให้ความสนใจนําไปพัฒนาต่อ จนมีภาษาซี หลายรู ปแบบและแพร่ หลายไป ั ทัวโลก แต่ยงไม่มีมาตรฐานคําสังเพือให้สามารถใช้งานร่ วมกันได้ ดังนันเมือปี ค.ศ. 8V?? นายริ ตซี ั ได้ร่วมกับสถาบันกําหนดมาตรฐาน ANSI สร้างมาตรฐานภาษาซี ขึนมา มีผลให้ โปรแกรมคําสังที สร้างด้วยภาษาซี สังกัดบริ ษทใดๆ ก็ตามทีใช้คาสังมาตรฐานของภาษาสามารถนํามาทํางานร่ วมกัน ั ํ ได้ 1.2 การทํางานของคอมไพเลอร์ ภาษาซี คอมไพเลอร์ เป็ นโปรแกรมทีได้รับการพัฒนามาเพือแปลภาษาคอมพิวเตอร์ รูปแบบหนึง ั มักใช้กบโปรแกรมเชิงโครงสร้าง ลักษณะการแปลจะอ่านรหัสคําสังทังโปรแกรมตังแต่บรรทัด คําสังแรกถึงบรรทัดสุ ดท้าย หากมีขอผิดพลาดจะรายงานทุกตําแหน่งคําสังทีใช้งานผิดกฎไวยากรณ์ ้ ของภาษา กระบวนการคอมไพล์โปรแกรมคําสังของภาษาซี มีดงนี ั 1. จัดทําโปรแกรมต้ นฉบับ (Source Program) หลักจากพิมพ์คาสังงาน ตามโครงสร้าง ํ ภาษาทีสมบูรณ์แล้วทุกส่ วนประกอบ ให้บนทึกโดยกําหนดชนิ ดงานเป็ น .c เช่น ั work.c
  • 6. รู ปที &.( แสดงโปรแกรมต้ นฉบับภาษาซี รู ปที &.& การบันทึกกําหนดชนิดเป็ น .C 2. การแปลรหัสคําสั งเป็ นภาษาเครือง (Compile) หรื อการบิวด์ (Build) เครื องจะ ่ ตรวจสอบคําสังทีละคําสัง เพือวิเคราะห์วาใช้งานได้ถูกต้องตามรู ปแบบไวยากรณ์ที ํ ภาษาซี กาหนดไว้หรื อไม่หากมีขอผิดพลาดจะแจ้งให้ทราบ หากไม่มีขอผิดพลาดจะ ้ ้ ไปกระบวนการ A 3. การเชื อมโยงโปรแกรม( Link) ภาษาซี มีฟังก์ชนมาตรฐานให้ใช้งาน เช่น printf () ซึ ง ั จัดเก็บไว้ในเฮดเดอร์ ไพล์ หรื อเรี ยกว่า ไลบรารี ในตําแหน่งทีกําหนดชื อแตกต่างกัน ้ ้ ั ไป ผูใช้ตองศึกษาและเรี ยกใช้เฮดเดอร์ ไฟล์กบฟังก์ชนให้สัมพันธ์ เรี ยกว่าเชื อมโยงกับ ั ไลบรารี กระบวนการนีได้ผลลัพธ์เป็ นไฟล์ชนิด exe รู ปที &., แสดงกระบวนการแปลรหัสคําสั งของภาษาซี 2. ส่ วนประกอบโครงสร้ างภาษาซี สําหรับโครงสร้างของภาษาซี ในเบืองต้นนีจะกล่าวถึงเฉพาะรายละเอียดทีนําไปใช้ในการ เขียนคําสังควบคุมระดับพืนฐาน ผูสร้างงานโปรแกรมจะใช้งานส่ วนประกอบในภาษาซี ้ เพียง ; ส่ วน คือ ส่ วนหัวและส่ วนฟังก์ชนหลัก ดังนี ั
  • 7. # include < header file > 1 Main ( ) { Statements ; 2 } รู ปที &.. แสดงส่ วนประกอบในโครงสร้ างภาษาซี &.( ส่ วนหัวของโปรแกรม (Header File) หรื อเรี ยกว่าฟรี โปรเซสเซอร์ ไดเรกทีฟ ใช้ระบุชือเฮดเดอร์ ไฟล์ ควบคุมการทํางานของฟังก์ชน ั มาตรฐานทีถูกเรี ยกใช้งานในส่ วนของ main ( ) เฮดเดอร์ ไฟล์มีชนิ ดเป็ น.h จัดเก็บในไลบรารี ั ั ่ ฟังก์ชน ผูเ้ ขียนคําสังงานต้องศึกษาว่าฟังก์ชนทีใช้งานนันอยูในเฮดเดอร์ ไฟล์ชืออะไร จึงจะเรี ยกใช้ งานได้ถูกต้อง นิยมใช้รูปแบบคําสัง ดังนี รู ปแบบ # include < header_name> อธิบาย header_name ชือเฮดเดอร์ ไฟล์ทีควบคุมฟังก์ชนมาตรฐาน เช่น ฟังก์ชน printf ใช้ควบคุม ั ั การแสดงผล จัดเก็บในไลบรารี ชือ #include <stdio.h> ตัวอย่ างคําสั ง ประกาศฟรี โปรเซสเซอร์ ไดเรกทีฟ ทีใช้ควบคุมฟังก์ชนมาตรฐานภาษาซี ั # include <stdio.h> อธิบาย ให้คอมไพเลอร์ คนหาไลบรารี ไฟล์ชือ stdio.h จากไดเรกเทอรี include ้ ข้ อควรจํา #include <stdio.h>เก็บฟังก์ชนรับข้อมูลแสดงผลทีต้องใช้งานทุกโปรแกรม ั ดังนัน ส่ วนดันทุกโปรแกรมจึงปรากฏคําสังนี
  • 8. รู ปที &.0 แสดงตําแหน่ งไฟล์ stdio.h ในไดเรกทอรี include 2.2 ส่ วนฟังก์ ชันหลัก (Main Function) เป็ นส่ วนเขียนคําสังควบคุมการทํางานภายในขอบเขตเครื องหมาย { }ของฟังก์ชนหลักคือ main ั ( ) ต้องเขียนคําสังตามลําดับขันตอนจากกระบวนการวิเคราะห์ระบบงานเบืองต้นและขัน วางแผนลําดับการทํางานทีได้จดทําล่วงหน้าไว้ เช่น ลําดับการทํางานด้วยแผนผังโปรแกรม ั เพือลดข้อผิดพลาดในขันตอนลําดับคําสังควบคุมงาน ในส่ วนนีพึงระมัดระวังเรื องเดียวคือ ต้อง ใช้งานคําสังตามรู ปแบบไวยากรณ์ของภาษาซี ทีกําหนดไว้ 2.3 การพิมพ์ คําสั งควบคุมงานในโครงสร้ างภาษาซี คําแนะนําในการพิมพ์คาสังงาน ซึ งภาษาซี รียกว่า ฟังก์ชน (ต่อไปนีจะเรี ยกว่า คําสัง ตามทีนิยม ํ ั ทัวไป) ในส่ วนประกอบภายในโครงสร้างภาษาซี มีแนวทางปฏิบติดงนี ั ั 1. คําสังทีใช้ควบคุมการประมวลผลตามลําดับทีได้วเิ คราะห์ไว้ ต้องเขียนภายในเครื องหมาย ่ {}ทีอยูภายใต้การควบคุมของ ฟังก์ชนหลักชือ main () ั 2. ปกติคาสังควบคุมงานจะเป็ นอักษรตัวพิมพ์เล็ก ยกเว้นบางคําสังทีภาษากําหนดว่าต้องเป็ น ํ อักษรตัวพิมพ์ใหญ่ ต้องปฏิบติตามนัน เพราะภาษาซี มีความแตกต่างในเรื องตัวอักษร ั 3. เมือสิ นสุ ดคําสังงาน ต้องพิมพ์เครื องหมายเซมิโคลอน (;)
  • 9. 4. ใน 1 บรรทัด พิมพ์ได้มากกว่า 1 คําสัง แต่นิยมบรรทัดละ 1 คําสัง เพราะว่าอ่านโปรแกรม ง่ายเมือมีขอผิดพลาด ย่อมตรวจสอบและค้นหาเพือแก้ไขได้เร็ ว ้ 5. การพิมพ์คาสัง หากมีส่วนย่อย นิยมเคาะเยืองเข้าไป เพืออ่านโปรแกรมได้ง่ายขึน เมือมี ํ ข้อผิดพลาดย่อมตรวจสอบและค้นหาเพือแก้ไขได้รวดเร็ ว รู ปที &.3 แสดงลักษณะการพิมพ์ คาสั งในโครงสร้ างภาษาซี ํ 3. คําสั งจัดเก็บข้ อมูลลงหน่ วยความจํา (1) การจัดเก็บข้อมูลลงหน่วยความจําคอมพิวเตอร์ ภาษากําหนดให้ดาเนินการผ่านซื อ ํ ้ํ (identifier) ทีผูสร้างงานโปรแกรมเป็ นผูกาหนดเอง ระบบคอมพิวเตอร์ จะจัดเก็บชือและ ้ ตําแหน่งทีอยู่ (Address ) ในหน่วยความจํา เพืออ้างอิงนําข้อมูลทีจัดเก็บนันมาใช้งาน การ ํ กําหนดชือทีใช้เก็บข้อมูลต้องทําภายใต้กฎเกณฑ์ และต้องศึกษาวิธีกาหนดลักษณะการ จัดเก็บข้อมูลตามทีภาษากําหนดไว้ ลักษณะการจัดเก็บข้อมูลมี 2 แบบคือ แบบค่าคงทีและ แบบตัวแปร ทังนีก่อนทีจะเขียนคําสังกําหนดการจัดเก็บข้อมูล ควรมีความรู ้ในเรื องชนิด ข้อมูลก่อน ,.( ชนิดข้ อมูลแบบพืนฐาน การจัดเก็บข้อมูลลงหน่วยความจําทังแบค่าคงทีหรื อแบบตัวแปร ต้องกําหนดชนิ ดข้อมูลให้ ระบบรับทราบ ในทีนีกล่าวถึงชนิดข้อมูลแบบพืนฐาน 3 กลุ่มหลักเท่านัน ตารางที 2.1 ชนิดข้อมูลแบบพืนฐาน ชนิดข้อมูล ขอบเขตของข้อมูล อธิบาย char -128ถึง 8;= เก็บข้อมูลแบบอักขระ int -A;=>?ถึง A;=>= เก็บข้อมูลแบบตัวเลขจํานวน เต็ม float A.Kx8B ถึงA.Kx10 เก็บข้อมูลแบบตัวเลขทศนิยม ตัวเลขหลังจุด >หลัก
  • 10. ข้ อควรจํา ข้อมูลแบบข้อความใช้แบบข้อมูลแบบตัวแปรชุ ด เช่น char a [20] : หมายเหตุ ตารางแสดงชนิดข้อมูลของภาษาซีทุกชนิดแสดงในภาคผนวก ,.& คําสั งจัดเก็บข้ อมูลแบบค่ าคงที ประสิ ทธิภาพคําสั ง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจําไม่สามารถเปลียนแปลงได้ รู ปแบบ Const data_type var = data ; อธิบาย data_type คือทีชนิ ดข้อมูลแบบพืนฐาน Var คือชือหน่วยความจําทีผูใช้ตองกําหนดตามกฎการตังชื อ ้ ้ Data คือข้อมูลทีกําหนดเป็ นค่าคงที ตัวอย่ างคําสั ง จัดเก็บข้อมูลแบบค่าคงที Const float pi = 3.14 ; Const char ans = ‘n ‘ ; ข้อควรจํา char words [9] = “ computer” Const ข้ อควรจํา ่ กรณี ขอมูลมี 1 อักขระ กําหนดให้อยูใน ‘ ‘ (single quotation) ้ ่ กรณี ขอมูลมีมากกว่า 1 อักขระ กําหนดให้อยูใน “ ” (double ้ quotation) ้ ่ กรณี ขอมูลเป็ นชนิดตัวเลขใช้ในการคํานวณไม่ตองอยูใน ‘’ หรื อ “ ” ้ ,., คําสั งจัดเก็บข้ อมูลแบบตัวแปร ประสิ ทธิ ภาพคําสัง : ลักษณะการจัดเก็บข้อมูลในหน่วยความจําสามารถเปลียนแปลงได้ var_type var_name[,….]; รู ปแบบ 1 รู ปแบบ 2 var_type var_name = data ; อธิ บาย var_type คือหน่วยชนิดข้อมูลแบบพืนฐาน
  • 11. var name คือชือหน่วยความจํา ทีผูใช้ตองกําหนดตามกฎการตังชื อ ้ ้ data คือข้อมูลทีกําหนดเป็ นค่าเริ มต้น (อาจมีหรื อไม่ก็ได้) หมายเหตุ หากมีตวแปรมากกว่า 1 ตัว แต่เป็ นตัวแปรเก็บข้อมูลประเภทเดียว ใช้คอมม่า (,) ั คัน ตัวอย่ างคําสั ง กําหนดคุณสมบัติให้ตวแปรในการจัดเก็บข้อมูล ั Char ans ; List salary , bonus ; Short value = 2; 4. คําสั งควบคุมการทํางานขันพืนฐาน คําสังทีใช้ควบคุมการทํางานขันพืนฐานมี 3 กลุ่มคือ คําสังรับข้อมูลจากแป้ นพิมพ์แล้ว นําไปจัดเก็บหน่ายความจํา (input ) การเขียนสมการคํานวณโดยใช้นิพจน์ทางคณิ ตศาสตร์ (Process) และคําสังแสดงผลข้อมูล หรื อข้อมูลทีจัดเก็บในหน่วยความจํา (Qutput ) ..( คําสั งแสดงผล : printf ( ) ประสิ ทธิภาพคําสั ง : ใช้แสดงผล สิ งต่อไปนี เช่น ข้อความ ข้อมูลจากค่าคงที หรื อตัวแปร ทีจอภาพ รู ปแบบ 1 Printf (“ string_format” , data_list ) ; รู ปแบบ 2 Printf (“string_format” ) ; อธิบาย string_format คือลักษณะของสิ งต่อไปนี เช่น ข้อความ (text ) รหัสรู ปแบบ ข้อมูล เช่น %d รหัสควบคุม เช่นn Data_list คือข้อมูลแสดงผลอาจเป็ นค่าคงที ตัวแปร นิพจน์ หากมีหลายตัว ใช้ , คัน
  • 12. ตารางที 2.2 รหัสรู ปแบบข้อมูลระดับพืนฐาน รหัส format code ความหมาย %c ั ใช้กบข้อมูลแบบ char %d ั ใช้กบข้อมูลแบบ int เฉพาะฐาน10 %s ั ใช้กบข้อมูลแบบ string หมายเหตุ รหัสรู ปแบบข้อมูลรู ปแบบ แสดงในภาคผนวก ตัวอย่ างคําสั ง ควบคุมการแสดงผลด้วย printf Printf ( “ Data is %d n ” , score ) ; อธิบาย พิมพ์ขอความคําว่า data is ตามด้วยค่าข้อมูลในหน่วยความจําตัวแปรชื อ score ซึ ง ้ เป็ นข้อมูลชนิ ดจํานวนเต็ม (%) แล้วเลือนคอร์ เซอร์ ไปไว้บรรทัดถัดไป (n) ..& คําสั งรับข้ อมูล : รับข้อมูลจากแป้ นพิมพ์ แล้วจัดเก็บลงหน่วยความจําของตัวแปร รู ปแบบ Scanf ( “ string_format” , & address_list ) ; อธิบาย string_format คือรู ปแบบการแสดงผลของข้อมูลเท่านัน เช่น %d Address_list ่ คือการระบุตาแหน่งทีอยูในหน่วยความจําต้องใช้สัญลักษณ์& ํ (Ampersand) นําหน้าชื อตัวแปรเสมอ ข้ อควรจํา กรณี เป็ นตัวแปรข้อความ (String) สามารถยกเว้นไม่ตองใช้ & นําหน้าได้ ้ ตัวอย่ างคําสั ง เขียนคําสังควบคุมการรับค่าจากแป้ นพิมพ์ดวย scanf ้ Scanf ( “%d ” , &score ) ; อธิบาย รับข้อมูลจากแป้ นพิมพ์ นําไปเก็บในหน่วยความจําชือ score เป็ นข้อมูลประเภท จํานวนเต็ม
  • 13. .., คําสั งประมวลผล : expression ประสิ ทธิภาพคําสั ง : เขียนคําสังแบบนิพจน์เพือประมวลผล แล้วนําข้อมูลทีได้ไปจัดเก็บ ในหน่วยความจําของตัวแปรทีต้องกําหนดชือและชนิดข้อมูลไว้แล้ว รู ปแบบ Var = expression ; อธิบาย var คือชือหน่วยความจําชนิดตัวแปร Expression คือสมการนิพจน์ เช่น สู ตรคํานวณทางคณิ ตศาสตร์ ตัวอย่ างคําสั ง นิพจน์ทีเป็ นสู ตรคํานวณทางคณิ ตศาสตร์ Sum = a+b ; อธิบาย ให้นาค่าในหน่วยความจําตัวแปรชือ a กับ b มา+กันแล้วนําค่าไปเก็บใน ํ หน่วยความจําตัวแปรชือ sum ตารางที 2.3 สั ญลักษณ์ ตัวดําเนินการคณิตศาสตร์ ตารางที2.4 ลําดับการคํานวณตัวดําเนินการคณิตศาสตร์ หมายเหตุ : หากลําดับเท่ ากันให้ คํานวณ ตัวอย่ างโปรแกรมที 2.1 เขียนคําสังควบคุมให้ประมวลผลนิพจน์คณิ ตศาสตร์
  • 14. #include <stdio . h > /*file name // project_loop // operator3. C */ Main ( ) { Int x ,y,r,s,t,; Printf (“t arithmetic operator n”); Printf (“-------------------------n”); Printf ( “ Data x=” ) ; scanf (“%d” , &x ) ; ปอนข้ อมูลเข้ าระบบ ้ Printf ( “ Data x=” ) ; scanf(“%d” , &y) ; Printf (“n”); R=x+y *2; ประมวลผลตามนิพจน์ คณิตศาสตร์ S = (x+y) *;; T = x+y *2-1 ; Printf ( “R=x+y *2 = %d n” , r ) ; Printf ( “R= (x+y) *;= %d n” , s ) ; แสดงผลข้ อมูลทีจัดเก็บในตัวแปร Printf ( “R= x+y *2-1 = %d n” , t) ; Printf (“-------------------------n”); } รู ปที &.[ ผลทดสอบโปรแกรมตัวอย่ างที &.( แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1. ส่ วนปอนข้ อมูล ผูใช้ระบบงานป้ อนค่า ; เก็บในหน่วยความจํา x และป้ อนค่า A เก็บใน ้ ้ หน่วยความจํา y ด้วยคําสัง Printf ( “data x=” ) ; scanf ( “%d ,&x ) ; Printf ( “data y=” ) ; scanf ( “%d ,&y ) ; &.ส่ วนประมวลผล ระบบจะนําค่าไปประมวลผลตามนิ พจน์คณิ ตศาสตร์ r = 2 + 3 * 2 ; ได้คาตอบคือ ? ํ
  • 15. s = (; + A ) * ; ; ได้คาตอบคือ 8B ํ t = 2 + 3 * 2-1 ; ได้คาตอบคือ 7 ํ ทังนีคอมพิวเตอร์ ประมวลผล โดยยึดหลักลําดับความสําคัญของเครื องหมายทางคณิ ตศาสตร์ เช่น คํานวณเครื องหมาย * ก่อนเครื องหมาย + ,.ส่ วนแสดงผล คําสังควบคุมให้แสดงผลลัพธ์ Printf ( “r = x + y * 2 = %d n” , r ) ; Printf ( “r = (x + y X* 2 = %d n” , s ) ; Printf ( “r = x + y * 2-1 = %d n” , t ) ; 5.คําสั งแสดงผล-รับข้ อมูล เฉพาะอักขระ ภาษาซี มีคาสังแสดงผลและรับข้อมูลเฉพาะข้อมูลประเภท 8 อักขระ (char )ดังนี ํ 5.1 คําสัง putchar ( ) <.; คําสัง getchar ( ) <.A คําสัง getch ( ) <.K คําสัง getche ( ) 5.1 คําสั ง putchar ( ) แสดงผลข้อมูลจากหน่วยความจําของตัวแปร ทางจอภาพครังละ1อักขระเท่านัน รู ปแบบ Putchar ( char_argument) ; อธิบาย putchar_argument คือ ข้อมูลชนิดอักขระ ตัวอย่ างโปรแกรมที 2.2 แสดงประสิ ทธิ ภาพคําสัง putchar ( ) #include <stdio.h> /*// exput 1// exput.c*/ main( ) { Char word1 =’A’ ,word2 = ‘1’ ; printf ( “t * Test putchar ( ) command * n” ); printf (“ ***********************************n” ); printf ( “ Display 2 character = “ ) ; putchar ( word1) ; putchar ( word1) ; printf (“n”); printf (“***************************n”); }
  • 16. รู ปที &.^ ผลทดสอบโปรแกรมตัวอย่ างที &.& แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1. กําหนดค่ า ‘A’ เก็บในตัวแปรประเภท char ชื อ word1 และกําหนดค่า ‘1’ เก็บในตัวแปรชื อ word2 ด้วยคําสัง char word1=’A’ , word2=’1’ 2. เขียนคําสั งควบคุมการแสดงผลทีละ 1 อักขระโดยไม่ตองใช้สัญลักษณ์ขึนบรรทัดใหม่ดวย ้ ้ คําสัง putchar(word1); putcar(word2); จึงพิมพ์คาว่า A1 ทีจอภาพ ํ 5.2คําสั ง getchar ( ) รับข้อมูลจากแป้ นพิมพ์ครังละ 1 อักขระ และแสดงอักขระทีจอภาพ จากนันต้องกด แป้ นพิมพ์ที Enter เพือนําข้อมูลบันทึกลงหน่วยความจําด้วย รู ปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร ํ getchar ( ) ; รู ปแบบ 2 นําข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร char_var = getchar ( ) ; อธิบาย char_var คือ ข้อมูลชนิด char ตัวอย่ างโปรแกรมที 2.3 แสดงประสิ ทธิภาพคําสั ง getchar ( )
  • 17. #include <stdio.h> /*// getchar//getchar.c*/ main( ) { Char word1; printf ( “t * Test getchar ( ) command * n” ); printf (“ ***********************************n” ); printf( “Key 1 Character = “ ); Word = getchar ( ) ; printf (“n”); printf( You key Character is = %c n”, word) ; printf (“***************************n”); } รู ปที &.d ผลทดสอบโปรแกรมตัวอย่ างที &., แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1.เขียนคําสั งควบคุมการปอนข้ อมูลประเภทอักขระด้ วยคําสั ง ้ printf ( “Key 1 Character = “ ) ; word = getchar ( ); หมายถึงป้ อนอักขระ 1 ตัว เช่น a จะแสดงค่า ให้เห็นทีหน้าจอด้วย แล้ว ต้องกดแป้ น Enter เพือนําข้อมูลบันทึกลงหน่วยความจําตัวแปรประเภท char ชือ word 2 . เขียนคําสั งควบคุมการแสดงผลจากหน่ วยความจํา word จึงเห็นค่ า a ( แทนที word) printf ( “You key Character is = %cn”, word ) ;
  • 18. 5.3 คําสั ง getch ( ) รับข้อมูลจากแป้ นพิมพ์ครังละ 1 อักขระ แต่ ไม่ปรากฏ อักษรบนจอภาพ และ ไม่ตอง ้ กดแป้ น Enter รู ปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร ํ getch( ) ; รู ปแบบ 2 นําข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร char_var = getch 1( ) ; อธิบาย char_var คือ ข้อมูลชนิดอักขระ ตัวอย่ างโปรแกรมที 2.4 แสดงประสิ ทธิภาพคําสั ง getch ( ) #include <stdio.h> /*// getch//getch.c*/ main( ) { Char word; printf ( “t * Test getch ( ) command * n” ); printf (“ ***********************************n” ); printf( “Key 1 Character = “ ); word = getch( ); printf (“n”); printf( You key Character is = %c n”, word) ; printf (“***************************n”); } แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1.เขียนคําสั งควบคุมการปอนข้ อมูลประเภทอักขระด้ วยคําสั ง ้ printf ( “Key 1 Character = “ ) ; word = getch ( ); หมายถึงป้ อนค่าใดทางแป้ นพิมพ์เป็ นอักขระ 1 ตัว เช่น a จะ ไม่แสดง ค่าให้เห็นทีหน้าจอ ไม่ตอง กดแป้ น Enter เพือนําข้อมูลบันทึกลงหน่วยความจําตัวแปรประเภท char ชือ word ้
  • 19. 2.เขียนคําสั งควบคุมการแสดงผลจากหน่ วยความจํา word จึงเห็นค่ า a ( แทนทีword ) printf ( “You key Character is = %cn”, word ) ; 5.4 คําสั ง getche( ) รับข้อมูลจากแป้ นพิมพ์ครังละ 1 อักขระ และ แสดง อักษรบนจอภาพ และ ไม่ตอง กด ้ แป้ น Enter รู ปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร ํ getche ( ); รู ปแบบ 2 นําข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร char_var = getche ( ); อธิบาย char_var คือ ข้อมูลชนิดอักขระ ตัวอย่ างโปรแกรมที 2.5 แสดงประสิ ทธิภาพคําสั ง getche ( ) #include <stdio.h> #include <conio.h> /*// getch//getche.c*/ main( ) { Char word; printf ( “t * Test getche ( ) command * n” ); printf (“ ***********************************n” ); printf( “Key 1 Character = “ ); word = getche ( ) ; printf (“n”); printf( You key Character is = %c n”, word) ; printf (“***************************n”); } รู ปที &.(( ผลทดสอบโปรแกรมตัวอย่ างที &.0
  • 20. แนวคิดในการเขียนคําสั งควบคมการทํางาน 1.เขียนคําสั งควบคุมการปอนข้ อมูลประเภทอักขระด้ วยคําสั ง ้ printf ( “Key 1 Character = “ ) ; word = getche ( ); หมายถึงป้ อนค่าใดทางแป้ นพิมพ์เป็ นอักขระ 1 ตัว เช่น a จะ แสดง ค่าให้เห็นทีหน้าจอ และ ไม่ตอง กดแป้ น Enter เพือนําข้อมูลบันทึกลงหน่วยความจําตัวแปรประเภท char ชือ word ้ 2.เขียนคําสั งควบคุมการแสดงผลเพือแสดงค่ าจากหน่ วยความจํา word จึงเห็นค่ า a ( แทนทิword ) printf ( “You key Character is = %cn”, word ) ; 6.คําสั งแสดงผล-รับข้ อมูล เฉพาะข้ อความ ภาษาซี มีคาสังใช้ในการรับข้อมูลเฉพาะประเภทข้อความ (String) ในภาษาซี คือ ํ ชนิดข้อมูล char [n] จัดเก็บในหน่วยความจํา และแสดงผลข้อมูลประเภทข้อความเท่านัน มี รายละเอียดดังนี 6.1.คําสัง puts( ) 6.2.คําสัง gets( ) 6.1.คําสั ง puts( ) แสดงผลข้อมูลเฉพาะประเภทข้อความทางจอภาพครังละ 1 ข้อความ รู ปแบบ puts ( string_argument ) ; อธิบาย string_argument คือ ข้อมูลชนิดข้อความ ตัวอย่ างโปรแกรมที2.6 แสดงประสิ ทธิภาพคําสั ง puts ( ) #include <stdio.h> #include <conio.h> /*// puts//puts.c*/ main ( ) { char word [15] = “*Example * “ ; puts(word) ; puts(“**************”) ; }
  • 21. รู ปที &.(& ผลทดสอบโปรแกรมตัวอย่ างที &.3 แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1.เขียนคําสั งกําหนดค่ าข้ อความเก็บในตัวแปรชื อ word Char word [15] = “*Example * “ ; 2.เขียนคําสั งควบคุมการแสดงผลในลักษณะข้ อความด้ วย puts Puts ( word ) ; Puts (“**************”); 6.2คําสั ง gets ( ) รับข้อมูล ข้อความ จากแป้ นพิมพ์ และต้องกดแป้ น Enter รู ปแบบ 1 ไม่นาข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร ํ gets ( ); รู ปแบบ 2 นําข้อมูลจัดเก็บลงหน่วยความจําของตัวแปร string_var =gets ( ) ; อธิบาย string_var คือ ข้อมูลชนิดข้อความ ตัวอย่ างโปรแกรมที2.7 แสดงประสิ ทธิภาพคําสั ง gets ( )
  • 22. #include <stdio.h> /* gets.c */ main( ) { Char word[40]; printf ( “t * Test gets ( ) command * n” ); printf (“ ***********************************n” ); printf( “Key your name = “ ); gets (word) ; printf (“n”); printf( “You name is %s n”, word) ; printf (“***************************n”); } รู ปที &.(, ผลทดสอบโปรแกรมตัวอย่ างที &.[ แนวคิดในการเขียนคําสั งควบคมการทํางาน 1.เขียนคําสั งให้ รับข้ อมูล ชนิดข้ อความ จากแปนพิมพ์ และต้อง กดแป้ น Enter เพือนํา ้ ข้อความบันทึกลงตัวแปรชนิ ดข้อความ ด้วยคําสัง gets (word) ; 2.เขียนคําสั งควบคุมให้ แสดงผลลักษณะข้ อความด้ วย printf ( “You name is = %sn”, word ) ; 7.กรณีศึกษาการใช้ คําสั งควบคุมขันพืนฐาน 7.1กรณีศึกษาการใช้ คําสั งควบคุมพืนฐาน ดําเนินงานข้ อมูลประเภทตัวแปร โจทย์ : จงเขียนโปนแกรมให้ประมวลผลหาผลรวมเลข 2 จํานวนตามทีผูใช้ป้อนเข้าระบบ ้ ตัวอย่ างโปรแกรมที2.8กรณีศึกษาระบบงานคํานวณหาผลรวมเลข 2 จํานวน
  • 23. #include <stdio.h> /* calulate // call.c*/ main( ) { int n1 ,n2 ,result ; printf ( “*Calulate Add * nn “ ); Printf (“Key number 1 = “) ; scanf (“%d “ ,& n1); ส่ วนปอนข้ อมูล ้ Printf (“Key number 2 = “) ; scanf (“%d “ ,& n2); Rusule = n1+n2 ; ส่ วนประมวลผล Printf(“n ** Result = %d n” , result) ; ส่ วนแสดงผล } รู ปที &.(. ผลทดสอบโปรแกรมตัวอย่ างที &.^ แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1.ประกาศพรีดปรเซสเซอร์ ไดเรกทีฟ #include <stdio.h>ระบุไลบรารี ควบคุมคําสัง 2.เขียนหมายเหตุ (remark) เช่ น /* calculate// cal1.c*/ชือแฟ้ มงานทีจัดเก็บโปรแกรมนี 3.กําหนดชื อหน่ วยความจํา ประเภทตัวแปรและชนิ ดข้อมูลทีจัดเก็บในทีนีคือ int n1,n2,result;(ตัวแปร3ตัว คือ n1,n2และresult เก็บค่าจํานวนเต็ม) 4.พิมพ์ หัวข้ อรายงานของโปรแกรมระบบงานนี เช่ น printf(“*calculate Add*nn*);n คือ เลือนเคอร์ เซอร์ ขึนบรรทัดใหม่ 5.ส่ วนปอนข้ อมูลเข้ าระบบ เขียนคําสังควบคุม printf (“key number 1 =”) ; scanf(“%d” ้ ,&n1); ผลลัพธ์ คือ key number 1 =(ป้ อนข้อมูลตัวเลขจํานวนเต็ม) 6.ส่ วนเขียนนิพจน์ เพือประมวลผลสมการ เช่น result= n1+n2;(นําค่าในตัวแปร n1 กับ n2 บวกกัน แล้วเก็บในตัวแปรชื อ result
  • 24. 7.ส่ วนแสดงผล ทีเก็บไว้ในตัวแปรจากนิพจน์ เช่น printf (“n**Result =%dn” ,result); (เลือนเคอร์ เซอร์ ขึนบรรทัดใหม่แล้วพิมพ์ ** Result = ตามด้วยค่า result ทีเป็ นเลขจํานวนเต็ม %d แล้วเลือนเคอร์ เซอร์ ขึนบรรทัดใหม่) 7.2 กรณีศึกษาใช้ คําสั งควบคุมพืนฐาน ดําเนินงานข้ อมูลประเภทค่ าคงทีและแสดงนิพจน์ ที ระบบคํานวณตามลําดับความสํ าคัญของเครืองหมาย โจทย์ : จงเขียนโปรแกรมให้ประมวลผลสองเท่าของสมการผลบวกของเลข 2 จํานวนที ผูใช้ป้อนเข้าระบบ ้ ตัวอย่ างโปรแกรมที2.9กรณี ศึกษาโปรแกรมระบบงานคํานวณหาสองเท่าของผลรวม เลข 2 จํานวน #include <stdio.h> /* calulate // cal2.c*/ main( ) { const char line [20] = “******************” ; const int n3 = 2 ; int n1, n2 ,result ; printf ( “* Calculate Value *nn”) ; printf (line) ; printf (*n key number 1 = “ ; scanf (”%d” , &n1 ) ; ส่ วนปอนข้ อมูล ้ Printf (“ key number 2 = “ ; scanf (”%d” , &n2 ) ; Result = n1 +n2 *n3 ; ส่ วนประมวลผล printf (“n” ) ; printf (line); printf (“n %d +%d x %d =%d n” ,n1,n2,n3,result); ส่ วนแสดงผล printf (line) ; printf (“n”); } รู ปที &.(0 ผลทดสอบโปรแกรมตัวอย่ างที &.d
  • 25. อธิบาย ผลของ คําตอบผิด เพราะต้องการให้แสดงสองเท่าของผลบวกของเลข 2 จํานวน นันคือ 2+3 ได้ 5แล้วจึงนําไปคูณกับ 2 ต้องได้ 10 มิใช่ 8 ดังนันจึงต้องแก้ไขนิพจน์เป็ น Result = ( n1+n2 ) * n3 ; รู ปที ;.8> ผลทดสอบโปรแกรมตัวอย่างที ;.V ทีแก้ไขนิ พจน์แล้ว แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1.เขียนคําสั งกําหนดชื อหน่ วยความจํา 1.1)หน่วยความจําประเภทค่าคงที พร้อมกําหนดค่าให้เก็บในหน่วยความจํา const char line[20] = “**************”; const int n3 =2; 1.2)หน่วยความจําประเภทตัวแปร int n1,n2 ,result ; &. พิมพ์ หัวข้ อรายงาน printf("*Calculate Value * nn"); printf(line); ,. ส่ วนปอนข้ อมูล เขียนคําสั งควบคุมให้ พมพ์ ข้อความ และคําสั งควบคุมให้ ปอนข้ อมูลเข้ า ้ ิ ้ ระบบ printf("n key number 8 = "); scanf("%d" , &n8); printf(" key number ; = "); scanf("%d" , &n;); .. ส่ วนประมวลผล เขียนคําสั งควบคุมประมวลผลนิพจน์ คณิตศาสตร์ result = n8 + n; * nA; 0. ส่ วนแสดงผล เขียนคําสั งควบคุมการแสดงผลตัวแปร printf("n %d + %d * %d = %d n" , n8, n;, nA, result);
  • 26. 7.3 กรณีศึกษาการใช้ คําสั งควบคุมพืนฐานดําเนินงานข้ อมูลประเภททศนิยม โจทย์: จงเขียนโปรแกรมควบคุมการทํางานให้สามารถรับข้อมูลชือนักศึกษาและคะแนน เพือประมวลผลหาคะแนนร้อยละของคะแนนนัน กําหนดให้การสอบครังนีมีคะแนนเต็ม ;<B คะแนน #include <stdio.h> /* file name //calculate //ca14.c */ main ( ) ป้ อนข้อมูลชื อและคะแนนดิบ { คะแนนร้อยละจากการคํานวณ const char line [26] = “==========================”; int score ; float result ; char name [30] ; printf(“* calculate score * n n”); printf(line); printf(“n key student name :”); scanf(“%s” , name); ส่วนป้ อนข้อมูล printf(“ key score :”) ; scanf(“%d” , &score); result = (score * 100) /250; ส่วนประมวลผล printf(“n”); printf(line) ; printf(“n * percentage = %f n” , result); printf(line) ; ส่วนแสดงผล printf(“n press any key to continue”) ; scanf(“%d” , &score) ; printf(line) ; printf(“n”); } ตัวอย่ างโปรแกรมที &.(m กรณี ศึกษาโปรแกรมระบบงานคํานวณหาร้อยละของคะแนน รู ปที &.([ ผลทดสอบโปรแกรมตัวอย่ างที &.(m แนวคิดในการเขียนคําสั งควบคุมการทํางาน (. ส่ วนปอนข้ อมูล เขียนคําสังควบคุมให้ผใช้ระบบป้ อนข้อมูลชือนักศึกษาและคะแนนด้วย ้ ู้ คําสัง printf (“n key syudent name :”) ; scanf (“%s” , name); printf (“key score :”); scanf(“%d” , &score); ํ 2. ส่ วนประมวลผล เขียนคําสังควบคุมการประมวลผลนิพจน์ตามโจทย์กาหนด
  • 27. result = (score * 100) /250 ; ,. ส่ วนแสดงผล เขียนคําสังควบคุมการแสดงผลด้วยคําสัง printf(“n * percentage = %f n” , result) ; แนะนํา กําหนดตําแหน่งทศนิยม เขียนฟังก์ชนได้ดงนี ั ั Printf (“n * percentage = %.2f n” , result); รู ปที &.(^ ผลทดสอบโปรแกรมตัวอย่ างที &.(mทีแก้ไขรู ปแบบแสดงผลแล้ ว 7.4 กรณีศึกษา แสดงขันตอนการสร้ างงานโปรแกรม และชุ ดคําสั งควบคุมพืนฐาน จากโจทย์บทที 8 (คัดมาทบทวนเฉพาะบางส่ วนเท่านัน) โจทย์ : บริ ษท OK ต้องการคํานวณยอดขายเฉลียของพนักงานขายแต่ละราย และ ั กําหนดการแสดงผลทางจอภาพ ดังนี Report Average ************************************************************** Code (รหัสพนักงาน) = ……… Name (ชือพนักงาน) =……….. Summit (ยอดขาย) =……….. Number (จํานวนสิ นค้า) =………. ************************************************************** Average (ยอดขายเฉลีย) =……… **************************************************************
  • 28. 1. การวิเคราะห์ ระบบงานเบืองต้ น (หัวข้ อ (.( – (.. ให้ ไปศึกษาได้ จากบทที () กําหนดคุณสมบัติตัวแปร 2. ลําดับการทํางานด้ วยผังงานโปรแกรม start พิมพ์ heading ป้ อนค่า no, name, sum, num คํานวณ avg = sum/num พิมพ์ค่า avg end รู ปผังงานที &.( ผังงานจากโปรแกรมตัวอย่ างที &.(( 3. คําสั งควบคุมการทํางาน ตัวอย่ างโปรแกรมที &.(( กรณี ศึกษาโปรแกรมระบบงาน คํานวณหายอดขายเฉลีย
  • 29. #include <stdio.h> #include <conio.h> /* ok // summit.c */ main ( ) { char name [30]; int code,sum,num; ส่ วนกําหนดคุณสมบัติตวแปร ั float avg; printf(“*******************n”); printf(“ report average n”); printf(“*******************nn”); printf(“code => ”); scanf(“%d”, &code); printf(“name =>”); scanf(“%s”, name); ส่ วนป้ อนข้อมูล printf(“summit =>”); scanf(“%d”, &sum); printf(“number =>”); scanf(“%d”, &num); printf(“*******************n”); avg = sum/num; ส่ วนประมวลผล printf(“*********************n”); printf(“*******************n”); printf(“* average = %.2f n”, avg); ส่ วนแสดงผล printf(“n press any key to continue”) ; scanf(“%d”); printf(“*****************n”); } } ป้ อนข้อมูลเข้าระบบ ผลการคํานวณ หลังการคํานวณตามนิ พจน์ รู ปที &.(d ผลทดสอบโปรแกรมตัวอย่ างที &.((
  • 30. แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1. วิเคราะห์ คุณสมบัติหน่ วยความจํา ด้วยการกําหนดชือตัวแปรและชนิดข้อมูล char name[30]; int code, sum,num; float avg; 2. ส่ วนปอนข้ อมูล เขียนคําสังควบคุมการนําข้อมูลเข้าหน่วยความจําตัวแปร ้ printf(“ code =>”); scanf(“%d”, &code); printf(“ name =>”); scanf(“%s”, &name); printf(“ summit =>”); scanf(“%d”, &sum); printf(“ number =>”); scanf(“%d”, &num); 3. ส่ วนประมวลผล เขียนคําสังควบคุมการทํางานของนิพจน์ avg = sum/num; 4. ส่ วนแสดงผล เขียนคําสังควบคุมแสดงผลลัพธ์จากตัวแปร printf(“* average = % .2f n” , avg); โจทย์ : บริ ษท Thank you ต้องการวิเคราะห์เงินคงเหลือของโครงการวิจยทีนําเสนอ กําหนด ั ั แสดงผล ดังนี Report Thank you Company *************************************************************** Project Name (ชือโครงการวิจย)........ ั Budget (งบประมาณ).............. **************************************************************** Maintenance (หักค่าบํารุ ง ;B%)......... Public utility (หักค่าสาธารณูปโภค <%)........ Remaining (เงินคงเหลือ)....... 1. การวิเคราะห์ ระบบงานเบืองต้ น สิ งทีต้องการ เงินหักค่าบํารุ ง ;B% เงินหักค่าสาธารณูปโภค <% และเงินคงเหลือ สมการคํานวณ 1.) เงินหักค่าบํารุ ง ;B % คํานวณตามสมการดังนี เงินหักค่าบํารุ ง ;B% = งบประมาณ * ;B/8BB 2.) เงินหักค่าสาธารณูปโภค <% คํานวณตามสมการดังนี เงินหักค่าสาธารณูปโภค <% = (งบประมาณ – เงินหักค่าบํารุ ง ;B %) * </8BB
  • 31. 3.) เงินคงเหลือ คํานวณตามสมการดังนี เงินคงเหลือ = งบประมาณ – เงินหักค่าบํารุ ง ;B% - เงินหักค่าสาธารณูปโภค <% ข้อมูลนําเข้า ชื อโครงการวิจย งบประมาณ ั การแสดงผลตามโจทย์กาหนด ํ กําหนดคุณสมบัติตวแปร ั ข้อมูล ชือหน่วยความจํา ชนิดข้อมูล ชือโครงการวิจย ั Name กลุ่มอักขระ งบประมาณ Budget ตัวเลขทศนิยม เงินหักค่าบํารุ ง 20% Maint ตัวเลขทศนิยม หักค่าสาธารณูปโภค 5% Pub ตัวเลขทศนิยม เงินคงเหลือ Remain ตัวเลขทศนิยม ลําดับขันตอนการทํางาน action 1. พิมพ์หวข้อรายงาน ั 2. ป้ อนข้อมูล ชื อโครงการวิจย name งบประมาณ budget ั 3. เงินหักค่าบํารุ ง ;B% คํานวณตามสมการดังนี Maint = budget * 20/100 4. เงินหักค่าสาธารณูปโภค 5% คํานวณตามสมการดังนี pub = (budget – maint) *5/100 5. เงินคงเหลือ คํานวณตามสมการดังนี Remain = budget – maint – pub 6. พิมพ์ค่า maint, pub, remain 7. จบการทํางาน 2. ลําดับการทํางานด้ วยผังงานโปรแกรม
  • 32. start พิมพ์ heading ป้ อนค่า name,budget คํานวณ maint = budget *20/100 คํานวณ pub = (budget - maint) *</8BB คํานวณ remain = budget – maint - pub พิมพ์ค่า maint,pub,remain end รู ปผังงานที &.& ผังงานจากตัวอย่ างโปรแกรมที &.(& 3. คําสั งควบคุมการทํางาน ตัวอย่ างโปรแกรมที &.(& กรณี ศึกษาโปรแกรมระบบงานคํานวณหาเงินคงเหลือของ โครงการวิจย ั
  • 33. #include <stdio.h> /* lesson2// remain.c */ main ( ) { char name[40]; ส่ วนกําหนดคุณสมบัติ float budget, maint, pub, remain ; ตัวแปร printf(“* report thank you company * nn”); printf(“--------------------------------n”); printf(“project name = ”); scanf(“%s” , name); printf(“n”); ส่ วนป้ อนข้อมูล printf(“budget = ”) ; scanf(“%f” , &budget) ; printf (“n”); maint = budget * 20/100 ; pub = (budget - maint) * </8BB ; ส่ วนประมวลผล remain = budget – maint – pub ; printf(“-------------------------n”); printf(“n ** maintenance = %.2f n” , maint); printf(“n ** public utility = %.2f n” , pub); ส่ วนแสดงผล printf(“n ** remain = %.2f n” , remain); printf(“-----------------------------------n”); } รู ปที &.&m ผลทดสอบโปรแกรมตัวอย่ างที &.(&
  • 34. แนวคิดในการเขียนคําสั งควบคุมการทํางาน 1. วิเคราะห์ คุณสมบัติหน่ วยความจํา ด้วยการกําหนดชือตัวแปรและชนิดข้อมูล char name[40]; float budget, maint, pub, remain ; 2. ส่ วนปอนข้ อมูล เขียนคําสังควบคุมการนําข้อมูลเข้า หน่วยความจําตัวแปร ้ printf(“project name = ”); scanf(“%s” , name); printf(“budget = ”) ; scanf(“%f” , &budget) ; 3. ส่ วนประมวลผล เขียนคําสังควบคุมประมวลผลนิพจน์ maint = budget * 20/100 ; pub = (budget - maint) * </8BB ; remain = budget – maint – pub ; 4. ส่ วนแสดงผล เขียนคําสังควบคุมการแสดงผลลัพธ์จากตัวแปร printf(“n ** maintenance = %.2f n” , maint); printf(“n ** public utility = %.2f n” , pub); printf(“n ** remain = %.2f n” , remain);
  • 35. สรุ ปเนือหา การเริ มต้นฝึ กทักษะเขียนคําสังควบคุมการทํางาน เพือสร้างโปรแกรมประยุกต์งานด้วย ภาษาซี ตองเรี ยนรู ้วธีเขียนคําสังในส่ วนประกอบทัง ; ส่ วน ของโครงสร้างภาษา กล่าวคือ ้ ิ โครงสร้างส่ วนที 8 เรี ยกว่า ส่ วนหัวโปรแกรมนันใช้เขียนคําสังเหล่านี เช่น ประกาศ ไลบรารี #include<stdio.h> เพือใช้ควบคุมการทํางานฟั งก์ชนมาตรฐานในกลุ่มนําเข้าข้อมูล กลุ่ม ั แสดงผลข้อมูล นอกจากนียังใช้เขียนคําสังประกาศคุณสมบัติของหน่วยความจําประเภทตัวแปร หรื อค่าคงที ทีต้องทําภายใต้กฎเกณฑ์ทีภาษากําหนดไว้ และผูสร้างงานโปรแกรมควรจะต้อง ้ วิเคราะห์ได้ดวยว่าข้อมูลทีจะใช้งาน หรื อทีได้จากนิพจน์คณิ ตศาสตร์ นนเป็ นข้อมูลชนิดใด เช่น ้ ั ข้อมูลประเภทอักขระ (char) ข้อมูลประเภทข้อความ (string) ข้อมูลประเภทจํานวนเต็ม (int) หรื อ ข้อมูลประเภททศนิยม (float) ทังนีการเขียนคําสังเพือกําหนดชนิ ดหน่วยความจํา อาจเลือกเขียนใน ส่ วนฟังก์ชนหลัก main() ได้ ั โครงสร้างส่ วนที ; เป็ นส่ วนฟังก์ชนหลัก หรื อ main() ใช้เขียนคําสังควบคุมการทํางาน ั ภายใต้เครื องมือ { } ทังนีต้องเขียนตามลําดับขันตอนทีได้วเิ คราะห์และวางแผนแล้ว การเขียนคําสัง ควบคุมการทํางานขันพืนฐานแบ่งได้เป็ น A กลุ่มคือ 1.) คําสังควบคุมการรับข้อมูลเข้าหน่วยความจําคือ scanf, getchar(), getch(), getche(),gets() 2.) คําสังควบคุมการแสดงผลทางจอภาพคือ printf, putchar(), puts() และ 3.) คําสังควบคุมให้ประมวลผลสมการคณิ ตศาสตร์ ทีเรี ยกว่านิพจน์ ระบบจะประมวลผล โดยยึดหลักลําดับความสําคัญของสัญลักษณ์ตวดําเนินการ ั บทนีเป็ นการฝึ กทักษะทีมีความสําคัญมาก เพราะเป็ นรากฐานในการเขียนคําสังควบคุมการ ทํางานของคอมพิวเตอร์ ในลําดับต่อไปอีกด้วย
  • 36.
  • 37. คําถามท้ ายบท 8. ภาษาซี มีพฒนาการจากรุ่ นแรกโดยการทํางานภายใต้ระบบอะไร ั ก. ระบบปฏิบติการ cos ั ข. Windows ค. คอมไพเลอร์ ง. ถูกทุกข้อ ;. เครื องหมายใดทีใช้เขียนแทนคําสังควบคุมการประมวลผล ก. ( ) ข. { } ค. ( ; ) ง. , A. เมือสิ นสุ ดคําสังงานจะต้องพิมพ์เครื องหมายใด ก. { } ข. ( ) ค. ( ; ) ง. , K. การจัดเก็บข้อมูลลงหน่วยความจําทังแบบค่าคงทีหรื อแบบตัวแปร เป็ นความหมายของชนิด ข้อมูลประเภทใด ก. ชนิดข้อมูลแบบพืนฐาน ข. คําสังจัดเก็บข้อมูลแบบค่าคงที ค. คําสังจัดเก็บข้อมูลแบบตัวแปร ง. ไม่มีขอมูล ้ <. คําสัง printf () เป็ นคําสังอะไร ก. ชนิดข้อมูลแบบพืนฐาน ข. คําสังแสดงผล ค. คําสังประมวลผล ง. คําสังเก็บข้อมูล >. คําสังรับข้อมูล จะรับข้อมูลจากส่ วนใดของคอมพิวเตอร์ ก. เมาส์ ข. หน้าจอ ค. ซี พียู ง. แป้ นพิมพ์ =. คําสัง putchar () แสดงผลข้อมูลจากหน่วยความจําของตัวแปรทางจอภาพได้ครังละกีอักขระ ก. 8 อักขระ ข. ; อักขระ ค. A อักขระ ง. K อักขระ
  • 38. ?. คําสัง put () แสดงข้อมูลเฉพาะประเภทข้อความทางจอภาพได้ครังละกีข้อความ ก. 8 ข้อความ ข. A ข้อความ ค. < ข้อความ ง. > ข้อความ V. คําสัง gets () รับข้อมูลข้อความจากแป้ นพิมพ์มีกีรู ปแบบ ก. 8 รู ปแบบ ข. ; รู ปแบบ ค. A รู ปแบบ ง. < รู ปแบบ 8B. การสร้างโปรแกรมประยุกต์งานด้วยภาษาซี ตองเรี ยนรู ้สิงใด ้ ก. การรับข้อมูล ข. การวิเคราะห์ขอมูล ้ ค. การเขียนคําสัง ง. การประมวลผล
  • 39. เฉลย 1. ตอบ ก 2. ตอบ ข 3. ตอบ ค 4. ตอบ ก 5. ตอบ ข 6. ตอบ ง 7. ตอบ ก 8. ตอบ ก 9. ตอบ ข 10. ตอบ ค