Untitled Document
ในบทความนี้ผมจะมากล่าวถึงเรื่องคำสั่งในการรับและแสดงผลข้อมูล
(I/O Function) คือ printf() และ scanf() ที่ใช้ในภาษา C กันนะครับ ซึ่งเวลาที่เราต้องการให้โปรแกรมของเรารับข้อมูลเข้าไปหรือแสดงผลการคำนวณออกมาทางหน้าจอ
เราจำเป็นต้องใช้ฟังก์ชันทั้ง 2 มาใช้งานให้ถูกต้อง ลองมาดูกันเลยครับ
ฟังก์ชัน 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 จะมีลักษณะคล้ายกับ printf โดยเราจะต้องใส่
Format Code ไว้ในเครื่องหมาย " " และระบุตัวแปรที่จะมารับข้อมูลจากผู้ใช้ที่ป้อนเข้ามา
โดยจะต้องมี & นำหน้าตัวแปรที่เราต้องการใส่ค่าเสมอ ยกเว้นตัวแปรที่เป็นอะเรย์
ลองมาดูตัวอย่างจากโปรแกรมต่อไปนี้ครับ

อธิบายโปรแกรม
จากตัวอย่างมีการประกาศตัวแปร คือ a เป็นตัวแปรชนิด int ถัดมาเป็นการแสดงคำพูด
Enter number : ที่หน้าจอ จากนั้นฟังก์ชัน scanf() จะทำงานโดยการรอรับข้อมูลจากผู้ใช้ให้เราพิมพ์ตัวเลขจำนวนเต็มใส่ลงไป
ตัวเลขที่เราพิมพ์ลงไปนั้นจะถูกเก็บไว้ที่ตัวแปร a แล้วจึงแสดงผลลัพธ์ของตัวเลขนั้นอีกครั้งที่จอภาพ
scanf("%d" ,&a);
--------------> %d เป็นการระบุรูปแบบของตัวแปรที่จะมารองรับค่า,
&a คือ ตัวแปรที่จะมารับค่า
สำหรับฟังก์ชัน printf() และ scanf() นั้นจะเป็นฟังก์ชันพื้นฐานที่จะใช้กันบ่อยๆ
ในภาษา C เราควรฝึกใช้งานให้คล่องนะครับ ส่วนใน C++ ฟังก์ชันทั้ง 2 นี้จะถูกเปลี่ยนแปลงไปและการใช้งานก็ต่างกันนิดหน่อยซึ่งผมจะยังไม่กล่าวถึงในตอนนี้นะครับ

|