ชีวิตไม่มีคำว่าท้อ ถ้ายังไม่ได้ลองทำมัน เอ๊า สู้ๆๆๆๆๆๆๆๆ

จะท้อไม่ได้ เราต้องทำได้

วันอังคารที่ 21 มิถุนายน พ.ศ. 2554

บทที่2 ภาษา C

วัตถุประสงค์
  1. เข้าใจรูปแบบคำสั่งที่ใช้ในภาษา C
  2. เข้าใจวิธีการดำเนินการ
  3. เข้าใจวิธีการวนรอบ
  4. สมารถสร้างโปรแกรมที่เกี่ยวข้องกับการจัดการหน่วยความจำ
  5. สามารถสร้างเงือ่นไขและการกำหนดเงื่อนไขต่างๆ
สารบัญ  (Contents)
คำสั่งพื้นฐานต่างๆ - ตัวดำเนินการ (Operator) - Selection/Condition - Function
- printf : ใช้แสดง ข้อความหรือ ข้อมูลจากค่าคงที่ และตัวแปรที่จอภาพ
เช่น printf  (“abc”);
printf (“%s”,”abc”);
-scanf : ใช้รับข้อมูลจากแป้นพิมพ์ แล้วจัดเก็บลงในหน่วยความจำของข้อมูล
เช่น scanf (“%d”,&x);

Format Code
ความหมาย
%d
ใช้กับข้อมูลแบบ integer(เก็บข้อมูลแบบตัวเลขจำนวนเต็ม)
%c
ใช้กับข้อมูลแบบ character(เก็บข้อมูลแบบอักขระ)
%f
ใช้กับข้อมูลแบบ floating(เก็บข้อมูลแบบตัวเลขทศนิยม),double
%s
ใช้กับข้อมูลแบบ string
 
2.ตัวดำเนินการ(Operator) 
แบ่งออกเป็น 3 ชนิด  คือ 2.1 เครื่องหมายการคำนวณทางคณิตศาสตร์(Arithmetic Operation) ได้แก่ +,-,*,/,%,--,++
2.2 ตัวดำเนินการเปรียบเทียบ(Relational and Equality Operators) ได้แก่ < , > , <= , >= , == , !=
2.3 ตัวดำเนินการตรรกะ(Logical Operators) การดำเนินการเปรียบเทียบค่าทางตรรกะ( และ หรือ ไม่) ได้แก่  ! , && , ||
 
นิพจน์ (Expression) หมายถึง การนำตัวแปรค่าคงที่มาสัมพันธ์กัน โดยใช้เครื่องหมายอย่างใดอย่างหนึ่ง เช่น   x + 1 a * b / c
นิพจน์จะทำงานจากซ้ายไปขวา ส่วนใหญ่นิพจน์ที่เขียนขึ้นในโปรแกรมมักจะซับซ้อน มีการดำเนินการหลายอย่างปะปนอยู่ภายในนิพจน์เดียวกัน

ลำดับความสำคัญ
ลำดับความสำคัญจากสูงไปต่ำ
1
( )
2
!,++,- -
3
*,/,%
4
+,-
5
<,<=,>,>=
6
= =,!=
7
&&
8
||
2.3 ทางเลือก/ลักษณะ(selection/Condition)
if statement
Format :  if (เงื่อนไข) คำสั่ง;
- รูปแบบ 1: if statement Format :
    if (เงื่อนไข)
คำสั่ง;

-รูปแบบ 2 : if-else statement Format :
if (เงื่อนไข)
คำสั่งชุดที่ 1(กรณีเงื่อนไขเป็นจริง);
       else
คำสั่งชุดที่ 2(กรณีเงื่อนไขเป็นจริง);

-รูปแบบ 3: if-else statement (Nested if) Format :
   If (เงื่อนไขประโยคที่ 1)
คำสั่งชุดที่ 1 ; (กรณีเงื่อนไขประโยคที่ 1 เป็นจริง)
             else if (เงื่อนไขประโยคที่ 2)
คำสั่งชุดที่ 2 ; (กรณีเงื่อนไขประโยคที่ 2 เป็นจริง)
             else
คำสั่งชุดที่ n ; (นอกเหนือจากเงื่อนไขประโยคข้างต้น)
คำสั่งชุดถัดไป

-รู ปแบบ 4: switch statement Format :
switch (var / expression) {
                        case ค่าที่ 1 : คำสั่งชุด 1;
                                                     break;
                        case ค่าที่ 2 : คำสั่งชุด 2;
                                                     break;
                      case ค่าที่ n : คำสั่งชุด n;
                                                      break;
                     default: คำสั่ง;
              }

คำสั่ง switch
โยคเงื่อนไขแบบ 1ประโยค ไม่สามารถใช้
เงื่อนไขแบบซ้อนได้  switch จะต้องมีคำสั่ง break เพื่อออกจากการทำงานของ case นั้น โดยไม่ต้องผ่าน case ถัดไป
3. การทำซ้ำ(Repetition/Loop) -while statement Format :
-for statement Format :
  for (ตัวแปร = ค่าเริ่มต้น ; นิพจน์ตรรกะ ; ค่าเพิ่มหรือค่าลดและจะต้องเป้นจำนวนเต็มเท่านั้น)
4.ฟังก์ชัน(Function)
ข้อดี

-เขียน Code ครั้งเดียว แต่สามารถเรียกใช้ได้หลายครั้ง

-สามารถนำหลับมาใช้ใหม่ในโปรแกรมอื่นได้

-ถ้าต้องการเปลี่ยนแปลงแก้ไขเพียงที่เดียว

