วันอาทิตย์ที่ 28 มิถุนายน พ.ศ. 2558

รหัสควบคุม

รหัสควบคุม

                สำหรับรูปแบบของรหัสควบคุมนั้น จะเริ่มต้นด้วยตัวอักษร back slash(\) จากนั้นก็ตามด้วยตัวอักษรพิเศษ รหัสควบคุมที่นิยมใช้กันทั่วไปมีดังนี้คือ

ค่าคงที่ตัวอักษร 
รหัสควบคุม
Bell(Alert) 
\a
Backspace 
\b
Horizontal tab 
\t
Newline(Line Feed) 
\n
Vertical tab 
\v
Form feed
\f
Carriage return 
\r
Quotation mark(“) 
\”
Apostrophe(‘) 
\'
Null
\0

ตัวดำเนินการทางตรรกะ

ตัวดำเนินการทางตรรกะ

                ตัวดำเนินการทางตรรกะในโปรแกรมภาษาซี คือเครื่องหมายที่ใช้เชื่อมเงื่อนไข 2 เงื่อนไข หรือมากกว่า 2 เงื่อนไข เพื่อให้การเปรียบเทียบมีความละเอียดมากขึ้น ใช้สัญลักษณ์แทนในแต่ละเครื่องหมาย ดังตารางข้างล่างนี้

&&
จะให้ผลลัพธ์เป็นจริงเมื่อเงื่อนไขทั้งสองเป็นจริง แต่ถ้าเงื่อนไขใดเป็นเท็จ หรือทั้งสองเงื่อนไขเป็นเท็จจะทำให้ผลลัพธ์เป็นเท็จ
||
จะให้ผลลัพธ์เป็นจริงเมื่อเงื่อนไขใดเงื่อนไขหนึ่งเป็นจริง หรือเป็นจริงทั้งสองเงื่อนไข แต่ถ้าเป็นเท็จทั้งสองเงื่อนไขจะทำให้ผลลัพธ์เป็นเท็จ
!
จะให้ผลลัพธ์เป็นจริงเมื่อเงื่อนไขหลัง not เป็นเท็จ แต่ถ้าเงื่อนไขหลัง not เป็นจริงจะทำให้ผลลัพธ์เป็นเท็จ ตัวดำเนินการ ความหมาย ตัวอย่าง
&& 
และ (and) Mark>=80&&mark<=100
|| หรือ (or)
Score<0||score>100
!
ไม่ (not) !x&&!y

ตัวดำเนินการเปรียบเทียบ

ตัวดำเนินการเปรียบเทียบ

                ตัวดำเนินการเปรียบเทียบในโปรแกรมภาษาซีคือเครื่องหมายที่ใช้ในการเปรียบเทียบในทางคณิตศาสตร์
ผลลัพธ์จะมี 2 กรณีคือ ถ้าผลลัพธ์ถูกต้องหรือเป็นจริงจะมีค่าเป็น 1 ถ้าผลลัพธ์ผิดหรือเป็นเท็จจะมีค่าเป็น 0 ผลลัพธ์ของการเปรียบเทียบมีชื่อเรียกอีกอย่างหนึ่งว่าค่าคงที่บูลีน (Boolean Constant) ดังนี้
8 > 5  ผลลัพธ์เป็นจริง ค่าคงที่บูลีนเป็น 1
0 = 10 ผลลัพธ์เป็นเท็จ ค่าคงที่บูลีนเป็น 0
X > x  ผลลัพธ์เป็นจริง ค่าคงที่บูลีนเป็น 1(เปรียบเทียบค่าตามรหัสแอสกี)
A > B ผลลัพธ์เป็นจริง ค่าคงที่บูลีนเป็น 1(เปรียบเทียบค่าตามรหัสแอสกี)
ตัวดำเนินการ
ความหมาย
ตัวอย่าง
> 
มากกว่า (Greather Than)
X > y
< 
น้อยกว่า (Less Than)
X < y
>=
มากกว่าหรือเท่ากับ (Greather Than or Equal)
X >= y
<=
น้อยกว่าหรือเท่ากับ (Less Than or Equal)
X <= y
==
เท่ากับ (Equal)
X == y
!=
ไม่เท่ากับ (Not Equal)
X != y

