การแสดงผลข้อมูลออกทางหน้าจอและรหัสควบคุมการแสดงผล

แสดงผลออกทางหน้าจอและรหัสควบคุม

การทำงานพื้นฐานที่สึดหรือเรียกได้ว่าเป็นส่วนหนึ่งในการทำงานของทุกโปรแกรมคือ การแสดงผลข้อมูลออกทางจอภาพ โดยใ[ภาษา C นั้น การแสดงผลข้อมูลออกทางจอสามารถทำได้ดังนี้


คำสั่ง printf

คำสั่ง printf ถือได้ว่าเป็นคำสั่งพื้นฐานที่สุดในการแสดงผลข้อมูลทุกชนิดออกทางหน้าจอไม่ว่าจะเป็นจำนวนเต็ม int ทศนิยม float ข้อความ string หรืออักขระ นอกจากนี้คำสั่งยังมีความยืดหยุ่นสูง โดยเราสามารถกำหนดหรือจัดรูปแบบการแสดงผลให้มีระเบียบหรือเหมาะสมตามความต้องการได้อีกด้วย


รูปแบบคำสั่ง printf

printf ("format",variable);

format ข้อมูลที่ต้องการแสดงผลออกทางหน้าจอ โดยข้อมูลนี้ต้องเขียนไว้ในเครื่องหมาย " " ข้อมูลที่สามารถแสดงผลได้มีอยู่ 2 ประเภท คือ ข้อความธรรมดา และค่าที่เก็บไว้ในตัวแปร ซึ่งถ้าเป็นค่าที่เก็บไว้ในตัวแปรต้องใส่รหัสควบคุมรูปแบบให้ตรงกับชนิดของข้อมูลที่เก็บไว้ในตัวแปรนั้นด้วย

variable ตัวแปรหรือนิพจน์ที่ต้องการนำค่าไปแสดงผลให้ตรงกับรหัสควบคุมรูปแบบที่กำหนดไว้

รหัสควบคุมรูปแบบการแสดงผลค่าของตัวแปรออกทางหน้าจอ แสดงได้ดังนี้

รหัสควบคุมรูปแบบ การนำไปใช้งาน

%d แสดงผลค่าของตัวแปรชนิดจำนวนเต็ม

%u แสดงผลค่าของตัวแปรชนิดจำนวนเต็มบวก

%f แสดงผลค่าของตัวแปรชนิดจำนวนทศนิยม

%c แสดงผลอักขระ 1 ตัว

%s แสดงผลข้อความ หรืออักขระมากกว่า 1 ตัว

ตัวอย่างการใช้คำสั่ง printf แสดงผลข้อความธรรมดาออกทางหน้าจอ ดังนี้

printf("Hello Program C");

แสดงข้อความ Hello Program C ออกทางขอภาพ

printf("Dankhunthod school");

แสดงข้อความ Dankhunthod school ออกทางจอภาพ

printf("Dankhunthod Thailand");

แสดงข้อความ Dankhunthod Thailand ออกทางจอภาพ


#include <stdio.h>

#include <conio.h>

void main()

{

clrscr();

prinft("Dankhunthod School\n");

printf("Program C\n");

getch();

}

ผลลัพธ์โปรแกรม

Dankhunthod School

Program C

ส่วนตัวอย่างการใช้คำสั่ง printf แสดงผลจากค่าของตัวแปรหรือนิพจน์ การคำนวณออกทางหน้าจอ แสดงได้ดังนี้ โดยกำหนดให้


ตัวแปร x เก็บจำนวนเต็ม 45

printf("total value = %d",x); แสดงข้อความ total value = 45 ออกทางจอภาพ

แสดงผลให้เป็นระเบียบด้วยอักขระควบคุมการแสดงผล

นอกจากนี้เรายังสามารถจัดรูปแบบการแสดงผลให้ดูเป็นระเบียบมากขึ้น อย่างเช่นขึ้นบรรทัดใหม่ หลังแสดงข้อความ หรือเว้นระยะแท็บระหว่างข้อความ โดยใช้อักขระควบคุมการแสดงผลร่วมกับคำสั่ง printf

อักขระควบคุมการแสดงผล ความหมาย

\n ขึ้นบรรทัดใหม่

\t เว้นช่องว่างเป็นระยะ 1 แท็บ (6 ตัวอักษร)

\r กำหนดให้เคอร์เซอร์ไปอยู่ต้นบรรทัด

\f เว้นช่องว่างเป็นระยะ 1 หน้าจอ

\b ลบอักขระสุดท้ายออก 1 ตัว

การนำอักขระควบคุมการแสดงผลมาใช้ เราต้องเขียนอักขระควบคุมการแสดงผลไว้ภายในเครื่องหมาย " " ดังตัวอย่าง

printf("Hello ... \n"); แสดงข้อความ Hello ... แล้วขึ้นบรรทัดใหม่

printf("Hello...\nDankhunthod\n"); แสดงข้อความ Hello ...แล้วขึ้นบรรทัดใหม่พร้อมกับแสดงข้อความ Dankhunthod จากนั้นขึ้นบรรทัดใหม่อีกครั้ง

printf("Num1 = %d\tNum2 = %f\n",x,z); แสดงข้อความ Num1 = 45 ตามด้วยการเว้นช่องว่าง 1 แท็บแล้วต่อด้วยข้อความ Num2 = 20.153

คำสั่งรับข้อมูลจากคีย์บอร์ด

การทำงานของโปรแกรมส่วนใหญ่มักจะเป้นการเชื่อมโยงกับผู้ใช้แบบ 2 ทิศทาง คือ ทั้งภาคของการแสดงผลการทำงานออกทางหน้าจอ และภาคของการรับข้อมูลจากผู้ใช้เข้ามาทางคีย์บอร์ด เพื่อร่วมในการประมวลผลของโปรแกรม

คำสั่ง scanf()

ในภาษา C การรับข้อมูลจากคีย์บอร์ดสามารถทำได้โดยการเรียกใช้ฟังก์ชัน scanf() ซึ่งเป็นฟังก์ชันมาตรฐานสำหรับรับข้อมูลจากคีย์บอร์ด โดยสามารถรับข้อมูลได้ทุกประเภท ไม่ว่าจะเป็นจำนวนเต็ม ทศนิยม อักขระ หรือข้อความ


รูปแบบคำสั่ง scanf()

scanf("format",&variable);

format การใช้รหัสควบคุมรูปแบบ เพื่อกำหนดชนิดของข้อมูลที่จะรับเข้ามาจากคีย์บอร์ด โดยรหัสควบคุมรูปแบบใช้ชุดเดียวกับคำสั่ง printf()

variable ตัวแปรที่จะใช้เก็บค่าข้อมูลที่รับเข้ามาจากคีย์บอร์ด โดยชนิดของตัวแปรจะต้องตรงกับรหัสควบคุมรูปแบบที่กำหนดไว้ นอกจากนี้หน้าชื่อของตัวแปรจะต้องนำหน้าด้วยเครื่องหมาย & ยกเว้นตัวแปรสตริง สำหรับเก็บข้อความเท่านั้นที่ไม่ต้องนำหน้าด้วยเครื่องหมาย &

ตัวอย่างการใช้งานคำสั่ง scanf() เพื่อรับข้อมูลจากคีย์บอร์ด

int speed; สร้างตัวแปรชนิด int สำหรับเก็บค่าตัว เลขจำนวนเต็ม

printf("Enter wind speef : "); แสดงข้อความให้กรอกค่าความเร็วลม เป็นจำนวนเต็ม

scanf("%d",&speed); รับค่าความเร็วลมเข้ามาเก็บไว้ในตัวแปร speed

char answer; สร้างตัวแปรชนิด char สำหรับเก็บ อักขระ

printf("Enter Figure (Y : N) : ") แสดงข้อความให้ป้อนอักขระ Y หรือ N

scanf("%c",&answer รับอักขระเข้ามาเก็บไว้ในตัวแปร answer

char name[10]; สร้างตัวแปรสตริงสำหรับเก็บข้อความ

printf("Enter your name = "); แสดงข้อความให้ป้อนชื่อ

scanf("%s",name ) รับชื่อเข้ามาเก็บไว้ในตัวแปร name สังเกตจะไม่ใส่เครื่องหมาย & ตัวแปรชนิดข้อความ



  • #include <stdio.h>
  • #include <conio.h>
  • void main()
  • {
  • clrscr();
  • int x,y,sum;
  • printf("Enter The Length is : ");
  • scanf ("%d",&x);
  • printf("Enter The Width is : ");
  • scanf ("%d",&y);
  • sum = x*y;
  • printf("The area is :%d",sum);
  • getch();
  • }
  • ผลลัพธ์โปรแกรม
  • Enter The Length is : 15
  • Enter The Width is : 5
  • The area is : 75


การเขียนโปรแกรมคำนวณ

เราสามารถคำนวณหาผลลัพทธ์ของนิพจน์คณิตศาสตร์ด้วยการเขียนโปรแกรมภาษาซี ตัวอย่างต่อไปนี้เป็นการแสดงลำดับการประมวลผลทางคณิตศาสตร์ของนิพจน์ต่าง ๆ

#include <stdio.h>

#include <conio.h>

void main()

{

clrscr();

int a,b,c,d;

a=(3+4)*5;

b=3+4*5;

c=(2+7)*4%10;

d=2+7*4%10;

e=10+2*8/4*3-5;

printf("(3+4)*5 =%d\n",a);

printf("3+4*5 =%d\n",b);

printf("(2+7)*4%10 =%d\n",c);

printf("(2+7)*4%10 =%d\n",d);

printf("10+2*8/4*3-5 =%d\n",e);

getch();

}


ผลลัพธ์โปรแกรม

(3+4)*5=35

3+4*5=23

(2+7)*4%10=6

2+7*4%10=10

10+2*8/4*3-5=17


ตัวอย่างโปรแกรมคำนวณหาผลลัพธ์จากการหาร

#include <stdio.h>

#include <conio.h>

void main()

{

clrscr();

int a,b;

float c;

a=20;

b=6;

c=6;

printf("20/6 =%d\n",a/b); /*หารเอาเฉพาะส่วน*/

printf("20%6 =%d\n",a%b); /*หารเอาเฉพาะเศษ*/

printf("20/6 =%f\n",a/c); /*หารเอาทั้งเศษและส่วน*/

printf("20/6 =%.2f\n",a/c); /*แสดงผลทศนิยม 2 ตำแหน่ง*/

getch();

}

ผลลัพธ์โปรแกรม

20/6=3

20%6=2

20/6=3.333333

20/6=3.33