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

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

ตัวอย่าง
#include
#include
main()
{
int x,y;
x=5;
y=6;
printf("%d\n",x);
printf("%c\n",x);
printf("%d %d\n",x,y);
printf("%d\n"125);
printf("%c\n"125);
printf("The total is $ %6.2f\n",12.5);
printf("The total is $ %6.3f\n",12.5);
}
ฟังก์ชัน scanf()
ฟังก์ชั่นนี้จะตรงข้ามกับฟังก์ชั่น printf() โดยจะใช้อ่านค่าจากการกดป้นพิมพ์ที่อยู่ในรูป
รหัส ASCII ไปเก็บในตัวแปรที่กำหนด และสามารถใช้เป็นรหัสควบคุมหรือ Control string
ระบุชนิดของข้อมูลที่จะเก็บในตัวแปรได้
รูปแบบคำสั่ง scanf()

ตัวอย่าง
#include
#include
main
{
int feet,inches;
printf("Enter number of feet");
scanf("%d",&feet);
inches = feet*12;
printf("%d inches ",inches);
}
ฟังก์ชัน getchar()
getchar() รับข้อมูลตัวอักขระหนึ่งตัวเมื่อป้อนข้อมูลแล้วต้องกด
รูปแบบคำสั่ง getchar()

เมื่อโปรแกรมทำงานถึงคำสั่งนี้จะหยุดเพื่อให้ป้อนตัวอักษร 1 ตัว หลังจากนั้นกด Enter ตัวอักษรที่ป้อนจะถูกเก็บไว้ในตัวแปร ch ซึ่งเป็นชนิดตัวอักษรและเคอร์เซอร์จะขึ้นบรรทัดใหม่ ฟังก์ชัน getchar() กำหนดในไฟล์ stdio.h เช่นเดียวกับฟังก์ชัน scanf()
ตัวอย่าง
#include
#include
main()
{
int number1,number2;
printf("please input number1:");
scanf("%d",&number1:);
printf("please input number2:");
scanf("%d",&number2:);
printf("%d+%d=%d",number1,number2,number1+number2);
getchar();
getchar();
}
ฟังก์ชัน getch( )
เป็นฟังก์ชันที่ใช้รับข้อมูลเพียง 1 ตัวอักขระเหมือนกับฟังก์ชัน getchar( ) แตกต่างกันตรงที่เมื่อใช้ฟังก์ชันนี้รับข้อมูล ข้อมูลที่ป้อนเข้าไปจะไม่ปรากฏให้เห็นบนจอภาพและไม่ต้องกดแป้น enter ตาม
รูปแบบคำสั่ง getch()

โดยที่ getch( ) คือ ฟังก์ชันที่ใช้รับข้อมูลเพียง 1 ตัวอักขระจากคีย์บอร์ด โดยฟังก์ชันนี้จะไม่มี argument ดังนั้นอาจจะใช้ getch(void) แทนคำว่า getch( ) ก็ได้ แต่นิยมใช้ getch( ) มากกว่า
char_var คือ ตัวแปรชนิด char ซึ่งจะเก็บข้อมูล 1 ตัวอักขระที่ป้อนผ่านทางคีย์บอร์ด
ฟังก์ชัน gets
ฟังก์ชัน gets() ใช้สำหรับข้อมูลชนิดสตริงก์หรือข้อความซึ่งป้อนทางแป้นพิมพ์
รูปแบบคำสั่ง gets()

เมื่อโปรแกรมทำงานถึงคำสั่งนี้จะหยุดเพื่อให้ป้อนข้อความ เมื่อป้อนเสร็จแล้วกด Enter ข้อความทั้งหมดจะถูกเก็บไว้ในอาร์เรย์สตริงก์ str โดย carriage return ( จากการกด Enter) จะแทนด้วยสตริงก์ศูนย์ดังได้กล่าว ฟังก์ชัน gets() จะทำให้เคอร์เซอร์ขึ้นบรรทัดใหม่หลังจากกด Enter และกำหนดในไฟล์ stdio.h
ตัวอย่าง
#include
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 a message(less than 49 characters)
Kiss and say good-bye
The message you entered is Kiss and say good-bye

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

ประวัติภาษาซี