ตัวดำเนินการคณิตศาสตร์

ตัวดำเนินการคณิตศาสตร์

                ในโปรแกรมภาษาซีจะใช้ตัวดำเนินการทางคณิตศาสตร์เป็นตัวเชื่อมในการเขียนโปรแกรม เพื่อหาผลลัพธ์จากการคำนวณ ซึ่งสามารถกระทำกับข้อมูลได้หลายรูปแบบ เช่น บวก ลบ คูณ หาร เปอร์เซ็นต์ ดังตัวอย่างในตารางข้างล่างนี้
ตัวดำเนินการ 
ความหมาย
ตัวอย่าง
บวก (Addition)
X + y
ลบ (Subtraction)
X – y
คูณ (Multiplication)
X * y
หาร (Division)
X / y
++ 
เพิ่มค่าครั้งละ 1(Increment)
X++
--
ลดค่าครั้งละ 1(Decrement)
X--
a% 
หารเอาผลลัพธ์เฉพาะเศษ (Modulus)
X % y

โครงสร้างของโปรแกรม

โครงสร้างของโปรแกรม

                โปรแกรมภาษาซีมีองค์ประกอบที่สำคัญ ส่วนคือไฟล์ส่วนหัวโปรแกรม และไฟล์โปรแกรม ไฟล์ส่วนหัวโปรแกรมเป็นไฟล์ที่ใช้เก็บไลบราลีเพื่อใช้รวม (include) ในการคอมไพล์โปรแกรมซึ่งจะมีส่วนขยายเป็น *.มีชื่อเรียกว่า Compiler Directive ไฟล์โปรแกรมจะเริ่มต้นด้วยฟังก์ชัน main() และตามด้วยเครื่องหมายปีกกาเปิด เพื่อเริ่มต้นเขียนโปรแกรม การเขียนโปรแกรมจะต้องเขียนด้วยอักษาภาษาอังกฤษตัวพิมพ์เล็กเสอม และเมื่อจบประโยคคำสั่ง จะใช้เครื่องหมายเซมิโคล่อน ( ; ) ในการคั่นแต่ละคำสั่ง ภายในโปรแกรมจะประกอบด้วยฟังก์ขันและส่วนของคำอธิบาย เมื่อเขียนคำสั่งเสร็จจะปิดท้ายโปรแกรมด้วยเครื่องหมายปีกกาปิดเสมอ
รูปภาพ แสดงโครงสร้างของโปรแกรมภาษาซี

#include<library>
/* ไฟล์ส่วนหัวโปรแกรม*/

void main(void)
/*ฟังก์ชันหลักของโปรแกรม*/

{
/*เริ่มต้นการเขียนโปรแกรมด้วยเครื่องหมายปีกกาเปิด*/

    variable declaration;
/*การประกาศค่าตัวแปรที่ใช้ในโปรแกรม*/

    program statement;
/*ประโยคคำสั่งในโปรแกรม*/

}
/*จบการเขียนโปรแกรมด้วยเครื่องหมายปีกกาปิด*/

