|
|
|
|
|
|
| 4.2.1 คำสั่งแสดงผลข้อมูล | 4.2.2 คำสั่งรับค่าข้อมูล | |
|
|
|
|
|
4.2.1 คำสั่งแสดงผลข้อมูล |
|
คำสั่ง printf() |
|
คำสั่ง printf() เป็นคำสั่งที่ใช้ในการแสดงผลข้อมูลที่อยู่ในตัวแปร ค่าคงตัว นิพจน์ ออกมาทางจอภาพ ซึ่งคำสั่ง printf() นี้ถูกเก็บไว้ใน I/O Library เวลาจะใช้คำสั่งต้องบอกให้ตัวแปลชุดคำสั่งภาษาซี
รับรู้ก่อน โดยใช้คำสั่งตัวประมวลผลก่อนซี #include <stdio.h> เข้ามาก่อน โดยเอาไว้ส่วนหัวของโปรแกรม |
|
|
|
|
|
|
|
ตัวอย่างที่ 6 |
การใช้คำสั่งแสดงข้อความ "My First Program" ทางจอภาพ
( ex4-06.c ) |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
printf("My First Program"); |
/* แสดงข้อความ "My First Program" ทางจอภาพ */ |
/*4*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*5*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
หมายเหตุ |
คำสั่ง printf เป็นคำสั่งแสดงผลข้อมูลที่รวมอยู่ในแฟ้ม stdio.h ใช้สั่งให้แสดงข้อความในเครื่องหมาย "" ออกทางจอภาพ |
|
|
ผลการรันโปรแกรม |
|
|
|
|
|
|
|
|
|
ตัวอย่างที่ 8 |
การใช้คำสั่งแสดงข้อความ "The sum is " และจำนวน 15 ที่เก็บในตัวแปร sum โดยใช้คำสั่ง printf เพียงครั้งเดียว ( ex4-08.c ) |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
int sum = 15; |
/* ประกาศตัวแปร sum เป็นชนิดจำนวนเต็ม พร้อมกำหนดค่าเริ่มต้นให้กับตัวแปร sum เป็น 15 */ |
/*4*/ |
printf("The sum is %d" , sum"); |
/* แสดงข้อความ "The sum is %d" ทางจอภาพ โดยแสดงค่าของ sum ใน %d แทน */ |
/*5*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*6*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
หมายเหตุ |
คำสั่ง printf จะไม่แสดง %d ออกมา แต่จะแสดงค่าของข้อมูลออกมาแทน |
|
|
ผลการรันโปรแกรม |
|
|
|
|
|
|
|
ตัวอย่างที่ 9 |
การใช้คำสั่งแสดงข้อความและการประมวลผลนิพจน์ทางคณิตศาสตร์
( ex4-09.c ) |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
int x = 8 , y = 4; |
/* ประกาศตัวแปร x และ y เป็นชนิดจำนวนเต็ม พร้อมกำหนดค่าเริ่มต้นให้กับตัวแปร x และ y เป็น 8 และ 4 ตามลำดับ */ |
/*4*/ |
printf("%d + %d = %d" , x , y , x+y); |
/* แสดงข้อความ "%d + %d = %d" ทางจอภาพ โดยแสดงค่าของ x ใน %d ตัวแรก แสดงค่า y ใน %d ตัวที่ 2 และแสดงค่าผลบวก x + y ใน %d ตัวที่ 3 แทน */ |
/*5*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*6*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
หมายเหตุ |
การแสดงผลนิพจน์ ในคำสั่ง printf จะประมวลผลนิพจน์นั้นก่อน แล้วจึงนำผลลัพธ์ไปแสดงในรหัสรูปแบบข้อมูลที่กำหนด |
|
|
ผลการรันโปรแกรม |
|
|
|
|
|
|
|
ตัวอย่างที่ 10 |
จงเขียนโปรแกรมคำนวณพื้นที่วงกลม รัศมีเท่ากับ 5 ( ex4-10.c ) |
|
|
จากโจทย์ เขียนผังงาน แสดงการแก้ปัญหา ได้ดังนี้ |
|
|
|
|
|
จากผังงาน เขียนโปรแกรมได้ดังนี้ |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
int r = 5; |
/* ประกาศตัวแปร r เป็นชนิดจำนวนเต็ม พร้อมกำหนดค่าเริ่มต้นให้กับตัวแปร r เป็น 5 */ |
/*4*/ |
float area; |
/* ประกาศตัวแปร area เป็นชนิดจำนวนจริง |
/*5*/ |
area = 22.0/7.0*r*r; |
/* ประมวลผล 22.0/7.0*r*r ก่อน จะได้ (22.0/7.0) x 5 x 5 เป็น 78.571429
แล้วจึงนำ 78.571429 ไปเก็บใน area */ |
/*6*/ |
printf("radius : %3d ,Area of Circle : %7.2f" , r ,area); |
/* แสดงข้อความ "radius : %3d ,Area of Circle : %7.2f" ทางจอภาพ โดยแสดงค่า r ใน %3d และแสดงค่า area ใน %7.2f */ |
/*7*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*8*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
หมายเหตุ |
%3d หมายถึง จองช่องไว้แสดงผลจำนวนเต็ม ได้ 3 ช่อง
%7.2f หมายถึง จองช่องไว้แสดงผลทั้งหมด 7 ช่อง แบ่งเป็น แสดงจำนวนเต็ม
ได้ 4 ช่อง แสดงทศนิยมได้ 2 ตำแหน่ง และจุด 1 ช่อง |
|
|
ผลการรันโปรแกรม |
|
|
|
|
|
|
|
|
|
4.2.2 คำสั่งรับค่าข้อมูล |
|
คำสั่ง scanf() |
|
คำสั่ง scanf() เป็นคำสั่งที่ใช้ในการรับข้อมูลจากแป้นพิมพ์ (Keyboard) เข้ามาเก็บไว้ในตัวแปร |
|
|
|
argument-list |
ตัวแปรสำหรับไว้เก็บค่าข้อมูลที่รับจากแป้นพิมพ์ ถ้ามีตัวแปรมากกว่าหนึ่งตัว ให้แยกกันด้วยเครื่องหมายคอมม่า ( , ) และต้องนำหน้าตัวแปรด้วยเครื่องหมาย & ทุกตัว ยกเว้นตัวแปรชุด |
|
|
control |
จะต้องเขียนอยู่ภายใต้เครื่องหมาย "" ภายในเครื่องหมายประกอบด้วย รหัสรูปแบบข้อมูล (รหัสเหมือนกับที่ใช้ในคำสั่ง printf) หากต้องการรับข้อมูลมากกว่าหนึ่งตัว ให้แยกกันด้วยเว้นวรรค (space bar) หรือจะกำหนดเป็นรูปแบบอื่นก็ได้ แต่ตอนรับค่าต้องป้อนรูปแบบให้ตรงกัน โดยจำนวนรหัสรูปแบบข้อมูล ต้องสอดคล้องกับจำนวนตัวแปรใน argument-list |
|
|
|
|
|
|
ตัวอย่างที่ 12 |
การรับค่าจำนวนเต็ม 1 จำนวน จากแป้นพิมพ์ ( ex4-12.c ) |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
int x; |
/* ประกาศตัวแปร x เป็นชนิดจำนวนเต็ม */ |
/*4*/ |
scanf("%d" , &x); |
/* รับค่าเลขจำนวนเต็ม จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร x เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*5*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*6*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
หมายเหตุ |
เมื่อคำสั่ง scanf ทำงาน เครื่องจะหยุดรอรับค่า (เคอร์เซอร์กระพริบ)
เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป |
|
|
|
|
|
|
ตัวอย่างที่ 13 |
การรับค่าจำนวนเต็ม 2 จำนวน จากแป้นพิมพ์ ( ex4-13.c ) |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
int x , y; |
/* ประกาศตัวแปร x และ y เป็นชนิดจำนวนเต็ม */ |
/*4*/ |
scanf("%d %d" , &x , &y); |
/* รับค่าเลขจำนวนเต็ม 2 จำนวน จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร x และ y ตามลำดับ คั่นจำนวนสองจำนวนด้วยเว้นวรรค เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*5*/ |
printf("x = %d y = %d" , x , y); |
/* แสดงข้อความ "x = %d y = %d" โดยแสดงค่า x ใน %d ตัวแรก และแสดงค่า y ใน %d ตัวที่ 2 */ |
/*6*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*7*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
หมายเหตุ |
คำสั่ง scanf("%d %d" , &x , &y); เป็นคำสั่งรับค่าจำนวนเต็ม 2 จำนวน จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร x และ y ตามลำดับ โดยป้อนค่าที่ 1 แล้วเว้นวรรค (space bar) แล้วจึงป้อนค่าที่ 2 เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป |
|
|
ตัวอย่างผลการรันโปรแกรม |
|
|
|
|
|
|
|
ตัวอย่างที่ 14 |
การจัดรูปแบบอื่น ๆ ในการรับค่าจำนวนเต็ม 2 จำนวน จากแป้นพิมพ์
( ex4-14.c ) |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
int x , y; |
/* ประกาศตัวแปร x และ y เป็นชนิดจำนวนเต็ม */ |
/*4*/ |
scanf("%d, %d" , &x , &y); |
/* รับค่าเลขจำนวนเต็ม 2 จำนวน จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร x และ y ตามลำดับ คั่นจำนวนสองจำนวนด้วยเครื่องหมายคอมม่า ( , ) ตามที่กำหนดไว้ในรูปแบบคำสั่ง เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*5*/ |
printf("x = %d y = %d" , x , y); |
/* แสดงข้อความ "x = %d y = %d" โดยแสดงค่า x ใน %d ตัวแรก และแสดงค่า y ใน %d ตัวที่ 2 */ |
/*6*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*7*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
ตัวอย่างผลการรันโปรแกรม |
|
|
|
|
|
|
|
ตัวอย่างที่ 15 |
การรับค่า 3 ค่า ต่างชนิดกัน จากแป้นพิมพ์ วิธีที่ 1 ( ex4-15.c ) |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
char x; |
/* ประกาศตัวแปร x เป็นชนิดอักขระ */ |
/*4*/ |
int y; |
/* ประกาศตัวแปร y เป็นชนิดจำนวนเต็ม */ |
/*5*/ |
float z; |
/* ประกาศตัวแปร z เป็นชนิดจำนวนจริง */ |
/*6*/ |
scanf("%c" , &x); |
/* รับค่าอักขระ จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร x เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*7*/ |
scanf("%d" , &y); |
/* รับค่าเลขจำนวนเต็ม จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร y เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*8*/ |
scanf("%f" , &z); |
/* รับค่าเลขจำนวนจริง จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร z เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*9*/ |
printf("x = %c y = %d z = %f" , x , y , z ); |
/* แสดงข้อความ "x = %c y = %d z = %f" โดยแสดงค่า x ใน %c แสดงค่า y ใน %d และแสดงค่า z ใน %f */ |
/*10*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*11*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
ตัวอย่างผลการรันโปรแกรม |
|
|
|
|
|
|
|
ตัวอย่างที่ 16 |
การรับค่า 3 ค่า ต่างชนิดกัน จากแป้นพิมพ์ วิธีที่ 2 ( ex4-16.c ) |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
char x; |
/* ประกาศตัวแปร x เป็นชนิดอักขระ */ |
/*4*/ |
int y; |
/* ประกาศตัวแปร y เป็นชนิดจำนวนเต็ม */ |
/*5*/ |
float z; |
/* ประกาศตัวแปร z เป็นชนิดจำนวนจริง */ |
/*6*/ |
scanf("%c %d %f" , &x , &y , &z); |
/* รับค่า อักขระ จำนวนเต็ม และจำนวนจริง จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร xy และ z ตามลำดับ แต่ละค่าคั่นด้วยเว้นวรรค (space bar) เมื่อป้อนข้อมูลเสร็จทั้ง 3 ค่าแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*7*/ |
printf("x = %c y = %d z = %f" , x , y , z ); |
/* แสดงข้อความ "x = %c y = %d z = %f" โดยแสดงค่า x ใน %c แสดงค่า y ใน %d และแสดงค่า z ใน %f */ |
/*8*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*9*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
ตัวอย่างผลการรันโปรแกรม |
|
|
|
|
|
|
|
ตัวอย่างที่ 17 |
จงเขียนโปรแกรมคำนวณพื้นที่สามเหลี่ยม ( ex4-17.c ) |
|
|
จากโจทย์ เขียนผังงาน แสดงการแก้ปัญหา ได้ดังนี้ |
|
|
|
|
|
จากผังงาน เขียนโปรแกรมได้ดังนี้ |
|
|
บรรทัด |
รหัสต้นฉบับ (Source Code) |
อธิบายคำสั่ง |
/*1*/ |
#include <stdio.h> |
/* เป็นคำสั่งของตัวประมวลผลก่อนซี จะมีผลให้แฟ้ม stdio.h ซึ่งเป็นแฟ้มส่วนหัวที่ใช้เก็บรวบรวมคำสั่งเกี่ยวกับการรับและแสดงผลข้อมูล ถูกอ่านเข้ามาเพื่อประมวลผลร่วมกับโปรแกรมนี้ */ |
/*2*/ |
int main() { |
/* ประกาศ main เป็นฟังก์ชันหลัก ชนิดจำนวนเต็ม และเริ่มต้น block ของฟังก์ชัน main (เริ่มต้นโปรแกรม) */ |
/*3*/ |
float b , h; |
/* ประกาศตัวแปร b และ h เป็นชนิดจำนวนจริง */ |
/*4*/ |
printf("Area of Triangle\n"); |
/* แสดงข้อความ "Area of Triangle" แล้วขึ้นบรรทัดใหม่ */ |
/*5*/ |
printf("Base : "); |
/* แสดงข้อความ "Base : " เพื่อแจ้งให้ผู้ใช้โปรแกรมทราบว่า ต้องป้อนข้อมูลอะไร */ |
/*6*/ |
scanf("%f" , &b); |
/* รับค่าจำนวนจริง จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร b เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*7*/ |
printf("Height : "); |
/* แสดงข้อความ "Height : " เพื่อแจ้งให้ผู้ใช้โปรแกรมทราบว่า ต้องป้อนข้อมูลอะไร */ |
/*8*/ |
scanf("%f" , &h); |
/* รับค่าจำนวนจริง จากแป้นพิมพ์ ไปเก็บไว้ในตัวแปร h เมื่อป้อนข้อมูลเสร็จแล้ว ต้องกดแป้น Enter เพื่อยืนยันข้อมูลและทำคำสั่งถัดไป */ |
/*9*/ |
printf("Triangle :Base =%.2f Height =%.2f Area =%.2f", b,h,0.5*b*h); |
/* แสดงข้อความ "Triangle :Base =%.2f Height =%.2f Area =%.2f" โดยแสดงค่า b ใน %.2f ตัวแรก แสดงค่า h ใน %.2f ตัวที่ 2 และแสดงค่า 0.5*b*h ใน %.2f ตัวที่ 3 (%.2f คือ แสดงผลเป็นจุดทศนิยม 2 ตำแหน่ง) */ |
/*10*/ |
return 0; |
/* คืนค่า 0 ให้ฟังก์ชัน main โปรแกรมทำงานถูกต้องสมบูรณ์ */ |
/*11*/ |
} |
/* สิ้นสุด block ของฟังก์ชัน main (สิ้นสุดโปรแกรม) */ |
|
|
|
หมายเหตุ |
แสดงการใช้คำสั่ง printf กับ scanf คู่กัน โดยใช้คำสั่ง printf เพื่อแสดงข้อความ ให้ผู้ใช้โปรแกรมทราบว่า ถึงขั้นตอนไหนและต้องทำอะไร (เป็นการสื่อสารกับผู้ใช้โปรแกรม) แล้วจึงใช้คำสั่ง scanf ให้ผู้ใช้ป้อนข้อมูล |
|
|
ตัวอย่างผลการรันโปรแกรม |
|
|
|
|
|
|