วันพุธที่ 8 กรกฎาคม พ.ศ. 2552

ตัวอย่างการใช้คำสั่ง

1. คำสั่ง scanf()

เป็นฟังก์ชันที่รับค่าจากอุปกรณ์นำเข้ามาตรฐาน และนำค่าที่ได้เก็บไว้ในตัวแปรในโปรแกรมรูปแบบคำสั่ง เมื่อโปรแกรมทำงานถึงฟังก์ชันนี้จะหยุดเพื่อให้ป้อนข้อมูล โดยข้อมูลที่ป้อนจะแสดงบนจอภาพ เมื่อป้อนข้อมูล

1. คำสั่ง scanf() เป็นฟังก์ชันที่รับค่าจากอุปกรณ์นำเข้ามาตรฐาน และนำค่าที่ได้เก็บไว้ในตัวแปรในโปรแกรม
รูปแบบคำสั่ง

เมื่อโปรแกรมทำงานถึงฟังก์ชันนี้จะหยุดเพื่อให้ป้อนข้อมูล โดยข้อมูลที่ป้อนจะแสดงบนจอภาพ เมื่อป้อนข้อมูลเสร็จกด Enter ข้อมูลทั้งหมดจะเก็บในตัวแปร var ชนิดของข้อมูลที่กำหนดให้กับตัวแปร var จะถูกกำหนดโดยตัวกำหนดชนิดข้อมูลซึ่งระบุในส่วนของ format code ตัวกำหนดชนิดข้อมูลของฟังก์ชัน scanf() จะเหมือนกับของฟังก์ชันprintf() ฟังก์ชัน scanf() จะทำให้เคอร์เซอร์ ขึ้นบรรทัดใหม่หลังจากกด Enter
ตัวอย่าง
#include "stdio.h"
#include "conio.h"

void main()
{
int a,b,c;
clrscr();
printf("Enter three integer numbers : ");
scanf("%d%d%d",&a,&b,&c);
printf("a = %d b = %d c = %d \n",a,b,c);
}
เป็นการป้อนเลขจำนวนเต็ม 3 ตัวให้กับตัวแปร a,b และ c ในการป้อนตัวเลขให้เว้น ช่องว่างระหว่างตัวเลขแต่ละชุดซึ่ง scanf() จะข้อมช่องว่างไปจนกระทั่งพบตัวเลขจึงจะอ่านข้อมูลอีกครั้ง


2. ฟังก์ชั่น printf() เป็นฟังก์ชั่นใช้ พิมพ์ค่าข้อมูลไปยังหน้าจอคอมพิวเตอร์
รูปแบบคำสั่ง
control string อาจจะเป็นตัวอักษร ข้อความหรือตัวกำหนดชนิดข้อมูล (specifier) ซึ่งใช้กำหนดชนิดข้อมูลที่จะพิมพ์ ตัวกำหนดชนิดข้อมูล
ตัวกำหนดชนิดข้อมูล
%c แทนตัวอักษร
%d แทนเลขจำนวนเต็ม
%e แทนเลขในรูปเอกซ์โพเนนเชียล (exponential form)
%f แทนเลขทศนิยม
%0 แทนเลขฐานแปด
%s แทนสตริงก์
%u แทนเลขจำนวนเต็มไม่คิดเครื่องหมาย
%x แทนเลขฐานสิบหก
%p แทนข้อมูลแบบพอยน์เตอร์ (pointer)
%% แทนเครื่องหมาย %

สามารถดัดแปลงเพื่อใช้เป็นตัวกำหนดชนิดข้อมูลอื่นๆได้โดย โมดิฟายเออร์ (modifier) l,h และL โมดิฟายเออร์ l จะสามารถใช้กับตัวกำหนดชนิดข้อมูล %d, %o , %u และ %x เพื่อใช้กับข้อมูลชนิดยาวเช่น %ld หมายถึงข้อมูลชนิดเลขจำนวนเต็มยาวโมดิฟายเออร์ h จะใช้ในลักษณะเดียวกันกับข้อมูลชนิดสั้น เช่น %hd หมายถึง ข้อมูลชนิดเลขจำนวนเต็มสั้น
สำหรับข้อมูลชนิดทศนิยมจะมีโมดิฟายเออร์ l และ L โดย l จะหมายถึงข้อมูลชนิดเลขจำนวนจริงละเอียด 2 เท่า ส่วน L จะหมายถึงข้อมูลชนิดเลขจำนวนจริงรายละเอียด 2 เท่า เช่น %lf หมายถึงข้อมูลชนิดเลขจำนวนจริงละเอียด 2 เท่า
ตัวอย่าง
#include
#include
void main(void)
{
int n;
clrscr();
n=100;
printf("Number = %d",n);
getch();
}

