300 likes | 450 Views
การรับค่าและแสดงผล. Function แสดงผลออกทางจอภาพ. printf(control,argument list);. control อยู่ภายใต้เครื่องหมาย “” ประกอบด้วย ข้อความ รหัสควบคุมการแสดงผล Format code หลังเครื่องหมาย % argument list ตัวแปร, ค่าคงที่ ถ้า > 1 ตัว คั่นด้วยเครื่องหมาย ,. รหัสควบคุมการแสดงผล.
E N D
printf(control,argument list); • control อยู่ภายใต้เครื่องหมาย “” ประกอบด้วย • ข้อความ • รหัสควบคุมการแสดงผล • Format code หลังเครื่องหมาย % • argument list ตัวแปร, ค่าคงที่ ถ้า > 1 ตัว คั่นด้วยเครื่องหมาย ,
รหัสควบคุมการแสดงผล ตัวนี้ใช้บ่อย • \n ขึ้นบรรทัดใหม่ • \t เว้นระยะ 6 ตัวอักษร • \r cursor ชี้อยู่ต้นบรรทัด • \f เว้นการแสดงผลไป 1 หน้า • \b cursor ถอยหลังไป 1 ตัวอักษร พร้อมลบตัวอักษรไปด้วย • \a มีเสียง • \” พิมพ์เครื่องหมาย ” • \’ พิมพ์เครื่องหมาย ‘
Format Code • %d ข้อมูลที่เป็นตัวเลข (เลขฐาน10) • %f ข้อมูลที่เป็นตัวเลขทศนิยม (float,double) • %c ข้อมูลที่เป็น ตัวอักษร • %s ข้อมูลที่เป็นข้อความ • %% เครื่องหมาย %
แสดง Output ตอบ Number is 500 printf(“Number is %d“,500); int age=20; printf(“You are %d year\’s old.”,age); ตอบ You are 20 year’s old. int num1=3,num2=10,ans; ans=num1+num2; printf(“Summary of %d and %d = %d”,num1,num2,ans); ตอบ Summary of 3 and 10 = 13
ผลการ Run #include<stdio.h> void main() { int number = 10; float tax = 5.5, rate = 40.25; printf(“Number = %d\nTax = %f\nRate = %.2f\n”, number, tax, rate); } ตอบ Number = 10 Tax = 5.500000 Rate = 40.25
num = ^^100 ตัวอย่างเช่น int num = 100; printf(“num = %5d\n”,num); printf(“num = %2d\n”,num); num = 100 ตัวอย่างเช่น int num = 100; printf(“num = %-8d\n”,num); num = 100^^^^^ printf(“num = %-2d\n”,num); num = 100
ผลการแสดงผล #include <stdio.h> #include <conio.h> int main() { int x = 123; clrscr(); printf("%d\n", x); printf("%2d\n", x); printf("%10d\n", x); printf("%-10d\n", x); return 0; } 123 123 ^^^^^^^123 123^^^^^^^
ตัวอย่างเช่น int num = 100; printf(“num = %05d\n”,num); num = 00100
กรณีเลขทศนิยม float rate = 13.7582; printf(“%f”,rate); 13.758200 printf(“%.3f”,rate); 13.758 printf(“%.2f”,rate); 13.76 printf(“%.0f”,rate); 14
การแสดงผลข้อความ #include <stdio.h> #include <conio.h> #define TEXT "Business Computer" int main() { clrscr(); printf("%2s\n", TEXT); printf("%20s\n", TEXT); printf("%20.8s\n", TEXT); printf("%-20.8s\n", TEXT); printf("%20.12s\n", TEXT); return 0; } Business^Computer ^^^Business^Computer ^^^^^^^^^^^^Business Business^^^^^^^^^^^^ ^^^^^^^^Business^Com
Function รับค่าข้อมูลจากทางแป้นพิมพ์
function getchar() • เป็นข้อมูลรับอักขระ 1 ตัวอักษรจากแป้นพิมพ์และต้องเคาะแป้น enter • ในกรณีกำหนดตัวแปรรับค่าเป็น int จะไม่มีการฟ้องข้อผิดพลาด
function getch() • ใช้รับตัวอักขระ 1 ตัวจากแป้นพิมพ์ แต่ขณะรับไม่แสดงทางจอภาพและไม่ต้องเคาะแป้น enter • ในกรณีกำหนดตัวแปรรับค่าเป็น int จะไม่มีการฟ้องข้อผิดพลาด
function get() • ใช้รับข้อความจากแป้นพิมพ์ มาเก็บไว้ในชื่อตัวแปรที่กำหนด • รูปแบบ คือ gets(string_var); • เช่น char str[20]; gets(str); ใช้กับข้อความ และมีช่องว่าง
ตัวอย่าง gets(); #include<stdio.h> void main() { char name[40]; printf(“Enter Subject : “); gets(name); printf(“This subject is %s\n”,name); getch(); } Enter Subject :Computer Programming This subject is Computer Programming
function scanf() รูปแบบ scanf(control,argument list); • control “ ” มี Format code เหมือน printf • argument list รับค่าจากแป้นพิมพ์มาเก็บไว้ - คั่นด้วย , - นำหน้าด้วยเครื่องหมาย &
การรับข้อมูล int age ; float gpa; scanf(“%d”,&age); scanf(“%f”, &gpa); scanf(“%d%f”,&age, &gpa); ตัวอย่างการรับข้อมูล 20 3.75 20 3.75
ผลที่แสดงหน้าจอ #include <stdio.h> #include <conio.h> int main() { char name[30]; clrscr(); printf("Enter your name: "); scanf("%s", name); printf(“Your name is %s \n", name); return 0; } Enter your name: Peter Your name is Peter
ผลที่แสดงหน้าจอ #include <stdio.h> #include <conio.h> int main() { int age,salary; clrscr(); printf("Enter your age : "); scanf("%d ",&age); printf("Enter your salary: "); scanf("%d ",&salary); printf(“Your age is %d years old and earn %d bath \n", age, salary); return 0; } Enter your age: 25 Enter your salary: 32000 Your age is 25 years old and earn 32000 bath
ผลที่แสดงหน้าจอ #include <stdio.h> #include <conio.h> int main() { int age,salary; clrscr(); printf("Enter your age, salary : "); scanf("%d %d",&age,&salary); printf(“Your age is %d years old and earn %d baht \n", age, salary); return 0; } Enter your age, salary : 2532000 Your age is 25 years old and earn 32000 baht
EX1จงเขียนโปรแกรมรับค่าความยาวเป็นฟุตจากแป้นพิมพ์ แล้วเปลี่ยนค่านั้นให้เป็นนิ้ว และแสดงผลที่ได้ออกทางหน้าจอ Input : Output : ความยาวเป็นฟุต(feet) ความยาวเป็นนิ้ว(inch) หมายเหตุ 1 ฟุต เท่ากับ 12 นิ้ว
#include<stdio.h> #include<conio.h> void main() { int feet, inch; clrscr(); printf(“Enter number of feet : “); scanf(“%d”,&feet); inch = feet * 12; printf(“ %d feet = %d inch\n“, feet, inch); getch(); }
EX2 จงเขียนโปรแกรมรับตัวเลขทศนิยม 2 ค่าจากแป้นพิมพ์ จากนั้นให้หาผลบวกและผลคูณของ 2 ตัวเลขนั้น พร้อมทั้งแสดงผลลัพธ์ออกทางจอภาพ โดยกำหนดทศนิยม 2 ตำแหน่ง Input Enter 2 number : 12.5020.25 Output 12.50 + 20.25 = 32.75 12.50 x 20.25 = 253.125
#include<stdio.h> #include<conio.h> void main() { float Num1,Num2,Add,Mul; clrscr(); printf(“Enter number1 and 2 : “); scanf(“%f %f”,&Num1,&Num2); Add = Num1+Num2; Mul=Num1*Num2; printf(“%.2f + %.2f = %.2f\n” ,Num1,Num2,Add); printf(“%.2f * %.2f = %.2f\n” ,Num1,Num2,Mul); getch(); }
แบบฝึกหัด 1. จงเขียนโปรแกรมเก็บข้อมูลเกี่ยวกับภาพยนตร์ DVD โดยเก็บข้อมูลคือ รหัส ชื่อ จำนวน output Code:003 Name : Titanic Amount : 30 copies
2. จงเขียนโปรแกรมหาพื้นที่วงกลมและเส้นรอบวง - รับข้อมูล รัศมี - พื้นที่วงกลม คือ ¶r2 - เส้นรอบวง คือ 2 ¶ r output Radius : …. Area : …. Perimeter :….
3. จงเขียนโปรแกรมหาเกรดเฉลี่ยทั้ง 3 เทอม - รับข้อมูลเกรด เทอม 1 , เทอม 2, เทอม3 output Grade Term 1 :…. Grade Term 2 :…. Grade Term 3 :…. Average is …