ภาษาซีเป็นภาษาที่ถือว่าเป็นทั้งภาษาระดับสูงและระดับต่ำ ถูกพัฒนาโดยเดนนิส ริดชี (Dennis ritche) แห่งห้องทดลองเบลล์ (Bell laboratories) ที่เมอร์รีฮิล มลรัฐนิวเจอร์ซี่ โดยเดนนิสได้ใช้หลักการของภาษา บีซีพีแอล (BCPL : Basic Combine Programming Language) ซึ่งพัฒนาขึ้นโดยเคน ทอมสัน (Ken tomson) การออกแบบและพัฒนาภาษาซีของเดนนิส ริดชี มีจุดมุ่งหมายให้เป็นภาษาสำหรับใช้เขียนโปรแกรมปฏิบัติการระบบยูนิกซ์ และได้ตั้งชื่อว่า ซี (C) เพราะเห็นว่า ซี (C) เป็นตัวอักษรต่อจากบี (B) ของภาษา BCPL ภาษาซีถือว่าเป็นภาษาระดับสูงและภาษาระดับต่ำ ทั้งนี้เพราะ ภาษาซีมีวิธีใช้ข้อมูลและมีโครงสร้างการควบคุมการทำงานของโปรแกรมเป็นอย่างเดียวกับภาษาของโปรแกรมระดับสูงอื่นๆ จึงถือว่าเป็นภาษาระดับสูง ในด้านที่ถือว่าภาษาซีเป็นภาษาระดับต่ำ เพราะภาษาซีมีวิธีการเข้าถึงในระดับต่ำที่สุดของฮาร์ดแวร์ ความสามารถทั้งสองด้านของภาษานี้เป็นสิ่งที่เกื้อหนุนซึ่งกันและกัน ความสามารถระดับต่ำทำให้ภาษาซีสามารถใช้เฉพาะเครื่องได้ และความสามารถระดับสูง ทำให้ภาษาซีเป็นอิสระจากฮาร์ดแวร์ ภาษาซีสามารถสร้างรหัสภาษาเครื่องซึ่งตรงกับชนิดของข้อมูลนั้นได้เอง ทำให้โปรแกรมที่เขียนด้วยภาษาซีที่เขียนบนเครื่องหนึ่ง สามารถนำไปใช้กับอีกเครื่องหนึ่งได้ ประกอบกับการใช้พอยน์เตอร์ในภาษาซี นับได้ว่าเป็นตัวอย่างที่ดีของการเป็นอิสระจากฮาร์ดแวร

ภาษาซีเป็นภาษาที่มีลักษณะเด่นพอสรุปได้ดังนี้

- เป็นภาษาคอมพิวเตอร์ที่มีการพัฒนาขึ้นใช้งานเพื่อเป็นภาษามาตรฐานที่ไม่ขึ้นกับโปรแกรมจัดระบบงานและไม่ขึ้นกับฮาร์ดแวร์

- เป็นภาษาคอมพิวเตอร์ที่อาศัยหลักการที่เรียกว่า "โปรแกรมโครงสร้าง" จึงเป็นภาษาที่เหมาะกับการพัฒนาโปรแกรมระบบ

- เป็นคอมไพเลอร์ที่มีประสิทธิภาพสูง ให้รหัสออบเจ็กต์สั้น ทำงานได้รวดเร็ว เหมาะกับงานที่ต้องการ ความรวดเร็วเป็นสำคัญ

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

- มีความคล่องตัวที่จะประยุกต์เข้ากับงานต่างๆ ได้เป็นอย่างดี การพัฒนาโปรแกรม เช่น เวิร์ดโพรเซสซิ่ง สเปรดชีต ดาตาเบส ฯลฯ มักใช้ภาษาซีเป็นภาษาสำหรับการพัฒนา

- เป็นภาษาที่มีอยู่บนเกือบทุกโปรแกรมจัดระบบงาน มีในเครื่องไมโครคอมพิวเตอร์ตั้งแต่ 8 บิต ไปจนถึง 32 บิต เครื่องมินิคอมพิวเตอร์ และเมนเฟรม

- เป็นภาษาที่รวมข้อดีเด่นในเรื่องการพัฒนา จนทำให้ป็นภาษาที่มีผู้สนใจมากมายที่จะเรียนรู้หลักการของภาษา และวิธีการเขียนโปรแกรม ตลอดจนการพัฒนางานบนภาษานี้