คำสั่งเกี่ยวกับการรับ และแสดงผล บทที่ 3 คำสั่งเกี่ยวกับการรับ และแสดงผล
Outline ฟังก์ชันการแสดงผลข้อมูล ฟังก์ชันการรับข้อมูล
คำสั่งเกี่ยวกับการรับ และแสดงผล ชนิดข้อมูลของภาษาซีมีหลายประเภท และมีวิธีการใช้งานได้หลายรูปแบบ เพื่อให้การรับข้อมูล และการแสดงผลข้อมูล เป็นไปตามวัตถุประสงค์ของการใช้งาน
ฟังก์ชันการแสดงผลข้อมูล ฟังก์ชัน printf() คือฟังก์ชันที่ใช้สำหรับแสดงผลข้อความ และค่าของข้อมูลที่เก็บไว้ในตัวแปร ทั้งข้อมูลชนิดเลขจำนวนเต็ม เลขทศนิยม ตัวอักษร และข้อมูลชนิดข้อความ
รูปแบบคำสั่ง printf() control string หมายถึง ตัวอักษร ข้อความ ตัวกำหนดชนิดข้อมูล (Specifier) และ backslash character constant variable_list หมายถึง ตัวแปรที่ต้องการกำหนด อาจเป็น 1 ชื่อตัวแปร หรือมากกว่า ถ้าต้องการกำหนดให้มีมากกว่า 1 ชื่อตัวแปร ให้แบ่งคั่นตัวแปรด้วยเครื่องหมาย Comma (,) printf(“control string”,variable list);
ตัวกำหนดชนิดข้อมูล %c แทนตัวอักษร %d แทนเลขจำนวนเต็ม %e แทนเลขในรูปเอกซ์โพเนนเชียล (exponential form) %f แทนเลขทศนิยม %o แทนเลขฐานแปด %s แทนสตริงก์ %u แทนเลขจำนวนเต็ม ไม่คิดเครื่องหมาย %x แทนเลขฐานสิบหก %p แทนข้อมูลแบบพอยน์เตอร์ (pointer) %% แทนเครื่องหมายเปอร์เซ็นต์
backslash character constant \b backspace \n newline \r carriage return \t horizontal tab \” double quote \’ single quote \o null \\ backslash
ตัวอย่าง 3.1 การใช้ฟังก์ชัน printf() #include <stdio.h> #include <conio.h> void main(void) { printf("Hello Turbo C"); getch(); }
ตัวอย่าง 3.2 การใช้ฟังก์ชัน printf() #include <stdio.h> #include <conio.h> void main(void) { int n; clrscr(); n=100; printf("Number = %d",n); getch(); }
ตัวอย่าง 3.3 การใช้ฟังก์ชัน printf() #include <stdio.h> #include <conio.h> void main(void) { int base,height; float area; clrscr(); base=10; height=5; area=0.5*base*height; printf("Base = %d\n",base); printf("Height = %d\n",height); printf("Area of Triangle = %.2f\n",area); getch(); } ผลลัพธ์ Base =10 Height =5 Area of Triangle =25.00
ตัวอย่าง 3.4 การใช้ฟังก์ชัน printf() #include <stdio.h> #include <conio.h> void main(void) { int a=10; long int b=100; float c=2.54; printf("a = %d\n",a); printf("b = %ld\n",b); printf("c = %f\n",c); getch(); } ผลลัพธ์ a = 10 b = 100 c = 2.54
ตัวอย่าง 3.5 การใช้ฟังก์ชัน printf() #include <stdio.h> #include <conio.h> void main(void) { int a=10; float b=2.54; printf("a = [%5d]\n",a); printf("a = [%-5d]\n",a); printf("b = [%10.2f]\n",b); printf("b = [%-10.2f]\n",b); getch(); } ผลลัพธ์ a = [ 10] a = [10 ] b = [ 2.54] b = [2.54 ]
ตัวอย่าง 3.6 การใช้ฟังก์ชัน printf() #include <stdio.h> #include <conio.h> void main(void) { char str[10] =”Computer”; printf("[%10s]\n",str); printf("[%-10s]\n",str); getch(); } ผลลัพธ์ [ Computer] [Computer ]
ตัวอย่าง 3.8 การใช้ฟังก์ชัน printf() printf("[%4.2f]\n",f); printf("[%f]\n",f); printf("[%e]\n",f); printf("[%d]\n",i); printf("[%o]\n",i); printf("[%x]\n",i); printf("[%u]\n",i); printf("[%10s]\n",str); printf("[%-10s]\n",str); getch(); } #include <stdio.h> #include <conio.h> void main() { int i=10; float f = 3.19; char str[10]=”Test”; clrscr(); printf("[%d]\n",i); printf("[%5d]\n",i); printf("[%-5d]\n",i); printf("[%10.2f]\n",f); ผลลัพธ์ [10] [ 10] [10 ] [ 3.19] [3.19] [3.190000] [3.190000e+00] [12] [a] [ Test] [Test ]
ฟังก์ชันการรับข้อมูล ฟังก์ชัน scanf() คือฟังก์ชันที่ใช้สำหรับรับข้อมูลผ่านแป้นพิมพ์ ข้อมูลที่ป้อนจะแสดงบนจอภาพ เมื่อกด Enter ข้อมูลป้อนเข้ามาจะเก็บไว้ที่ variable
ฟังก์ชัน scanf() รูปแบบคำสั่ง ความหมาย scanf(“format code”,&variable); format code หมายถึง ตัวกำหนดชนิดข้อมูล (Specifier) variable หมายถึง ตัวแปรที่ต้องการกำหนด อาจเป็น 1 ชื่อตัวแปร หรือมากว่า ถ้าต้องการกำหนดให้มีมากกว่า 1 ชื่อตัวแปร ให้แบ่งคั่นตัวแปรด้วยเครื่องหมาย Comma (,) และจะต้องมี format code เท่ากับจำนวนของ variable และตัวแปรที่ใช้จะต้องนำหน้าด้วย & เสมอ scanf(“format code”,&variable);
ตัวอย่าง 3.11 การใช้ฟังก์ชัน scanf() #include <stdio.h> #include <conio.h> void main(void) { int n; clrscr(); printf("Enter A Number : "); scanf("%d",&n); printf("Number = %d",n); getch(); }
ตัวอย่าง 3.12 การใช้ฟังก์ชัน scanf() #include <stdio.h> #include <conio.h> void main(void) { int n1,n2; clrscr(); printf("Enter Number : "); scanf("%d %d",&n1,&n2); printf("Number 1 = %d\n",n1); printf("Number 2 = %d\n",n2); getch(); }
ตัวอย่าง 3.13 การใช้ฟังก์ชัน scanf() #include <stdio.h> #include <conio.h> void main(void) { int n1,n2; clrscr(); printf("Enter Number1 : "); scanf("%d",&n1); printf("Enter Number2 : "); scanf("%d",&n2); printf("Number 1 = %d\n",n1); printf("Number 2 = %d\n",n2); getch(); }
ตัวอย่าง 3.14 การใช้ฟังก์ชัน scanf() /* scanf-printf */ #include <stdio.h> #include <conio.h> void main(void) { char ch; clrscr(); printf("Enter 1 Character : "); scanf("%c",&ch); printf("You Enter : %c",ch); getch(); }
ตัวอย่าง 3.15 การใช้ฟังก์ชัน scanf() /* scanf-printf */ #include <stdio.h> #include <conio.h> void main(void) { char name[30]; clrscr(); printf("Enter Your Name-Surname : "); scanf("%s",&name); printf("Your Name-Surname : %s",name); getch(); }