-ทำให้โปรแกรมมีความเป็นโครงสร้าง

-สามารถแบ่งเป็นโมดูลย่อยๆได้

ฟังก์ชันแบ่งเป็น 2 ประเภท คือ 1. Library Function ฟังก์ชันมาตรฐานหรือไลบรารีฟังก์ชัน ฟังก์ชันที่ใช้ในงานนี้ เป็นรูปแบบฟังก์ชันที่ต้องมีการส่งค่ากลับ ดังนั้นตัวแปรที่จะใช้งานต้องเป็นตัวเลขกลุ่มทศนิยม เช่น float, double เป็นต้น
วิธีเรียกใช้งาน Library Function -เรียกชื่อของฟังก์ชันที่ต้องการใช้งาน -เอาค่าที่จะส่งไปทำงานในฟังก์ชัน ใส่ลงในวงเล็บตามหลังชื่อฟังก์ชันนั้น
ตัวอย่าง Library Function strcpy () –อยู่ในแฟ้มข้อมูล string.h ทำหน้าที่ : คัดลอกข้อมูลจาก string หนึ่งไปยัง string หนึ่ง Format : strcpy (str1, str2);
strcat () -อยู่ในแฟ้มข้อมูล string.h ทำหน้าที่ : ใช้เชื่อมต่อข้อความ 2 ข้อความเข้าด้วยกัน Format : strcat (str1, str2);
strlen () -อยู่ในแฟ้มข้อมูล string.h ทำหน้าที่ : หาความยาวของข้อความ Format : 
strlen (string);
getchar () –อยู่ในแฟ้มข้อมูล stdio.h ทำหน้าที่ : เป็นพังก์ชั่นรับข้อมูลเข้าทางคีย์บอร์ดครั้งละ 1 อักขระโดยต้องกด enter  และข้อมูลที่ป้อนเข้าจะปรากฏทางจอภาพ Format : 
getchar ();
getch() –อยู่ในแฟ้มข้อมูล stdio.h ทำหน้าที่ : เป็นฟังก์ชั่นรับข้อมูลเข้าทางคีย์บอร์ดครั้งละ 1 อักขระ โดยไม่ต้องกด enter  และข้อมูลที่ป้อนเข้าจะไม่ปรากฏทางจอภาพ Format :
  getchar ();
gets( ) -อยู่ในแฟ้มข้อมูล stdio.h ทำหน้าที่ : เป็นฟังก์ชั่นรับข้อมูลที่เป็นข้อความจากแป้นพิมพ์ เข้ามาเก็บไว้ในตัวแปรชุด (อาร์เรย์) Format : 
gets ();
putchar(); -อยู่ในแฟ้มข้อมูล stdio.h ทำหน้าที่ : เป็นฟังก์ชั่นให้แสดงผลทางจอภาพครั้งละ 1 อักขระ Format :
putchar ();
2.การสร้างฟังก์ชันใช้เอง (User defined function) เป็นฟังก์ชันที่ผู้เขียนโปรแกรมนิยามขึ้นใหม่ โดยอาจจะเขียนรวมไว้ในตัวโปรแกรมต้นฉบับเดียวกัน หรือเขียนแยกไว้ในไฟล์อื่น ซึ่งจะนำมาแปลร่วมโดยการใช้ Include Directives เช่นเดียวกับฟังก์ชันมาตรฐานการสร้าง Function ประกอบด้วย - Function Definition หรือนิยามฟังก์ชัน คือ รายละเอียดในการทำงานของฟังก์ชัน Format :
-Invocation คือการเรียกใช้ฟังก์ชัน ลักษณะของฟังก์ชัน -ฟังก์ชันที่ไม่มีการส่งค่ากลับ การเรียกใช้ทำได้โดยอ้างถึงชื่อฟังก์ชัน   Print_banner () ; -ฟังก์ชันที่มีการส่งค่ากลับ การเรียกใช้ทำได้เหมือนแบบแรก แต่ต้องมีตัวแปรมารับค่าด้วย การเรียกใช้ทำได้โดย
int main(void) {
   int k, j;
   j = prompt ();
   k = prompt ();
printf(“j = %d and k = %d”, j, k);
- ฟังก์ชันที่มีการรับค่า argument การเรียกใช้ฟังก์ชันทำได้โดยอ้างถึงชื่อของฟังก์ชันพร้อมทั้งส่งค่าของตัวแปร(parameter)ไปด้วย โดยจะต้องมีชนิดสอดคล้องกับ argument ของฟังก์ชัน ที่เรียกใช้
การผ่านค่า Argument ให้ฟังก์ชัน ทำได้ 2 แบบ คือ 1) Pass by Value คือ การส่งค่าไปยังฟังก์ชันที่ถูกเรียกใช้โดยส่งค่าของตัวแปรหรือค่าที่ส่งไปโดยค่าคงที่ผ่านให้กับค่าฟังก์ชันจะถูกคัดลอกส่งให้กับ ฟังก์ชันและจะถูกเลี่ยนแปลงเฉพาะภายในฟังก์ชัน โดยค่าของ argumentในโปรแกรมที่เรียกใช้จะไม่มีการเปลี่ยนแปลง
2) Pass by Reference คือ การส่งค่าไปยังฟังก์ชันที่ถูกเรียกใช้โดยส่งเป็นตำแหน่งที่อยู่ของตัวแปรไป ซึ่งหากภายในฟังก์ชันก็มีการเปลี่ยนแปลงค่าของ argument ที่ส่งไป ก็จะมีผลทำให้ค่าของ argument นั้นในโปรแกรมที่เรียกใช้เปลี่ยนไป

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

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