วันอังคารที่ 21 กุมภาพันธ์ พ.ศ. 2560

สรุปบทที่ 5

สรุปบทที่ 5 ฟังก์ชันการรับและแสดงผลและฟังก์ชันทางคณิตศาสตร์


การรับและแสดงผลข้อมูล (เฮดเดอร์ไฟล์ stdio.h)
    ฟังก์ชันที่ใช้รับและแสดงผลข้อมูลที่ประกาศไว้ในเฮดเดอร์ไฟล์ stdio.h ประกอบด้วย ฟังก์ชันด้วยกันคือ getchar( ), putchar( ), scanf( ), printf( ), gets( ) และ puts( )


 ฟังก์ชัน getchar( )
    ฟังก์ชัน getchar( ) เป็นหนึ่งในฟังชันที่บรรจุอยู่ในไลบรารีมาตรฐาน I/O โดย จะรีเทิร์นค่าอักขระหนึ่งตัวที่ถูกอินพุตเข้ามา ทั้งนี้ตัวอักขระที่ป้อนเข้ามาจะแสดงบนจอภาพและจะต้องยืนยันการป้อนข้อมูล ด้วยการเคาะแป้น Enterหนึ่งครั้ง กรณีป้อนตัวอักขระหลายๆตัว จะมีเพียวตัวแรกเท่านั้นที่ถูกนำไปใช้งาน หรือจัดเก็บไว้ในตัวแปร และเนื่องจากฟังก์ชัน getchar( ) ไม่ต้องการค่าอาร์กิวเมนต์ใดๆ  ดังนั้นจึงสามารถใส่วงเล็บว่างเปล่าได้

รูปแบบ : character_variable = getchar ( ) ;   
ตัวอย่างเช่น : getchar ( ) ;
*ในกรณีที่ต้องการนำค่าที่ป้อน จัดเก็บไว้ในค่าตัวแปร ก็จะเขียนในรูปแบบดังนี้ คือ
char  ch1 ;
ch1 = getchar ( ) ;




ฟังก์ชัน putchar( )
    ฟังก์ชั่น putchar( ) เป็นฟังก์ชันที่ใช้แสดงอักขระหนึ่งตัวทางจอภาพ ซึ่งอาจนำมาแสดงค่าที่ป้อนมาจากฟังก์ชัน getchar( ) หรืออาจกำหนดให้แสดงค่าอักขระโดยตรง

รูปแบบ : putchar(character_variable) ;
ตัวอย่าง : char ch1 = 'A' ;
putchar (ch1) ;
putchar ('B');
putchar (66) ;



 ฟังก์ชั่น scanf( )
   ฟังก์ชั่น scanf ( ) เป็นฟังก์ชันที่ใช้สำหรับข้อมูลทางจอภาพ โดยข้อมูลที่รับเข้ามา สามารถเป็นตัวแปรชนิดตัวเลข ตัวอักขระหนึ่งตัว หรือข้อความสตริงได้

รูปแบบ :  scanf("format control string",arg1, arg, ........,argn)
โดยที่ : format control string หมายถึง รหัสรูปแบบข้อมูล arg1,arg2,......,argn 
หมายถึง อาร์กิตเมนต์ที่เป็นตัวแปรเก็บข้อมูล





  รหัสรูปแบบข้อมูล ในที่นี้ก็คือตัวกำหนดชนิดข้อมูล ซึ่งจะต้องสัมพันธ์กับชนิดข้อมูลของตัวแปรที่

อินพุตเข้ามา ส่วนกรณีที่มีอาร์กิตหรือตัวแปรที่อินพุตต่อกันมากกว่า ตัวแปร ฟังก์ชัน scanf( )จะใช้ช่องว่าง(blank)เป็นตัวแยกข้อมูลที่ป้อน และจะป้อนเคาะปุ่ม Enter เพื่อยืนยันการป้อนข้อมูล



  ที่หน้าตัวแปรทุกตัวที่ใช้เก็บข้อมูลในฟังก์ชัน scanf( ) จะต้องผนวกเครื่องหมาย & (ampersand)เข้า ไปด้วย(ยกเว้นตัวแปรชนิดข้อความสตริง)ซึ่งเครื่องหมายดังกล่าวหมายถึง การชี้ไปยังแอดเดรสหน่วยความจำของตัวแปรที่ใช้จัดเก็บข้อมูลนั่นเอง สำหรับรหัสรูปแบบข้อมูล ที่นำมาใช้กำหนดชนิดข้อมูลที่อินพุตเข้ามาโดยผู้ใช้นั้น จะมีอยู่หลายชนิดด้วยกัน 