#include<library>
เป็นส่วนหัวหัวโปรแกรมที่จะต้องเขียนไว้เพื่อให้ใช้งานฟังก์ชันต่างๆ ในกรณีที่ต้องการทราบว่าฟังก์ชันใดถูกนิยามไว้ที่ใดให้ทำแถบสีที่ฟังก์ชันดังกล่าวและกดปุ่ม Ctrl+f1
main
เป็นฟังก์ชันหลักของโปรแกรม
( ) 
ภายในวงเล็บเป็นค่าพารามิเตอร์ที่จะส่งผ่านไปทำงานยังฟังก์ชันอื่นๆ ถ้าไม่มีการ
ใส่ค่าแสดงว่าไม่ต้องการมีค่าพารามิเตอร์
{
ปีกกาเปิดแสดงการเริ่มต้นการเขียนโปรแกรม
variable declarations
ประกาศตัวแปร
program statement
การเขียนประโยคคำสั่ง
}
ปีกกาปิดแสดงการจบการเขียนโปรแกรม
/*ข้อความ*/
คำอธิบายโปรแกรม ใช้ในการอธิบายความหมายของคำสั่งหรือสิ่งที่ต้องการเขียน
ไว้กันลืมจะไม่มีผลใดๆกับโปรแกรม แต่การเขียนจะต้องเริ่มต้นด้วยเครื่องหมาย /* และจบด้วยเครื่องหมาย*/

ฟังก์ชัน (Function )

ฟังก์ชัน (Function )

ฟังก์ชัน clrscr(); เป็นฟังก์ชันที่ใช้ในการลบจอภาพ

ฟังก์ชัน printf(); เป็นฟังก์ชันที่ใช้ในการแสดงผลข้อมูลที่อยู่ในตัวแปร ค่าคงที่ และนิพจน์ออกจอภาพ
ตัวอย่างที่ 1
printf(“Lampang”);   ความหมาย แสดงข้อความ Lampang ออกทางจอภาพ
ตัวอย่างที่ 2
printf(“%d”,num);     ความหมาย แสดงค่าตัวแปร num ในรูปเลขจำนวนเต็ม
ตัวอย่างที่ 
printf(“5.2f”,area);   ความหมาย แสดงค่าที่เก็บอยู่ในตัวแปร area โดยจองพื้นที่ไว้ 5ช่อง
                                                ทศนิยม ตำแหน่ง

ฟังก์ชัน scanf(); เป็นฟังก์ชันที่ใช้ในการรับข้อมูลจากแป้นพิมพ์เข้ามาเก็บไว้ในตัวแปร
ตัวอย่าง
scanf(“%d”,&num);   ความหมาย รับค่าตัวเลขจำนวนเต็มแล้วนำมาเก็บไว้ในตัวแปรnum

ฟังก์ชัน getch();  เป็นฟังก์ชันที่ใช้ในการรอรับการกดแป้นพิมพ์หนึ่งครั้ง โดยไม่ต้องกดปุ่ม Enter
                          และตัวอักษรที่ป้อนเข้ามาจะไม่ปรากฏบนจอภาพ

ฟังก์ชัน getchar(); เป็นฟังก์ชันที่ใช้ในการรับข้อมูลเข้ามาทางแป้นพิมพ์ทีละ ตัวอักษร แล้วกดEnter 1 ครั้ง
                            ข้อมูลที่ป้อนจะแสดงบนจอภาพ

ฟังก์ชัน gets();  เป็นฟังก์ชันที่ใช้ในการรับข้อมูลที่เป็นข้อความจากแป้นพิมพ์เข้ามาเก็บไว้ในตัวแปรแบบอาเรย์
                        การใช้ฟังก์ชัน gets(); จะต้องมีการประกาศตัวแปรแบบอาเรย์ และกำหนดจำนวนตัวอักษรที่ต้องการป้อน
                        โดยคอมพิวเตอร์จะจองพื้นที่ไว้ตามจำนวนตัวอักษร แต่จะป้อนได้น้อยกว่าที่จองไว้ 1ตัว เพื่อให้ตัวแปรเก็บ 0
                        อีก ตัว

ฟังก์ชัน textcolor();  เป็นฟังก์ชันที่ใช้ในการกำหนดสีตัวอักษร โดยจะต้องใช้ร่วมกับฟังก์ชัน cprintfซึ่งมีสีต่างๆ ให้เลือก
                               ตัวเลขค่าสีอาจจะพิมพ์เป็นตัวเลขหรือชื่อสีเป็นภาษาอังกฤษตัวพิมพ์ใหญ่ก็ได้
