ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
Introduction to Computer Programming
Thaksin University Introduction to Computer Programming Chapter 1: Introduction
2
โปรแกรมคอมพิวเตอร์ (Computer Program)
โปรแกรมคอมพิวเตอร์ คือ ชุดคำสั่งที่เขียนขึ้นเพื่อให้คอมพิวเตอร์ทำงานได้ตามที่ต้องการ การเขียนโปรแกรม (Programming) คือ การเขียนชุดคำสั่งด้วยภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง เช่น FORTRAN, COBOL, PASCAL, C, C++, Java, Prolog, Lisp เป็นต้น ไม่ว่าจะเขียนโปรแกรมด้วยภาษาใด ในขั้นตอนสุดท้ายจะต้องมีการแปล (ด้วยCompiler) ให้เป็นภาษาที่คอมพิวเตอร์เข้าใจเสียก่อน
3
แนะนำภาษา C ภาษาที่เป็น General purpose ผู้ใช้สามารถใช้เขียนโปรแกรมประยุกต์ใดๆก็ได้ ไม่มีการจำเพาะ มีความยืดหยุ่นมาก กล่าวคือ สามารถทำงานกับเครื่องมือต่างๆ สามารถปรับเปลี่ยนการเขียนโปรแกรมในรูปแบบต่างๆได้ การเขียนโปรแกรมแบบโครงสร้าง (Structured Programming) ก็คือ การนำโครงสร้างของคำสั่งหลายๆ รูปแบบ นำมาใช้ในโปรแกรม โดยจะมีการใช้คำสั่้งลักษณะ goto ให้น้อยที่สุด
4
รูปแบบการทำงานของภาษาซี
ในภาษาซีจะเขียนโปรแกรมโดยการเรียกใช้โปรแกรมย่อยแต่ละชุด ที่เรียกว่า ฟังก์ชัน (Function) ในหนึ่งโปรแกรมอาจประกอบด้วยหลายฟังก์ชันก็ได้ แต่ละฟังก์ชันจะตั้งชื่อว่าอะไรก็ได้ โปรแกรมภาษาซีที่สามารถทำงาน (Execute) ได้จะต้องมีอย่างน้อย 1 ฟังก์ชัน ชื่อว่า main
5
รูปแบบฟังก์ชัน main ฟังก์ชัน main สามารถเขียนได้หลายรูปแบบ แต่รูปแบบที่แนะนำให้ใช้ คือ Void main() { } int main() { return 0; } . . หรือ
6
ขั้นตอนการสร้างโปรแกรมด้วยภาษาซี
1. สร้าง Source File ซึ่งก็คือไฟล์ข้อความ (Text File) ที่ถูกเขียนขึ้นตามหลักไวยากรณ์ (Syntax) ของภาษาซี โดยไฟล์นี้จะต้องตั้งชื่อให้มีนามสกุลเป็น .c
7
ขั้นตอนการสร้างโปรแกรมด้วยภาษาซี
2. การแปลภาษา (Compile) คอมไพเลอร์ภาษาซี (C Compiler) จะแปลงข้อความที่อยู่ใน Source File ให้กลายเป็นรหัสที่เครื่องคอมพิวเตอร์เข้าใจและเก็บไว้ในอีกไฟล์หนึ่งเรียกว่า Object File (ภาษาเครื่อง) คอมไพเลอร์ภาษาซีที่ได้รับความนิยมมีหลายตัว เช่น - Borland C (DOS, Windows) - GCC (Unix, Linux) - C-Free (Dos, Windows) - MinGW (Windows)
8
ขั้นตอนการสร้างโปรแกรมด้วยภาษาซี
C Compiler Source File Object File Computer Compile process
9
ขั้นตอนการสร้างโปรแกรมด้วยภาษาซี
3. การลิงค์ (Link) ตัวเชื่อม (Linker) จะตรวจสอบจาก Object File ว่ามีการเรียกใช้ฟังก์ชันมาตรฐานที่อยู่ใน C Library หรือไม่ รวมฟังก์ชันมาตรฐานเหล่านั้นเข้ากับ Object File ผลของการลิงค์ จะได้เป็นไฟล์ที่ทำงานได้ (Execute File) Linker C Library Object File Execute File Computer
11
Library ประกาศค่าตัวแปร และ การกำหนดค่าให้กับตัวแปร (Variable Declaration) (program statements Program statements แสดงผลทางจอภาพ (Display)
12
คำสั่งและชุดคำสั่ง คำสั่ง (Statement) คือ ขั้นตอนในการทำงานหนึ่งขั้นตอน ทุกคำสั่งจะต้องจบด้วยเครื่องหมาย ; เช่น printf("Hello World\n"); กลุ่มคำสั่ง (Compound Statement) คือ คำสั่งหลายๆ คำสั่งที่อยู่ภายในเครื่องหมายปีกกา เช่น if (a<10) { total = (a * price) * 90/100 printf(“total price %f“, total); }
13
การเขียนหมายเหตุ (Comment)
การเขียนอธิบายจะใช้เครื่องหมาย /* ดังนี้ /* ข้อความที่ต้องการเขียนอธิบาย */ if (a<10) { /* total = (a * price) * 90/100 printf("Hello World\n"); return 0; */ }
14
ข้อมูล (Data)และชนิดของข้อมูล (Data type)
ข้อมูล คือ ข้อเท็จจริงที่ต้องการนำมาให้คอมพิวเตอร์ดำเนินการเพื่อให้ได้ผลลัพธ์อย่างใดอย่างหนึ่งตามที่ต้องการ ข้อมูลในภาษา C แบ่งออกเป็น 2 ชนิด ค่าคงที่ใช้คำนวณ จำนวนเต็ม เช่น 12, 23, 456 ค่าคงที่ทศนิยม เช่น , , 3.14 ค่าอักขระ เช่น ‘A’,’B’ ค่าคงที่ไม่ใช้ในการคำนวณ String constant เช่น “Hello”
15
ตัวแปร (Variable) ตัวแปร คือ ชื่อที่ผู้เขียนโปรแกรมตั้งขึ้นมาเพื่อแทนข้อมูลที่เป็น input/output หรือเป็นข้อมูลอื่นที่ช่วยในการคำนวณ ตัวแปร ใช้อ้างอิงพื้นที่เก็บข้อมูลในหน่วยความจำ ขนาดของตัวแปรจะขึ้นอยู่กับชนิดตัวแปร เช่น int, char, float, double เช่น ในโปรแกรมคำนวณพื้นที่วงกลม ค่า r ที่รับมา เป็นตัวเลข ที่เป็นทศนิยม float r; /* input*/ float area; /* output*/
16
ชนิดตัวแปร (Variable Type)
รูปแบบข้อมูล ขนาด (ไบต์) char ตัวอักษร 1 ตัว 1 int จำนวนเต็ม 4 float จำนวนจริง (ทศนิยม 6 ตำแหน่ง) 4 double จำนวนจริง (ทศนิยม 12 ตำแหน่ง) 8
17
ชนิดตัวแปร (ต่อ) long - ใช้นำหน้าชนิดตัวแปรอื่น เพื่อเพิ่มขนาดเนื้อที่ที่ใช้เก็บข้อมูล - ได้แก่ long int, long double unsigned - ใช้นำหน้าชนิดตัวแปรอื่น เพื่อใช้เก็บข้อมูลที่เป็นจำนวนเต็มแบบไม่คิดเครื่องหมาย - ได้แก่ unsigned int, unsigned char, unsigned long int
18
การตั้งชื่อตัวแปร อักษรตัวแรกจะต้องเป็นตัวอักษรภาษาอังกฤษหรือเครื่องหมาย _ สามารถตั้งชื่อตัวแปรโดยใช้ตัวเลขร่วมกับตัวอักษรภาษาอังกฤษได้ แต่ห้ามใช้ตัวเลขเป็นตัวอักษรตัวแรก ตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ถือเป็นคนละตัวกัน ห้ามตั้งชื่อซ้ำกับคำสงวน (คำเฉพาะที่เป็นส่วนของภาษา) ตัวแปรห้ามเว้นวรรค เช่น final_score √ Final score x
19
การตั้งชื่อตัวแปร (ต่อ)
ห้ามตั้งชื่อซ้ำกับคำสงวน (Keywords) ซึ่งเป็นคำที่มีอยู่แล้วในภาษาซี auto default float register struct volatile break do far return switch while case double goto short typedef char else if signed union const enum int sizeof unsigned continue extern long static void
20
ตัวอย่างที่ 1 คำต่อไปนี้สามารถนำมาตั้งเป็นชื่อตัวแปรได้หรือไม่ number
2value grade1 student_id float _score INT
21
การประกาศตัวแปร ก่อนที่จะใช้งานตัวแปรใดๆ จะต้องมีการประกาศตัวแปรทุกครั้ง รูปแบบการประกาศตัวแปร: ชนิดตัวแปร ชื่อตัวแปร; ตัวอย่างเช่น int number; char grade;
22
ตัวอย่างที่ 2 จงประกาศตัวแปรชื่อ a1 สำหรับแทนจำนวนคอมพิวเตอร์ในห้อง A301 int a1; จงประกาศตัวแปรชื่อ b1 เพื่อแทนค่าโทรศัพท์ float b1; จงประกาศตัวแปรชื่อ c1 สำหรับเพื่อแทนสถานะทางเพศ (F/M) char c1;
23
จงทำการประกาศตัวแปร ใดๆ
เพื่อแทนปริมาณน้ำฝน float rain; จำนวนเงินในธนาคาร float balance อายุ int age; เพศ (F/M)
24
หากต้องการประกาศตัวแปรที่มีชนิดเดียวกันหลายๆ ตัว สามารถเขียนได้ในคำสั่งเดียวโดยใช้เครื่องหมาย , คั่นระหว่างตัวแปร เช่น int a; int b; สามารถเขียนใหม่เป็น int a,b;
25
การกำหนดค่าให้กับตัวแปร
ใช้เครื่องหมาย = ตัวอย่างเช่น int score; score = 80; หมายถึง กำหนดให้ตัวแปร score มีค่าเท่ากับ 80
26
ตัวอย่างที่ 3 จากคำสั่งต่อไปนี้ จงหาค่าของตัวแปร c int a,b,c; a = 2;
c = a + b; จงหาค่าของตัวแปร c
27
ตัวอย่างที่ 4 a = 2; a = 5; b = a + 4; จากคำสั่งต่อไปนี้ int a,b;
28
ตัวอย่างที่ 5 int a; a = 2; a = a + 3; จงหาค่าของตัวแปร a
จากคำสั่งต่อไปนี้ int a; a = 2; a = a + 3; จงหาค่าของตัวแปร a
29
ตัวประมวลผลก่อน (Preprocessor)
ส่วนที่คอมไพเลอร์จะต้องทำก่อนที่จะเริ่มคอมไพล์โปรแกรม มักนำหน้าด้วยเครื่องหมาย # #include #define #if #program #endif #error #ifndef #undef #elif #else #ifdef
30
#include เป็นการแจ้งให้คอมไพเลอร์นำไฟล์อื่นเข้ามร่วมในการคอมไพล์
#include <stdio.h> ให้นำไฟล์ stdio.h มาจากไดเรกทอรีที่ได้กำหนดไว้แล้ว (/usr/include)เข้ามาร่วมในการคอมไพล์ #include "sample.h" ให้นำไฟล์ “sample.h” จากไดเรกทอรีปัจจุบันหรือไดเรกทอรีที่กำหนดไว้แล้ว เข้ามาร่วมในการคอมไพล์ ใช้ในกรณีที่มีการสร้างไฟล์ .h ขึ้นมาเอง
31
#define ใช้ในการกำหนดค่าคงที่ เพื่อความสะดวกในการเขียนโปรแกรม
ตัวอย่างเช่น #define PI หมายถึง กำหนดค่าคงที่ชื่อ PI สำหรับใช้แทนค่า #define START_STR "Welcome to my program." หมายถึง กำหนดค่าคงที่ชื่อ START_STR สำหรับใช้แทน ข้อความว่า Welcome to my program.
32
การเขียนคำอธิบาย (Comment)
มี 2 วิธี คือ /* */ // ใช้ในการอธิบายโปรแกรม ข้อความที่ถูก comment คอมไพเลอร์จะไม่นำมาร่วมในการคอมไพล์
33
เครื่องหมายตัวดำเนินการ
1. เครื่องหมายคณิตศาสตร์ (Arithmetic Operators) ได้แก่ +, - , * , / , % (mod), --, ++ 2. เครื่องหมายเปรียบเทียบ (Relational and Logical Operators) ได้แก่ >, < , >=, <=, ==, != ผลของการเปรียบเทียบได้เป็น 2 กรณี คือ จริงจะให้ค่าเป็น 1 เท็จจะให้ค่าเป็น 0
34
จริงจะให้ค่าเป็น 1 เท็จจะให้ค่าเป็น 0
3. เครื่องหมายตรรกะ (Logical operators) เป็นเครื่องหมายที่ใช้เปรียบเทียบและตัดสินใจโดนเอาเงื่อนไขตั้งแต่สองเงื่อนไขมาเปรียบเทียบกันผลของการเปรียบเทียบได้เป็น 2 กรณี คือ จริงจะให้ค่าเป็น 1 เท็จจะให้ค่าเป็น 0 เช่น && (and ) , || (or), ! (not)
35
ตัวอย่าง a > b; b > c; b == c; (b == c) && (b> c)
(b>a) || (b>c) ! (a>b)
36
นิพจน์ นิพจน์คณิตศาสตร์ นิพจน์ภาษา C Result= Result = (a+b) / (c*d)
คือการนำค่าตัวแปร ค่าคงที่ มาสัมพันธ์กันโดยใช้เครื่องหมายอย่างใดอย่างหนึ่งเป็นตัวเชื่อม เช่น นิพจน์คณิตศาสตร์ นิพจน์ภาษา C Result= Result = (a+b) / (c*d) Result= 10x + 3xy + 10y2 Result = 10*x + 3* x* y + 10 * y * y
37
นิพจน์ตรรก (Logical Expression)
การนำตัวแปร ค่าคงที่ หรือนิพจน์ มาสัมพันธ์กันโดยใช้เครื่องหมายเปรียบเทียบหรือเครื่องหมายตรรก เป็นตัวเชื่อม ค่าที่ได้จากนิพจน์ตรรก คือ จริงคือ 1 หรือ เท็จ คือ 0 (b == c) && (b> c) (b>a) || (b>c) ! (a>b)
38
กฏในการเขียนนิพจน์ ห้ามเขียนตัวแปรติดกันโดยไม่มีเครื่องหมาย เช่น ab (ผิด) ถ้าเขียนนิพจน์โดยมีค่าของตัวแปรหรือค่าคงที่ต่างชนิดกันในนิพจน์เดียวกัน ภาษา C จะเปลี่ยนชนิดของข้อมูลที่มีขนาดเล็กให้เป็นชนิดของข้อมูลที่ใหญ่ขึ้น เช่น a b c float double int long char
39
int a=5; Int b = 2 Float c =2; ถ้า a/b = 2 a/c = 2.50000
int ch, i; float f; double d; result = (ch/i) + (f*d) – (f+i) int a=5; Int b = 2 Float c =2; ถ้า a/b = 2 a/c = int double float double double
40
ขั้นตอนการทำงานของนิพจน์
ถ้ามีวงเล็บจะทำในวงเล็บก่อน และทำจากซ้ายไปขวาตามลำดับเครื่องหมาย !, ++, -- (ขวาไปซ้าย) *, /, % +, - <, <=,>, >= ==,!= && ||
41
ตัวอย่าง a * b / c a * b + c / d - e 1 1 3 4 2 2
42
ตัวอย่าง a * (b +c)/d -e a - b + c * d /e-- 1 1 3 4 5 2 2
43
แบบฝึกหัด จงหาค่า answer ของนิพจน์ต่อไปนี้ ถ้ากำหนดให้
a= 2, b=3, c=4, d=5, e=6, f=7 Answer = a+ e/f-- * c Answer = (f-e) * (c/a) Answer = a*d/a +e/b Answer = a* (d/(a+e))/b
44
Assignment Statement เป็นการกำหนดค่าคงที่ หรือค่าตั้งต้นให้กับตัวแปร
รูปแบบ <Variable> = <Expression> ตัวอย่างเช่น int a,b,c; a=2; b=3; c=0;
45
ตัวอย่าง แสดงการคำนวณโดยนำผลลัพธ์ที่ได้จาก การคำนวณไปเก็บไว้ในตัวแปร v
Main() { int a int b = 3; int v; a = 5; v = a*b/2 -10;
46
ตัวอย่าง แสดงการคำนวณโดยการเพิ่มค่าตัวแปร i ครั้งละ 1
Main() { int i=0; i= i+1; หรือ i++ หรือ i= i+5; หรือ i+ = 5
47
การกำหนดค่าของข้อมูลที่เป็นข้อความ
ใช้การเก็บข้อความในตัวแปรชุดขนาด 1 มิติ ขนาดขึ้นอยู่กับจำนวนอักขระในข้อความนั้น เช่น main() { char n[9] =“Computer”; หมายความว่าหน่วยความจำจะเอาค่า computer ไปเก็บไว้ในตัวแปรชุด n n[0] n[1] n[2] n[3] n[4] n[5] n[6] n[7] n[8] C o m p u t e R \0
48
/*Name: Neo Student ID: */ #include <stdio.h> #define PI int main() { float r,contour,area; r = 2.5; //calculate contour and area of circle contour = 2*PI*r; area = PI*r*r; : return 0; }
49
ฟังก์ชัน printf() ใช้เพื่อการแสดงค่า ตัวแปร หรือ ประโยคใดออกทางหน้าจอ
printf (control, argument list); โดย control ต้องเขียนภายในเครื่องหมาย “ ” โดยในเครื่องหมายผู้ใช้สามารถ รหัสรูปแบบ (Format code) ที่ใช้ในการแสดงผลตัวแปร เช่น printf (“ %d”, a);
50
การใช้ printf ในการแสดงข้อความ
มีเฉพาะส่วน control ตัวอย่างเช่น printf("Computer Engineering"); ข้อความที่พิมพ์ออกทางหน้าจอคือ Computer Engineering
51
การใช้ printf ในการแสดงค่าตัวแปร, ค่าคงที่, นิพจน์
argument list เป็นชุดของตัวแปร, ค่าคงที่, นิพจน์ ที่ต้องการนำมาแสดงผล หากมีหลายค่าให้ใช้เครื่องหมาย , คั่น ตัวอย่างเช่น int a = 2, b = 3; printf("a = %d and b = %d\n", a,b); printf("a + b = %d", a+b); ข้อความที่พิมพ์ออกทางหน้าจอคือ ? นิสิตจงหาคำตอบ a = 2 and b = 3 a + b = 5 %d เรียกว่า รหัสรูปแบบ (Format Code)
52
ตัวอย่างที่ 6 จงเขียนผลลัพธ์ของโปรแกรมต่อไปนี้
#include <stdio.h> int main() { int x = 2,y = 5; y = y + x; printf("x = %d, y = %d\n",x,y); printf("value of x-y = %d\n",x-y); return 0; } X = 2, y=7 Value of x-y = -5
53
รหัสรูปแบบ (Format Code)
ชนิดตัวแปร รูปแบบการแสดงผล %c char ตัวอักษร 1 ตัว %d int จำนวนเต็มฐานสิบ %f float เลขทศนิยม 6 ตำแหน่ง %s string ข้อความ (String)
54
รหัสรูปแบบ (ต่อ) รหัสรูปแบบ ชนิดตัวแปร รูปแบบการแสดงผล
%ld long int จำนวนเต็มฐานสิบแบบ long %u unsigned int จำนวนเต็มฐานสิบแบบ unsigned %o int จำนวนเต็มฐานแปด %x int จำนวนเต็มฐานสิบหก %e float,double เลขทศนิยมที่มีเลขชี้กำลัง %lf double เลขทศนิยมแบบ double
55
รหัส ASCII ASCII ย่อมาจาก American Standard Code for Information Interchange เป็นรหัสที่ใช้แทนตัวอักษร รหัส : ตัวอักษรภาษาอังกฤษ, ตัวเลข, รหัสควบคุมพิเศษ เช่น Enter, Back Space, Space Bar, Tab เป็นต้น รหัส : Graphic Character หรือ ตัวอักษรพิเศษของภาษาอื่นๆ เช่น ภาษาไทย
56
อักขระหรือตัวอักษร (Characters)
รหัสที่ใช้แทนภาพ เป็นเครื่องหมายย่อยที่สุดในการเขียน ใช้ตัวแปรชนิด char ในการเก็บข้อมูล ‘A’ หมายถึง อักษร A มีรหัส ASCII เป็น 65 ‘a’ หมายถึง อักษร a มีรหัส ASCII เป็น 97 ‘4’ หมายถึง อักษร 4 มีรหัส ASCII เป็น 52 ‘\66’ หมายถึง อักษรที่มีรหัส ASCII เป็น 66 ซึ่งก็คืออักษร B
57
ตัวอย่างที่ 10 จงเขียนผลลัพธ์ของโปรแกรมต่อไปนี้
#include <stdio.h> int main() { char alpha,ch; alpha = 'A'; printf("letter %c ASCII = %d\n",alpha,alpha); alpha = 66; ch = alpha + 1; printf("ch = %c\n",ch); return 0; } letter A ASCII = 65 letter B ASCII = 66 ch = C
58
สตริง (String) กลุ่มข้อมูลที่ประกอบด้วยตัวอักขระเขียนเรียงกันไป โดยจะมีเครื่องหมาย "" (อัญประกาศ หรือ Double Quote) ล้อมรอบอยู่เสมอ ใช้ตัวแปรชนิด char ในการเก็บข้อมูล แต่ต้องมีการกำหนดจำนวนตัวอักษรด้วย เช่น char name[10]; เป็นประกาศตัวแปรชื่อ name เป็น string ที่เก็บตัวอักขระได้ 9 ตัว รวมกับตัวอักขระปิดท้ายอีก 1 ตัวคือ '\0' รวมเป็น 10 ตัว
59
ตัวอย่างการใช้ตัวแปรแบบ string
#include <stdio.h> int main() { char my_name[10] = “Gerrard"; printf("My name is %s\n",my_name); printf("%s %s\n","Hello",my_name); return 0; } My name is Gerrard Hello Gerrard
60
Escape Sequence หน้าที่ ขึ้นบรรทัดใหม่ ตั้ง tab ในแนวนอน
รหัสพิเศษที่แทรกลงไปในค่าคงที่สตริง เพื่อใช้ควบคุมการแสดงผลของตัวอักษรในลักษณะต่างๆ โดยการเขียนจะต้องมีเครื่องหมาย \ (Back-Slash) นำหน้า Escape Sequence ค่า (ASCII) หน้าที่ \n 0x0a ขึ้นบรรทัดใหม่ \t 0x09 ตั้ง tab ในแนวนอน \b 0x08 ลบตัวอักษรทางซ้ายมือ 1 ตัวอักษร \" 0x22 เครื่องหมาย "
61
ฟิลด์ (Field) เป็นการกำหนดพื้นที่และรูปแบบในการแสดงผล
มีการแทรกเครื่องหมาย +, -, ตัวเลข หรือจุดทศนิยมเข้าไปในรหัสรูปแบบ เช่น int a = 20; printf("%5d\n",a); เป็นการสั่งให้พิมพ์ค่าของ a ลงในพื้นที่ที่จองไว้ 5 ตัวอัวอักษร
62
การกำหนดฟิลด์ของเลขจำนวนเต็ม
#include <stdio.h> int main() { int num = 12; printf("|12345|\n"); printf("|%5d|\n",num); printf("|%-5d|\n",num); printf("|%.5d|\n",num); return 0; } |12345| | 12| |12 | |00012|
63
การกำหนดฟิลด์ของเลขทศนิยม
รูปแบบ: %a.bf a หมายถึงขนาดพื้นที่ทั้งหมดที่จองไว้ b หมายถึง จำนวนหลักทศนิยม เช่น %7.2f หมายถึง จองพื้นที่ไว้ 7 ตัวอักษร และแสดงผลเป็นเลขทศนิยม 2 หลัก
64
#include <stdio.h>
int main() { printf("|123456|\n"); printf("|%6.1f|\n",4.23); printf("|%6.2f|\n",1.629); printf("|%-6.2f|\n",1.629); return 0; } |123456| | 4.2| | 1.63| |1.63 |
65
การกำหนดฟิลด์ของ String
#include <stdio.h> int main() { printf("| |\n"); printf("|%8s|\n","ComEng"); return 0; } | | | ComEng| |Computer Engineering| |Computer|
66
ฟังก์ชันในการรับค่าข้อมูล
ฟังก์ชัน scanf ต้อง include ไฟล์ stdio.h รูปแบบ: scanf(control,argument list); control : รหัสรูปแบบ (%c,%d,%f,%s,...)ซึ่งจะต้องเขียนอยู่ภายใต้เครื่องหมาย "" argument list : ตำแหน่งในหน่วยความจำ (Address) ของตัวแปรที่ใช้ในการเก็บข้อมูล ซึ่งหาได้โดยใช้เครื่องหมาย & นำหน้า Address ของตัวแปร a คือ &a
67
ตัวอย่างการใช้ scanf - รับข้อมูลที่เป็นจำนวนเต็มมาเก็บไว้ที่ตัวแปร a
scanf("%d",&a); - รับข้อมูลที่เป็นจำนวนเต็มมาเก็บไว้ที่ตัวแปร a scanf("%c",&ch); - รับข้อมูลที่เป็นตัวอักษร 1 ตัว มาเก็บไว้ที่ตัวแปร ch scanf("%f",&num); - รับข้อมูลที่เป็นเลขทศนิยมมาเก็บไว้ที่ตัวแปร num scanf("%s",str); - รับข้อความ (String) มาเก็บไว้ที่ตัวแปร str
68
Enter your name: Paris Enter your age: 23 Paris is 23 years old.
#include <stdio.h> int main() { int age; char name[50]; printf("Enter your name: "); scanf("%s",name); printf("Enter your age: "); scanf("%d",&age); printf("%s is %d years old.\n",name,age); return 0; } Enter your name: Paris Enter your age: 23 Paris is 23 years old.
69
#include <stdio.h>
int main() { int num1,num2,diff; printf("Enter two number: "); scanf("%d%d",&num1,&num2); diff = num1 - num2; printf("num1 - num2 = %d\n",diff); return 0; } Enter two number: 5 3 num1 - num2 = 2
70
ฟังก์ชันอื่นๆ ที่ใช้ในการรับและแสดงข้อมูล
getchar putchar gets puts การใช้งานฟังก์ชันเหล่านี้จะต้อง include ไฟล์ stdio.h
71
getchar เป็นฟังก์ชันที่ใช้รับข้อมูลจากคีย์บอร์ด 1 ตัวอักษร ผู้ใช้จะต้องกด Enter เมื่อสิ้นสุดข้อมูล การทำงานจะเหมือนกับ scanf ที่ใช้รหัสรูปแบบเป็น %c putchar เป็นฟังก์ชันที่ใช้ในการแสดงข้อมูล 1 ตัวอักษร การทำงานจะเหมือนกับ printf ที่ใช้รหัสรูปแบบเป็น %c
72
#include <stdio.h> int main() { char ch; ch = getchar();
printf("Here is the output...\n"); putchar(ch); return 0; } A Here is the output...
73
gets เป็นฟังก์ชันที่ใช้ในการรับข้อความจากคีย์บอร์ดมาเก็บไว้ในตัวแปรชนิด string การทำงานจะคล้ายกับ scanf ที่ใช้รหัสรูปแบบเป็น %s puts เป็นฟังก์ชันที่ในการแสดงข้อความหรือค่าของตัวแปรชนิด string ออกทางหน้าจอ การทำงานจะคล้ายกับ printf ที่ใช้รหัสรูปแบบเป็น %s
74
#include <stdio.h> int main() { char name[50]; gets(name);
puts("Here is the output..."); puts(name); return 0; } Steven Gerrard Here is the output...
75
ตัวอย่างที่ 13 จงเขียนผลลัพธ์ส่วนที่เหลือของโปรแกรมต่อไปนี้ (ตัวเลข 5 และ 3 คือค่าที่รับจากผู้ใช้)
#include <stdio.h> int main() { int a,b,c; printf("Enter value of a: "); scanf("%d",&a); printf("Enter value of b: "); scanf("%d",&b); c = a*(a + a/b); printf("c = %d\n",c); return 0; } Enter value of a: 5 Enter value of b: 3 ___________________
76
ตัวอย่างที่ 14. จงเขียนโปรแกรมสำหรับคำนวณค่า y ซึ่งมีสมการดังนี้
ตัวอย่างที่ 14. จงเขียนโปรแกรมสำหรับคำนวณค่า y ซึ่งมีสมการดังนี้ y = x2 + 2x + 4 โดยให้รับค่า x จากผู้ใช้ และให้แสดงค่า y ออกทางหน้าจอ กำหนดให้ x และ y เป็นจำนวนเต็ม
77
ตัวอย่างที่ 15. จงเขียนผลลัพธ์ของโปรแกรมต่อไปนี้
ตัวอย่างที่ 15. จงเขียนผลลัพธ์ของโปรแกรมต่อไปนี้ #include <stdio.h> int main() { int a = 2,b,c; b = ++a; printf("b = %d\n",b); c = b++; printf("b = %d,c = %d\n",b,c); printf("%d\n",c++); return 0; } ___________________
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.