ฟังก์ชัน printf( )
  ฟังก์ชัน printf( ) เป็นฟังก์ชันที่นำมาใช้สำหรับพิมพ์ข้อมูลออกทางจอภาพ ซึ่งข้อมูลดังกล่าวอาจเป็นทั้งข้อความ ค่าคงที่ และตัวแปร

รูปแบบ : printf ("format control string", arg1, arg2, ......, argn);
โดยที่ : format control string หมายถึง ข้อความ รหัสรูปแบบข้อมูล และรหัสควบคุม arg1, arg2,....., argn หมายถึง อาร์กิตเมนต์ที่เป็นตัวแปรเก็บตัวแปรข้อมูล นิพจน์ รวมถึงค่าคงที่่จะพบว่า ฟังก์ชัน printf( ) จะมีรูปแบบการใช้งานทำนองเดียวกับฟังก์ชัน scanf ( )เพียงแต่ต่างกันตรงที่ใช้สำหรับแสดงผลเท่านั้นอย่างไรก็ตาม ฟังก์ชัน printf( ) ก็ยังสามารถประยุกต์ใช้งานได้หลายรูปแบบด้วยกัน


                    printf("Do more [y/n]\n");
            printf("%s","Hello....c");

            printf("%s",TEXT);

            printf("net=%5.2f",mnet);

            printf("\n\n\007");




  ส่วนรูปแบบข้อมูลที่นำมาใช้กำหนดชนิดข้อมูลจะมีอยู่หลายชนิดด้วยกัน ซึ่งมีรูปแบบเช่นเดียวกับฟังก์ชันscanf( )
นอกจากนี้ภายใน "format control string" ยังสามารถใส่รหัสควบคุม (Escape Sequence) เข้าไปได้อีก ซึ่งรหัสควบคุมเหล่านี้จัดเป็นส่วนหนึ่งของคำสั่งควบคุมการแสดงผล ด้วยการใช้เครื่องหมาย\ (backslash)และตามด้วยรหัสควบคุม



ฟังก์ชัน gets( ) และ puts( )

   ภาษา ได้ เตรียมฟังก์ชันเพื่อการรับและแสดงผลข้อมูล มาให้หลายรูปแบบด้วยกัน โดยเฉพราะการนำไปใช้เพื่อการถ่ายโอนข้อมูล ไม่ว่าจะเป็นการถ่ายโอนข้อมูลภายใน หรือส่งออกไปยังภายนอก และฟังก์ชัน gets( )ก็เป็นอีกฟังก์ชันหนึ่งที่นำมาใช้สำหรับรับข้อมูลประเภทสตริง ส่วนฟังก์ชัน puts( ) ก็นำมาใช้สำหรับแสดงผลลัพธ์ข้อมูลประเภทสตริง



   ข้อมูลประเภทสตริง คือ กลุ่มข้อความ ซึ่งท้ายข้อความจะมีการผนวกค่า Null หรือรหัสควบคุม \0 ปะต่อท้ายเพื่อใช้บ่งบอกถึงจุดสิ้นสุดของข้อความนั้นๆ ทั้งนี้การจัดเก็บข้อความสตริงในภาษา จะจัดเก็บในรูปแบบ Array  สำหรับฟังก์ชัน gets( ) และ puts( ) ถือเป็นอีกทางเลือกหนึ่งของการนำไปใช้เพื่อการรับค่าและแสดงผล แทนที่จะใช้ฟังก์ชัน scanf( ) หรือ printf( ) เท่านั้น




อ้างอิง 

-หนังสือพื้นฐานการเขียนโปรแกรมคอมพิวเตอร์

-www.google.co.th

-https://www.google.co.th/search?q=%E0%B8%84%E0%B8%AD%E0%B8%A1%E0%B8%9E%E0%B8%B4%E0%B8%A7%E0%B9%80%E0%B8%95%E0%B8%AD%E0%B8%A3%E0%B9%8C&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjrg4GNp5PRAhUFOI8KHWx_BFMQ_AUICCgB&biw=1280&bih=897#imgdii=WG5spurmG__E0M%3A%3BWG5spurmG__E0M%3A%3BGoUUHhMgn4qDMM%3A&imgrc=WG5spurmG__E0M%3A

ไม่มีความคิดเห็น:

แสดงความคิดเห็น