3. ฟังก์ชัน getchar() ฟังก์ชัน getchar() ใช้สำหรับป้อนตัวอักษรผ่านทางแป้นพิมพ์โดยจะรับตัวอักษรเพียง 1 ตัวเท่านั้น และแสดงตัวอักษรบนจอภาพ
รูปแบบคำสั่ง เมื่อโปรแกรมทำงานถึงคำสั่งนี้จะหยุดเพื่อให้ป้อนตัวอักษร 1 ตัว หลังจากนั้นกด Enter ตัวอักษรที่ป้อนจะถูกเก็บไว้ในตัวแปร ch ซึ่งเป็นชนิดตัวอักษรและเคอร์เซอร์จะขึ้นบรรทัดใหม่ ฟังก์ชัน getchar() กำหนดในไฟล์ stdio.h เช่นเดียวกับฟังก์ชัน scanf()
ตัวอย่าง
#include

void main()
{
char ch;
printf("Type one character ");
ch = getchar();
printf("The character you type is %c \n",ch);
printf("The character you typed is ");
putchar(ch);
}
การใช้ฟังก์ชัน putchar() แทน printf() จะพิมพ์ตัวอักษร 1 ตัว และเคอร์เซอร์จะไม่ขึ้นบรรทัดใหม่


4. คำสั่ง getche(); และ getch();
คำสั่ง getche(); จะรับตัวอักษร 1 ตัวที่ป้อนทางแป้นพิมพ์
รูปแบบคำสั่ง getche();
ความหมาย
ch หมายถึง ตัวแปรชนิดตัวอักษร

แสดงตัวอักษรบนจอภาพ เมื่อป้อนข้อมูลเสร็จไม่ต้องกด Enter และเคอร์เซอร์จะไม่ขึ้นบรรทัดใหม่ ฟังก์ชัน getch() จะคล้ายกับฟังก์ชัน getche() ต่างกันตรงที่จะไม่แสดงตัวอักษรขณะป้อนข้อมูล ฟังก์ชัน getche() และ getch() กำหนดในไฟล์ conio.h ดังนั้นจะต้องระบุไฟล์ดังกล่าวในโปรแกรม
ตัวอย่าง คำสั่ง getche();
#include "stdio.h"
#include "conio.h"
void main(void)
{
char answer;
clrscr();
printf("Enter A Character : ");
answer=getche();

printf("\n");
printf("A Character is : %c\n",answer);
getch();
}


คำสั่งgetch(); คือฟังก์ชันที่ใช้สำหรับรับข้อมูลชนิดตัวอักษร ผ่านแป้นพิมพ์ 1 ตัวอักษร
รูปแบบคำสั่ง getch();
จะไม่แสดงตัวอักษรบนจอภาพ เมื่อป้อนตัวอักษรเสร็จแล้ว ไม่ต้องกด Enter และเคอร์เซอร์จะไม่ขึ้นบรรทัดใหม่ และเป็นฟังก์ชันที่กำหนดอยู่ในไฟล์ conio.h รูปแบบคำสั่ง ความหมาย
ตัวอย่าง คำสั่ง getch();
#include
#include
void main(void)
{
char answer;
clrscr();
printf("Enter A Character : ");
answer=getch();
printf("\n");
printf("A Character is : ");
putchar(answer);
getch();
}


5. ฟังก์ชัน gets() ฟังก์ชัน gets() ใช้สำหรับข้อมูลชนิดสตริงก์หรือข้อความซึ่งป้อนทางแป้นพิมพ์
รูปแบบคำสั่ง
เมื่อโปรแกรมทำงานถึงคำสั่งนี้จะหยุดเพื่อให้ป้อนข้อความ เมื่อป้อนเสร็จแล้วกด Enter ข้อความ ทั้งหมดจะถูกเก็บไว้ในอาร์เรย์สตริงก์ str โดย carriage return (จากการกด Enter) จะแทนด้วยสตริงก์ศูนย์ ฟังก์ชัน gets() จะทำให้เคอร์เซอร์ขึ้นบรรทัดใหม่ หลังจากกด Enter กำหนดในไฟล์ stdio.h
ตัวอย่าง

#include”stdio.h”
main()
{
char message[50];
printf(“ Enter a message(less than 49 characters)\n”);
gets(message);
printf(“ The message you entered is %s\n”,message);
}

