วันเสาร์ที่ 29 สิงหาคม พ.ศ. 2552

ภาษาซี (การแสดงผลและการรับข้อมูล)








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


          การทำงานพื้นฐานที่สึดหรือเรียกได้ว่าเป็นส่วนหนึ่งในการทำงานของทุกโปรแกรมคือ  การแสดงผลข้อมูลออกทางจอภาพ  โดยในภาษา
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






   

H-o-M-e




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

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

DEVELOPER ZOne