ตัวอย่างที่
textcolor(4);
cprintf(“Lampang”);
ความหมาย แสดงข้อความ Lampang เป็นสีแดง
ตัวอย่างที่
textcolor(MAGENTA);
cprintf(“BANGKOK”);
ความหมาย แสดงข้อความ BANGKOK เป็นสีม่วง

ตัวเลขค่าสี
สีที่ปรากฏ
(BLACK) ดำ
(BLUE) น้ำเงิน
(GREEN) เขียว
(CYAN) ฟ้า
(RED) แดง
5
(MAGENTA) ม่วง
(BROWN) น้ำตาล
(LIGHTGRAY) เทาสว่าง
(DARKGRAY) เทาดำ
(LIGHTBLUE) น้ำเงินสว่าง
10 
(LIGHTGREEN) เขียวสว่าง
11 
(LIGHTCYAN) ฟ้าสว่าง
12 
(LIGHTRED) แดงสว่าง
13 
(LIGHTMAGENTA) ม่วงสว่าง
14 
(YELLOW) เหลือง
15
(WHITE) ขาว

ฟังก์ชัน cprintf(); เป็นฟังก์ชันที่ใช้ในการพิมพ์ข้อความเหมือนฟังก์ชัน printf แต่จะแสดงเป็นสีต่างๆ ตามที่กำหนดไว้ในฟังก์ชัน                           textcolor การใช้ฟังก์ชัน cprintf ต้องกำหนดสีของตัวอักษรใน ฟังก์ชัน textcolor ก่อน
ตัวอย่างที่ 
textcolor(5);
printf(“Lampang”);   ความหมาย แสดงข้อความ Lampang ออกทางจอภาพ
ตัวอย่างที่ 
textcolor(15);
printf(“%d”,num);     ความหมาย
 แสดงค่าตัวแปร num ในรูปเลขจำนวนเต็ม
ตัวอย่างที่ 3
textcolor(7);
printf(“5.2f”,area);   ความหมาย แสดงค่าที่เก็บอยู่ในตัวแปร areaโดยจองพื้นที่ไว้ ช่อง
                                                ทศนิยม ตำแหน่ง

้ฟังก์ชัน textbackground(); เป็นฟังก์ชันที่ใช้ในการกำหนดสีพื้นให้กับตัวอักษร
ตัวอย่าง
textbackground(14)
ความหมาย กำหนดสีพื้นเป็นสีเหลือง

คำสงวน (Reserved Words)


คำสงวน (Reserved Words)

 คำสงวนคือคำที่กำหนดขึ้นในภาษาซีเพื่อให้มีความหมายอย่างใดอย่างหนึ่ง และนำไปใช้งานแตกต่างกัน การประกาศค่าตัวแปรจะต้องไม่ให้ซ้ำกับคำสงวน
Auto
Break
Case
Char
Const
Default
Do
Double
Else
Enum
Short
Signed
Sizeof
Extern
Float
For
Goto
If
Int
Long
Return
Register
Continue
While
Static
Struct
Switch
Typedef
Unon
Unsigned
Void
volatile

ตัวแปร (variable)

ตัวแปร (variable)

   ตัวแปร (variable)  คือชื่อที่ผู้เขียนโปรแกรมตั้งขึ้น เพื่อใช้เก็บค่าที่ต้องการนำมาใช้งานในการเขียนโปรแกรม เพื่อทำการประมวลผลข้อมูล โดยมีกฏในการตั้งชื่อตัวแปรดังนี้