เสร็จกด Enter ข้อมูลทั้งหมดจะเก็บในตัวแปร var ชนิดของข้อมูลที่กำหนดให้กับตัวแปร var จะถูกกำหนดโดยตัวกำหนดชนิดข้อมูลซึ่งระบุในส่วนของ format code ตัวกำหนดชนิดข้อมูลของฟังก์ชัน scanf() จะเหมือนกับของฟังก์ชันprintf() ฟังก์ชัน scanf() จะทำให้เคอร์เซอร์ ขึ้นบรรทัดใหม่หลังจากกด Enter
ตัวอย่าง#include "stdio.h"#include "conio.h" void main() { int a,b,c; clrscr(); printf("Enter three integer numbers : "); scanf("%d%d%d",&a,&b,&c); printf("a = %d b = %d c = %d \n",a,b,c); }เป็นการป้อนเลขจำนวนเต็ม 3 ตัวให้กับตัวแปร a,b และ c ในการป้อนตัวเลขให้เว้น ช่องว่างระหว่างตัวเลขแต่ละชุดซึ่ง scanf() จะข้อมช่องว่างไปจนกระทั่งพบตัวเลขจึงจะอ่านข้อมูลอีกครั้ง2. ฟังก์ชั่น printf() เป็นฟังก์ชั่นใช้ พิมพ์ค่าข้อมูลไปยังหน้าจอคอมพิวเตอร์
รูปแบบคำสั่ง control string อาจจะเป็นตัวอักษร ข้อความหรือตัวกำหนดชนิดข้อมูล (specifier) ซึ่งใช้กำหนดชนิดข้อมูลที่จะพิมพ์ ตัวกำหนดชนิดข้อมูล
ตัวกำหนดชนิดข้อมูล
%c แทนตัวอักษร%d แทนเลขจำนวนเต็ม%e แทนเลขในรูปเอกซ์โพเนนเชียล (exponential form)%f แทนเลขทศนิยม%0 แทนเลขฐานแปด%s แทนสตริงก์%u แทนเลขจำนวนเต็มไม่คิดเครื่องหมาย%x แทนเลขฐานสิบหก%p แทนข้อมูลแบบพอยน์เตอร์ (pointer)%% แทนเครื่องหมาย %
สามารถดัดแปลงเพื่อใช้เป็นตัวกำหนดชนิดข้อมูลอื่นๆได้โดย โมดิฟายเออร์ (modifier) l,h และL โมดิฟายเออร์ l จะสามารถใช้กับตัวกำหนดชนิดข้อมูล %d, %o , %u และ %x เพื่อใช้กับข้อมูลชนิดยาวเช่น %ld หมายถึงข้อมูลชนิดเลขจำนวนเต็มยาวโมดิฟายเออร์ h จะใช้ในลักษณะเดียวกันกับข้อมูลชนิดสั้น เช่น %hd หมายถึง ข้อมูลชนิดเลขจำนวนเต็มสั้นสำหรับข้อมูลชนิดทศนิยมจะมีโมดิฟายเออร์ l และ L โดย l จะหมายถึงข้อมูลชนิดเลขจำนวนจริงละเอียด 2 เท่า ส่วน L จะหมายถึงข้อมูลชนิดเลขจำนวนจริงรายละเอียด 2 เท่า เช่น %lf หมายถึงข้อมูลชนิดเลขจำนวนจริงละเอียด 2 เท่าตัวอย่าง#include #include void main(void){int n;clrscr();n=100;printf("Number = %d",n);getch();}3. ฟังก์ชัน getchar() ฟังก์ชัน getchar() ใช้สำหรับป้อนตัวอักษรผ่านทางแป้นพิมพ์โดยจะรับตัวอักษรเพียง 1 ตัวเท่านั้น และแสดงตัวอักษรบนจอภาพ รูปแบบคำสั่ง เมื่อโปรแกรมทำงานถึงคำสั่งนี้จะหยุดเพื่อให้ป้อนตัวอักษร 1 ตัว หลังจากนั้นกด Enter ตัวอักษรที่ป้อนจะถูกเก็บไว้ในตัวแปร ch ซึ่งเป็นชนิดตัวอักษรและเคอร์เซอร์จะขึ้นบรรทัดใหม่ ฟังก์ชัน getchar() กำหนดในไฟล์ stdio.h เช่นเดียวกับฟังก์ชัน scanf() ตัวอย่าง#include void main() { char ch; printf("Type one character "); ch = getchar(); printf("The character you type is %c \n",ch); printf("The character you typed is "); putchar(ch);}การใช้ฟังก์ชัน putchar() แทน printf() จะพิมพ์ตัวอักษร 1 ตัว และเคอร์เซอร์จะไม่ขึ้นบรรทัดใหม่ 4. คำสั่ง getche(); และ getch();คำสั่ง getche(); จะรับตัวอักษร 1 ตัวที่ป้อนทางแป้นพิมพ์
รูปแบบคำสั่ง getche();ความหมายch หมายถึง ตัวแปรชนิดตัวอักษร
แสดงตัวอักษรบนจอภาพ เมื่อป้อนข้อมูลเสร็จไม่ต้องกด Enter และเคอร์เซอร์จะไม่ขึ้นบรรทัดใหม่ ฟังก์ชัน getch() จะคล้ายกับฟังก์ชัน getche() ต่างกันตรงที่จะไม่แสดงตัวอักษรขณะป้อนข้อมูล ฟังก์ชัน getche() และ getch() กำหนดในไฟล์ conio.h ดังนั้นจะต้องระบุไฟล์ดังกล่าวในโปรแกรม
ตัวอย่าง คำสั่ง getche();#include "stdio.h" #include "conio.h" void main(void){char answer;clrscr();printf("Enter A Character : ");answer=getche();printf("\n");printf("A Character is : %c\n",answer);getch();}
คำสั่งgetch(); คือฟังก์ชันที่ใช้สำหรับรับข้อมูลชนิดตัวอักษร ผ่านแป้นพิมพ์ 1 ตัวอักษร
รูปแบบคำสั่ง getch();จะไม่แสดงตัวอักษรบนจอภาพ เมื่อป้อนตัวอักษรเสร็จแล้ว ไม่ต้องกด Enter และเคอร์เซอร์จะไม่ขึ้นบรรทัดใหม่ และเป็นฟังก์ชันที่กำหนดอยู่ในไฟล์ conio.h รูปแบบคำสั่ง ความหมายตัวอย่าง คำสั่ง getch();#include #include void main(void){char answer;clrscr();printf("Enter A Character : ");answer=getch();printf("\n");printf("A Character is : ");putchar(answer);getch();}5. ฟังก์ชัน gets() ฟังก์ชัน gets() ใช้สำหรับข้อมูลชนิดสตริงก์หรือข้อความซึ่งป้อนทางแป้นพิมพ์ รูปแบบคำสั่งเมื่อโปรแกรมทำงานถึงคำสั่งนี้จะหยุดเพื่อให้ป้อนข้อความ เมื่อป้อนเสร็จแล้วกด Enter ข้อความ ทั้งหมดจะถูกเก็บไว้ในอาร์เรย์สตริงก์ str โดย carriage return (จากการกด Enter) จะแทนด้วยสตริงก์ศูนย์ ฟังก์ชัน gets() จะทำให้เคอร์เซอร์ขึ้นบรรทัดใหม่ หลังจากกด Enter กำหนดในไฟล์ stdio.hตัวอย่าง
#include”stdio.h”main(){char message[50];printf(“ Enter a message(less than 49 characters)\n”);gets(message);printf(“ The message you entered is %s\n”,message);}

