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

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

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

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


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

รหัสควบคุมรูปแบบ
การนำไปใช้งาน
%d
แสดงผลค่าของตัวแปรชนิดจำนวนเต็ม
%u
แสดงผลค่าของตัวแปรชนิดจำนวนเต็มบวก
%f
แสดงผลค่าของตัวแปรชนิดจำนวนทศนิยม
%c
แสดงผลอักขระ 1 ตัว
%s
แสดงผลข้อความ หรืออักขระมากกว่า 1 ตัว


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

printf("Hello Program C");แสดงข้อความ Hello Program C ออกทางขอภาพ
printf("Lampang kunlayanee school");แสดงข้อความ Lampang kunlayanee school ออกทางจอภาพ
printf("Lampang Thailand");แสดงข้อความ Lampang Thailand  ออกทางจอภาพ


#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

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

#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 

คำศัพท์ภาษา ซี 50 คำ

1.int main ( ) //<----------------------------------------- จุดเริ่มต้นโปรแกรม

2.{ //<------------------------------------------------------เริ่มต้นขอบเขต การทำงาน

3.int i = 10; //<--------------------------- ประกาศตัวแปร i เป็น Interger และให้ค่า 10

4.printf( "Value in i = %in", i ); //<------------------- พิมพ์ค่า i

5.return 0; //<------------------------------------------ จบโปรแกรมให้ค่าจบโปรแกรม 0

6.} //<---------------------------------------------------- สิ้นสุดขอบเขต การทำงาน

7.Value in i = 10
// MAIN.CPP

int main ( )
{
8.int i = 10; //<------ ประกาศตัวแปร i เป็น Interger และให้ค่า 10
9.long lvalue = 20; //<------ ประกาศตัวแปร lvalue เป็น long และให้ค่า 20
10.float fvalue = 30.0; //<------ ประกาศตัวแปร fvalue เป็น float และให้ค่า 30.0
11.printf( "Value in i = %in", i ); //<---------------%i พิมพ์ตัวแปรในรูปแบบ Integer
12.printf( "Value in lvalue = %in", lvalue );
13.printf( "Value in fvalue = %fn", fvalue ); //<-----%f พิมพ์ตัวแปรในรูปแบบ float
14.return 0;
15.// MAIN.CPP
16.int main ( )

{
17.int i = 10; //<----------------------------ประกาศตัวแปร i เป็น Interger และให้ค่า 10
18.long lvalue = 20; //<------------------ประกาศตัวแปร lvalue เป็น long และให้ค่า 20
19.float fvalue = 30.0; //<------------ประกาศตัวแปร fvalue เป็น float และให้ค่า 30.0
20char ch = 'A'; //<---------------------------------- ตัวแปร character ให้ค่าอักษร 'A'
21.char data[80] = "Sawasdee"; //<------------ ตัวแปร array character ให้ค่า ข้อความ Sawasdee

22.printf( "Value in i = %in", i );
23.printf( "Value in lvalue = %in", lvalue );
24.printf( "Value in fvalue = %fn", fvalue );
25.printf( "Value in ch = %cn", ch ); //<-----------พิมพ์ค่าใน ch รูปแบบ charecter
26.printf( "Value in data = %sn", data ); //<---------พิมพ์ค่าใน data รูปแบบ string
27.return 0;
}



{
28.int i = 10; //<----------------------------ประกาศตัวแปร i เป็น Interger และให้ค่า 10
29.long lvalue = 20; //<------------------ประกาศตัวแปร lvalue เป็น long และให้ค่า 20
30.float fvalue = 30.0; //<-------------ประกาศตัวแปร fvalue เป็น float และให้ค่า 30.0
31.char ch = 'A'; //<------------------------------------ ตัวแปร character ให้ค่าอักษร 'A'
32char data[80] = "Sawasdee"; //<------------ ตัวแปร array character ให้ค่า ข้อความ Sawasdee
33.printf( "Value in i = %in", i );
34.printf( "Value in lvalue = %in", lvalue );
35.printf( "Value in fvalue = %fn", fvalue );
36.printf( "Value in ch = %cn", ch ); //<---------- พิมพ์ค่าใน ch รูปแบบ charecter
37.int i = 10; //<----------------------------ประกาศตัวแปร i เป็น Interger และให้ค่า 10
38.long lvalue = 20; //<------------------ประกาศตัวแปร lvalue เป็น long และให้ค่า 20
39.float fvalue = 30.0; //<-------------ประกาศตัวแปร fvalue เป็น float และให้ค่า 30.0
40.char ch = 'A'; //<------------------------------------ตัวแปร character ให้ค่าอักษร 'A'
41.char data[80] = "Sawasdee"; //<------------ ตัวแปร array character ให้ค่าข้อความ Sawasdee

42.printf( "Value in i = %in", i );
43.printf( "Value in lvalue = %in", lvalue );
44.printf( "Value in fvalue = %fn", fvalue );
45.printf( "Value in ch = %cn", ch ); //<-----------พิมพ์ค่าใน ch รูปแบบ charecter
46.printf( "Value in data = %sn", data ); //<--------พิมพ์ค่าใน data รูปแบบ string
47.return 0;
}

48.Value in i = 10
49.Value in lvalue = 20
50.Value in fvalue = 30.000000
51.Value in ch = A