1.
ต้องขึ้นต้นด้วยตัวอักษร ตัวต่อไปอาจจะเป็นตัวอักษรหรือตัวเลขก็ได้
2.
ห้ามใช้สัญลักษณ์อื่นใด ยกเว้นเครื่องหมายสตริงก์ ($) และขีดล่าง (Underscore)
3.
ตัวแปรอักษรภาษาอังกฤษตัวพิมพ์เล็กและตัวพิมพ์ใหญ่มีความหมายแตกต่างกัน
4.
ห้ามเว้นวรรคระหว่างตัวแปร
5.
ห้ามตั้งชื่อซ้ำกับคำสงวนในภาษาซ
                
ก่อนที่จะนำตัวแปรไปใช้งาน ในภาษาซีจะต้องมีการประกาศค่าตัวแปรให้สอดคล้องกับข้อมูลที่จะนำไปใช้โดยมีรูปแบบดังนี้ 
รูปแบบ
Type varible name
type
ชนิดของตัวแปร ซึ่งอาจจะป็น char, int, float, double หรือตัวแปรชนิดอื่นๆ เป็นต้น
variable name
ชื่อของตัวแปร ถ้ามีมากกว่า ตัวให้ใช้เครื่องหมายคอมม่าคั่น
ตัวอย่างการประกาศตัวแปร
char n;
ประกาศค่าตัวแปรชื่อ เป็นข้อมูลชนิด character
float a,b,c;
ประกาศค่าตัวแปรชื่อ a,b,c เป็นข้อมูลชนิด float
int number=1;
ประกาศค่าตัวแปรชื่อ number เป็นข้อมูลชนิด integer และกำหนดให้ตัวแปร count มีค่าเท่ากับ 1
char name[15];
ประกาศตัวแปรชื่อ name เป็นลักษณะตัวแปรชุดเก็บชื่อยาวไม่เกิน 15 ตัวอักษร
           

ชนิดของข้อมูล


ชนิดของข้อมูล

        ภาษาซีเป็นอีกภาษาหนึ่งที่มีชนิดของข้อมูลให้ใช้งานหลายอย่างด้วยกัน ซึ่งชนิดของข้อมูลแต่ละอย่างมีขนาดเนื้อที่ที่ใช้ในหน่วยความจำที่แตกต่างกัน และเนื่องจากการที่มีขนาดที่แตกต่างกันนั้นเอง ทำให้มีความสามารถในการจัดเก็บข้อมูลแต่ละประเภทแตกต่างกันไป ดังนั้นในการเลือกงานประเภทข้อมูลก็ควรจะคำนึงถึงความจำเป็นในการใช้งานด้วย สำหรับประเภทของข้อมูลมีดังนี้คือ
ข้อมูลชนิดตัวอักษร (Character) 
คือข้อมูลที่เป็นรหัสแทนตัวอักษรหรือค่าจำนวนเต็ม ได้แก่ ตัวอักษร ตัวเลขและกลุ่มตัวอักขระพิเศษใช้พื้นที่ในการเก็บข้อมูล ไบต ์
2

ข้อมูลชนิดจำนวนเต็ม (Integer)

คือข้อมูลที่เป็นเลขจำนวนเต็ม ได้แก่ จำนวนเต็มบวก จำนวนเต็มลบ และศูนย์ ข้อมูลชนิดจำนวนเต็มใช้พื้นที่ในการเก็บข้อมูล ขนาด ไบต์
3
ข้อมูลชนิดจำนวนเต็มที่มีขนาด 2เท่า (Long Integer)
คือข้อมูลที่เป็นเลขจำนวนเต็ม ใช้พื้นที่ในการเก็บเป็น เท่าของ Integer คือมีขนาด ไบต ์
4
ข้อมูลชนิดเลขทศนิยม (Float)
คือข้อมูลที่เป็นเลขทศนิยม ขนาด ไบต์
5
ข้อมูลชนิดเลขทศนิยมอย่างละเอียด (Double)
คือข้อมูลที่เป็นเลขทศนิยม ใช้พื้นที่ในการเก็บข้อมูลเป็น 2เท่าของ float คือมีขนาด ไบต์