ประวัติความเป็นมาของภาษ C
ภาษาซีเกิดขึ้นในปี ค.ศ.1972 โดย Dennis Ritchie แห่ง Bell Labs โดยภาษาซีนั้นพัฒนามาจาก ภาษา B และจากภาษา BCPL ซึ่งในช่วงแรกนั้นภาษาซีถูกออกแบบให้ใช้เป็นภาษาการเขียนโปรแกรมในระบบ UNIX และเริ่มมีคนสนใจมากขึ้นในปี ค.ศ.1978 เมื่อ Brain Kernighan ร่วมกับ Dennis Ritchie พัฒนามาตรฐานของภาษาซีขึ้นมา คือ K&R (Kernighan & Ritchie) และทั้งสองยังได้แต่งหนังสือชื่อว่า \"The C Programming Language\" โดยภาษาซีนั้นสามารถจะปรับใช้กับเครื่องคอมพิวเตอร์รูปแบบต่างๆได้ ต่อมาในช่วง ปี ค.ศ.1988 Ritchie และ Kernighan ได้ร่วมกับ ANSI (American National Standards Institute) สร้างเป็นมาตรฐานของภาษาซีขึ้นมาใหม่มีชื่อว่า "ANSI C"
ภาษาซีนั้นจัดเป็นภาษาที่ใช้ในการเขียนโปรแกรมที่นิยมใช้งาน ซึ่งภาษาซีจัดเป็นภาษาระดับกลาง (Middle-Level Language) เหมาะกับการเขียนโปรแกรมแบบโครงสร้าง (Structured Programming) โดยมีคุณสมบัติโดดเด่นอย่างหนึ่งคือ มีความยืดหยุ่นมาก กล่าวคือ สามารถทำงานกับเครื่องมือต่างๆ สามารถปรับเปลี่ยนการเขียนโปรแกรมในรูปแบบต่างๆได้ เช่น สามารถเขียนโปรแกรมที่มีความยาวหลายบรรทัดให้เหลือความยาว 2-3 บรรทัดได้ โดยมีการผลการทำงานที่เหมือนเดิมครับเหตุผลที่ควรเรียนภาษาซีก็เนื่องจากภาษาซีเป็นภาษาแบบโครงสร้างที่สามารถศึกษาและทำความเข้าใจได้ไม่ยาก อีกทั้งยังสามารถเป็นพื้นฐานในการเขียนโปรแกรมภาษาอื่นๆ ได้อีก เช่น C++, Perl, JAVA เป็นต้น

;;

Template by:
Free Blog Templates