ฟังก์ชั่น printf() และ scanf()

ฟังก์ชัน printf()

เป็นฟังก์ชันที่ใช้ในการแสดงผลข้อมูลออกทางจอภาพ มีรูปแบบดังนี้

printf(control, argument)

เช่น printf(“i = %d \n”,i); จะสังเกตว่า ภายใน “ “ จะมีเครื่องหมาย % อยู่ซึ่งเราจะเรียกว่า Format Code ซึ่งจะเป็นตัวกำหนดให้ข้อมูลที่อยู่ในตำแหน่งหลังเครื่องหมาย , แสดงออกมา โดยจะมีความหมายดังตาราง

ลองมาดูตัวอย่างจากโปรแกรมต่อไปนี้

อธิบายโปรแกรม 

จาก โปรแกรมนี้เราจะกำหนดตัวแปรออกเป็นชนิดต่างๆ 4 ชนิด แล้วกำหนดค่าเริ่มต้นให้กับตัวแปรเหล่านั้นแล้วให้แสดงผลลัพธ์ที่ตัวแปร เหล่านั้นเก็บไว้ออกมาทางจอภาพโดยใช้ฟังก์ชัน printf() และจะต้องคำนึงถึง Format Code ด้วย

printf("a = %c\n",a); --------------> ใช้ %c เพราะ a เป็น char

printf("x = %d\n",x); --------------> ใช้ %d เพราะ x เป็น int

printf("y = %f\n",y); --------------> ใช้ %f เพราะ y เป็น float (ทศนิยม)

printf("z = %f\n",z); --------------> ใช้ %f เพราะ z เป็น double (ทศนิยม)

นอกจากนั้นการแสดงผลลัพธ์ที่เป็นจุดทศนิยมเราสามารถกำหนดได้ว่าจะให้มีทศนิยมกี่ตำแหน่งโดยการกำหนดที่ Format Code ดังตัวอย่างต่อไปนี้

printf("y = %.2f\n",y); --------------> ใส่ค่า .2 หมายถึง แสดงทศนิยม 2 ตำแหน่ง

printf("z = %.3f\n",z); --------------> ใส่ค่า .3 หมายถึง แสดงทศนิยม 3 ตำแหน่ง

ฟังก์ชัน scanf()

เป็นฟังก์ชันที่ใช้ในการแสดงผลข้อมูลออกทางจอภาพ มีรูปแบบดังนี้

scanf(control, argument)

ฟังก์ชัน scanf จะมีลักษณะคล้ายกับ printf โดยเราจะต้องใส่ Format Code ไว้ในเครื่องหมาย " " และระบุตัวแปรที่จะมารับข้อมูลจากผู้ใช้ที่ป้อนเข้ามา โดยจะต้องมี & นำหน้าตัวแปรที่เราต้องการใส่ค่าเสมอ ยกเว้นตัวแปรที่เป็นอะเรย์ ลองมาดูตัวอย่างจากโปรแกรมต่อไปนี้ครับ

อธิบายโปรแกรม 

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

scanf("%d" ,&a); --------------> %d เป็นการระบุรูปแบบของตัวแปรที่จะมารองรับค่า, &a คือ ตัวแปรที่จะมารับค่า