วันอังคารที่ 3 กรกฎาคม พ.ศ. 2555

การแสดงผลทางหน้าจอ

                                                        การแสดงผลออกทางหน้าจอ
          การทำงานพื้นฐานที่สึดหรือเรียกได้ว่าเป็นส่วนหนึ่งในการทำงานของทุกโปรแกรมคือ  การแสดงผลข้อมูลออกทางจอภาพ  โดยในภาษา C  นั้น  การแสดงผลข้อมูลออกทางจอสามารถทำได้ดังนี้
คำสั่ง printf
          คำสั่ง printf  ถือได้ว่าเป็นคำสั่งพื้นฐานที่สุดในการแสดงผลข้อมูลทุกชนิดออกทางหน้าจอไม่ว่าจะเป็นจำนวนเต็ม int ทศนิยม float ข้อความ string  หรืออักขระ  นอกจากนี้คำสั่งยังมีความยืดหยุ่นสูง  โดยเราสามารถกำหนดหรือจัดรูปแบบการแสดงผลให้มีระเบียบหรือเหมาะสมตามความต้องการได้อีกด้วย 
รูปแบบคำสั่ง prinft
printf ("format",variable);
format
     ข้อมูลที่ต้องการแสดงผลออกทางหน้าจอ  โดยข้อมูลนี้ต้องเขียนไว้ในเครื่องหมาย "  "  ข้อมูลที่สามารถแสดงผลได้มีอยู่ 2 ประเภท คือ  ข้อความธรรมดา  และค่าที่เก็บไว้ในตัวแปร  ซึ่งถ้าเป็นค่าที่เก็บไว้ในตัวแปรต้องใส่รหัสควบคุมรูปแบบให้ตรงกับชนิดของข้อมูลที่เก็บไว้ในตัวแปรนั้นด้วย
variable
     ตัวแปรหรือนิพจน์ที่ต้องการนำค่าไปแสดงผลให้ตรงกับรหัสควบคุมรูปแบบที่กำหนดไว้


รหัสควบคุมรูปแบบการแสดงผลค่าของตัวแปรออกทางหน้าจอ  แสดงได้ดังนี้
รหัสควบคุมรูปแบบ
การนำไปใช้งาน
%d
แสดงผลค่าของตัวแปรชนิดจำนวนเต็ม
%u
แสดงผลค่าของตัวแปรชนิดจำนวนเต็มบวก
%f
แสดงผลค่าของตัวแปรชนิดจำนวนทศนิยม
%c
แสดงผลอักขระ 1 ตัว
%s
แสดงผลข้อความ หรืออักขระมากกว่า 1 ตัว
  การนำอักขระควบคุมการแสดงผลมาใช้  เราต้องเขียนอักขระควบคุมการแสดงผลไว้ภายในเครื่องหมาย "  "  ดังตัวอย่าง
printf("Hello ... \n"); แสดงข้อความ Hello ...  แล้วขึ้นบรรทัดใหม่
printf("Hello...\nLampang\n");แสดงข้อความ Hello ...แล้วขึ้นบรรทัดใหม่พร้อมกับแสดงข้อความLampang จากนั้นขึ้นบรรทัดใหม่อีกครั้ง
printf("Num1 = %d\tNum2 = %f\n",x,z);แสดงข้อความ Num1 = 45  ตามด้วยการเว้นช่องว่าง 1 แท็บแล้วต่อด้วยข้อความ Num2 = 20.153

 
คำสั่งรับข้อมูลจากคีย์บอร์ด
          การทำงานของโปรแกรมส่วนใหญ่มักจะเป้นการเชื่อมโยงกับผู้ใช้แบบ  2  ทิศทาง  คือ  ทั้งภาคของการแสดงผลการทำงานออกทางหน้าจอ  และภาคของการรับข้อมูลจากผู้ใช้เข้ามาทางคีย์บอร์ด  เพื่อร่วมในการประมวลผลของโปรแกรม 
 
#include <stdio.h>
#include <conio.h>
void main()
{
   clrscr();
   prinft('Lampang Kunlayanee School\n");
   printf("Program C\n");
getch();
}
ผลลัพธ์โปรแกรม
Lampang Kunlayanee 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...\nLampang\n");แสดงข้อความ Hello ...แล้วขึ้นบรรทัดใหม่พร้อมกับแสดงข้อความLampang จากนั้นขึ้นบรรทัดใหม่อีกครั้ง
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
การเขียนโปรแกรมคำนวณื     เราสามารถคำนวณหาผลลัพทธ์ของนิพจน์คณิตศาสตร์ด้วยการเขียนโปรแกรมภาษาซี   ตัวอย่างต่อไปนี้เป็นการแสดงลำดับการประมวลผลทางคณิตศาสตร์ของนิพจน์ต่าง ๆ
  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

#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

ไม่มีความคิดเห็น:

แสดงความคิดเห็น