50
โโโโโโโโโ โโโโโโโโโโโโ โโโ โโโโโโโโโโ Turbo C+ + Version 3.0

โครงสร้างภาษาซีเบื้องต้น

  • Upload
    callie

  • View
    26

  • Download
    0

Embed Size (px)

DESCRIPTION

โครงสร้างภาษาซีเบื้องต้น. ใช้สำหรับ Turbo C++ Version 3.0. โปรแกรมภาษา. ในการเขียนโปรแกรมคอมพิวเตอร์ ด้วยภาษาระดับต่ำหรือระดับสูง จะต้องเปลี่ยนภาษานั้นให้เป็นภาษาเครื่อง เพื่อให้เครื่องคอมพิวเตอร์ทำงานได้ โปรแกรมต้นฉบับ ( Source Program ) โปรแกรมที่เครื่องทำงานได้ ( Executable Program ) - PowerPoint PPT Presentation

Citation preview

Page 1: โครงสร้างภาษาซีเบื้องต้น

โครงสร�างภาษาซี�เบื้��องต้�น

ใช้�ส�าหร�บื้ Turbo C++ Version 3.0

Page 2: โครงสร้างภาษาซีเบื้องต้น

โปรแกรมภาษาโปรแกรมภาษาในการเขี�ยนโปรแกรมคอมพิ�วเตอร� ด้�วยภาษา

ระด้�บต��าหร อระด้�บสู"ง จะต�องเปลี่��ยนภาษาน�&นให�เป'นภาษาเคร �อง เพิ �อให�เคร �องคอมพิ�วเตอร�ทำ�างานได้�

โปรแกรมต�นฉบ�บ (Source Program)โปรแกรมทำ��เคร �องทำ�างานได้� (Executable Program)

การเขี�ยนโปรแกรมด้�วยแอสูเซมบลี่� (ภาษาระด้�บต��า )เป'นภาษาเคร �อง

ขั้��นต้อนการแปลงภาษาแอสเซีมบื้ล�เป�นภาษาเคร� อง

Page 3: โครงสร้างภาษาซีเบื้องต้น

โปรแกรมภาษาโปรแกรมภาษา การเขี�ยนโปรแกรมด้�วยภาษาระด้�บสู"งเป'นภาษา

เคร �อง อ�นเทำอร�พิร�เตอร� (Interpreter)

คอมไพิเลี่อร� (Compiler)

ขั้��นต้อนการแปลภาษาโปรแกรม

interpreter

compiler

Page 4: โครงสร้างภาษาซีเบื้องต้น

การเขี�ยนโปรแกรมคอมพิ�วเตอร�ให�ทำ�างานได้�ตามเราต�องการ ผู้"�เขี�ยนโปรแกรมจะต�องร" �ว-าจะให�โปรแกรมทำ�าอะไร ม�ขี�อม"ลี่อะไร แลี่ะต�องการอะไรจากโปรแกรม รวมทำ�&งร"ปแบบการแสูด้งผู้ลี่ด้�วย โด้ยทำ��วไปจะม�ขี�&นตอนการพิ�ฒนาโปรแกรม ด้�งน�&

การก�าหนด้แลี่ะว�เคราะห�ป/ญหา การเขี�ยนผู้�งงานแลี่ะซ"โด้โค1ด้ การเขี�ยนโปรแกรม การทำด้สูอบแลี่ะแก�ไขีโปรแกรม การทำ�าเอกสูารแลี่ะบ�าร2งร�กษาโปรแกรม

ขั้��นต้อนพั�ฒนาโปรแกรมขั้��นต้อนพั�ฒนาโปรแกรม

Page 5: โครงสร้างภาษาซีเบื้องต้น

ภาษาทำ��เป'นโครงสูร�าง ค�าสู��งประกอบด้�วยพิจน� (term ) ซ3�งจะม�ลี่�กษณะเหม อน

ก�บน�พิจน�ทำางพิ�ชคณ�ต ม�สู-วนขียายเป'นค�าหลี่�ก (keyword ) ในภาษาอ�งกฤษ

เช-น if, else, for, do แลี่ะ while สูามารถใช�งานในระด้�บต��า (low-level ) ได้�

สูามารถใช�ก�บงานด้�านโปรแกรมระบบ (system programming ) เช-น เขี�ยนโปรแกรมระบบปฏิ�บ�ต�การ

(operating system ) หร อใช�ก�บงานทำ��ว ๆ ไป สูามารถย�ายไปทำ�างานในเคร �องอ �นได้�

แนะน�าภาษาซี�แนะน�าภาษาซี�

Page 6: โครงสร้างภาษาซีเบื้องต้น

ภาษาซ�พิ�ฒนาขี3&นมาในป: 1970 โด้ย Dennis Ritchie แห-ง Bell Telephone Laboratories,

Inc . (ป/จจ2บ�นค อ AT&T Bell Laboratories) ต�นก�าเน�ด้มาจากภาษา 2 ภาษา ค อ ภาษา BCPL แลี่ะ

ภาษา B ภาษาซ�น�&นถ"กใช�งานอย"- เพิ�ยงใน Bell Laboratories

จนกระทำ��งป: 1978 Brian Kernighan แลี่ะ Ritchie น�&นเป'นทำ��ร" �จ�กก�นในช �อขีอง "K&R C"

ในกลี่างป: 1980 ภาษาซ�ก;กลี่ายเป'นภาษาทำ��ได้�ร�บความน�ยม

ประวั�ต้%ภาษาซี�ประวั�ต้%ภาษาซี�

Page 7: โครงสร้างภาษาซีเบื้องต้น

โครงสร�างโปรแกรมภาษาซี�โครงสร�างโปรแกรมภาษาซี�void main(void)

{

}

Statements ;

Local Declarations

Preprocessor directive

Global Declarations

main function

User define functions

User define functions

int function ()

{

}

Statements ;

Local Declarations

โครงสร�างภาษาซี�ประกอบื้ด้�วัยหลายส(วัน แต้(ในการเขั้�ยนไม(จำ�าเป�นจำะต้�องเขั้�ยนทุ,กส(วัน

Page 8: โครงสร้างภาษาซีเบื้องต้น

#include#include #define#define #undef #if

#ifdef #ifndef #else #elif

#endif #line #error #pragma

ทำ2กโปรแกรมต�องม� ใช�เร�ยกไฟลี่�ทำ��โปรแกรมใช�ในการทำ�างานร-วมก�น ใช�ก�าหนด้ค-าคงทำ��ให�ก�บโปรแกรม เร��มต�นด้�วยเคร �องหมาย ## ทำ��เราจะใช�ก�นม� 2 directives ค อ

#include ใช�สู�าหร�บเร�ยกไฟลี่�ทำ��โปรแกรมใชในการทำ�างาน

#define ใช�สู�าหร�บก�าหนด้มาโครทำ��ให�ก�บโปรแกรม

การใช้� การใช้� Preprocessor Preprocessor DirectiveDirective

Page 9: โครงสร้างภาษาซีเบื้องต้น

การใช้� การใช้� #include#include

ว�ธี�การใช�งาน

ต�วอย-าง#include <stdio.h> (เป'นการเร�ยกใช�ไฟลี่� stdio.h เขี�ามาในโปรแกรม)#include <mypro.h> (เป'นการเร�ยกใช�ไฟลี่� mypro.h เขี�ามาในโปรแกรม)

#include <<ช �อไฟลี่�>> หร อ #include ““ช �อไฟลี่�””

< >< > จะเร�ยกไฟลี่�ใน directory ทำ��ก�าหนด้โด้ยต�วคอมไพิลี่�เลี่อร�“ ”“ ” จะเร�ยกไฟลี่�ใน directory ทำ�ทำ�างานอย"-ในป/จจ2บ�น

Page 10: โครงสร้างภาษาซีเบื้องต้น

การใช้� การใช้� #define#define

#define ช �อ ค-าทำ��ต�องการว�ธี�การใช�งาน

ต�วอย-าง#define START 10 (ก�าหนด้ค-า START = 10)#define A 3*5/4 (ก�าหนด้ค-า A=3*5/4)#define pi 3.14159 (ก�าหนด้ค-า pi = 3.14159)#define sum(a,b) a+b (ก�าหนด้ค-า sum(ต�วแปรทำ��1, ต�วแปรทำ��2) = ต�วแปรทำ��1+ต�วแปรทำ��2

Page 11: โครงสร้างภาษาซีเบื้องต้น

ส(วันประกาศ ส(วันประกาศ ((Global Global Declarations)Declarations) เป'นการประกาศต�วแปรเพิ �อใช�งานในโปรแกรม โด้ย

ต�วแปรน�&นสูามารถใช�ได้�ในทำ2กทำ��ในโปรแกรม เป'นสู-วนทำ��ใช�ในการประกาศ Function Prototype

ขีองโปรแกรม สู-วนน�&ในบางโปรแกรมอาจจะไม-ม�ก;ได้�

ต�วอย-างint summation(float x, float y) ; (ประกาศ function summation)int x,y ; (ก�าหนด้ต�วแปร x,y เป'นจ�านวนเต;ม)float z=3; (ก�าหนด้ต�วแปร z เป'นจ�านวนจร�ง)

Page 12: โครงสร้างภาษาซีเบื้องต้น

ส(วันประกาศ ส(วันประกาศ ((Global Global Declarations)Declarations)

ต�วอย-าง#include <stdio.h>

int feet,inches;

void main()

{

feet = 6;

inches = feet * 12;

printf("Height in inches is %d",inches);

}

Height in inches is 72Height in inches is 72

ผู้ลี่การทำ�างาน

Page 13: โครงสร้างภาษาซีเบื้องต้น

ฟั/งก0ช้�นหล�กขั้องโปรแกรม ฟั/งก0ช้�นหล�กขั้องโปรแกรม ((Main Function)Main Function) สู-วนน�&ทำ2กโปรแกรมจะต�องม� โด้ยโปรแกรมหลี่�กจะเร��ม

ต�นด้�วย main() แลี่ะตามด้�วยเคร �องหมายป:กกาเป?ด้ ‘{’ แลี่ะป:กกาป?ด้ ‘}’

ระหว-างป:กกาจะประกอบไปด้�วยค�าสู��ง(Statement )ต-างๆ ทำ��จะให�โปรแกรมทำ�างาน

แต-ลี่ะค�าสู��งจะต�องจบด้�วยเซม�โคลี่อน ‘;’ (Semicolon)#include <stdio.h>

void main(void){

...Statement ;

}

Page 14: โครงสร้างภาษาซีเบื้องต้น

ฟั/งก0ช้�นหล�กขั้องโปรแกรม ฟั/งก0ช้�นหล�กขั้องโปรแกรม ((Main Function)Main Function)

ต�วอย-าง#include <stdio.h>

int feet,inches;

void main()

{

feet = 6;

inches = feet * 12;

printf("Height in inches is %d",inches);

}

Height in inches is 72Height in inches is 72

ผู้ลี่การทำ�างาน

Page 15: โครงสร้างภาษาซีเบื้องต้น

การสร�างฟั/งก0ช้�นใช้�งานเอง การสร�างฟั/งก0ช้�นใช้�งานเอง ((User Define Function)User Define Function)

#include <stdio.h>int function()void main(void){

...Statement ;

}int function(){

Statement ;...return (int value);

}

สูร�างฟ/งก�ช�นหร อค�าใหม- ขี3&นมาใช�งานตามทำ��เราต�องการ ระหว-างป:กกาจะประกอบด้�วยค�าสู��ง(Statement )

ต-างๆ ทำ��จะให�ฟ/งก�ช�นทำ�างาน สูามารถเร�ยกใช�ภายในโปรแกรมได้�ทำ2กทำ��

Page 16: โครงสร้างภาษาซีเบื้องต้น

การสร�างฟั/งก0ช้�นใช้�งานเอง การสร�างฟั/งก0ช้�นใช้�งานเอง ((User Define Function)User Define Function)

ต�วอย-าง#include <stdio.h>int Feet2Inch(int);int feet,inches;void main(){ feet = 6; inches = Feet2Inch(feet); printf("Height in inches is %d",inches);}int Feet2Inch(int f){ return f*12;} Height in inches is 72Height in inches is 72

ผู้ลี่การทำ�างาน

Page 17: โครงสร้างภาษาซีเบื้องต้น

การใช้�ค�าอธิ%บื้าย การใช้�ค�าอธิ%บื้าย ((Program Program Comments)Comments)

การเขี�ยนสู-วนอธี�บายโปรแกรม (comments)ทำ�าได้� 2 ว�ธี�ค อ

//// สู�าหร�บค�าอธี�บายไปจนถ3งทำ�ายบรรทำ�ด้แลี่ะ

/*/* ค�าอธี�บาย */*/ ลี่�กษณะการใช�เหม อนวงเลี่;บน�&นเอง

ใช�เขี�ยนสู-วนอธี�บายโปรแกรม (คอมเมนต�) ช-วยให�ผู้"�ศ3กษาโปรแกรมภายหลี่�งเขี�าใจการทำ�างานขีอง

โปรแกรม สู-วนขีองค�าอธี�บายจะถ"กขี�ามเม �อคอมไพิลี่�โปรแกรม

Page 18: โครงสร้างภาษาซีเบื้องต้น

การใช้�ค�าอธิ%บื้าย การใช้�ค�าอธิ%บื้าย ((Program Program Comments)Comments)

ต�วอย-าง#include <stdio.h> //// Change Feet to Inches

void main() //// main function

{ //// Start

int feet,inches;

feet = 6; //// feet 6

inches = feet * 12; //// inches feet * 12

printf("Height in inches is %d", inches);

//// write inches

} //// Stop

Height in inches is 72Height in inches is 72

ผู้ลี่การทำ�างาน

Page 19: โครงสร้างภาษาซีเบื้องต้น

การใช้� การใช้� printf()printf()

เป'นค�าสู��งทำ��ใช�ในการแสูด้งผู้ลี่ออกทำางจอภาพิ โด้ยม�ร"ปแบบการใช�งานด้�งน�&printf(““controlcontrol หร�อ format stringformat string””, variable listvariable list

…);

control หร�อ format string เป�นส(วันทุ� ใส(ขั้�อควัามทุ� จำะแสด้งผล และส(วัน

ควับื้ค,มล�กษณะการแสด้งผล รวัมทุ��งบื้อกต้�าแหน(งทุ� ต้�วัแปรจำะแสด้งผล

variable list เป�นต้�วัแปรทุ� ต้�องการจำะแสด้งผล ในกรณ�ทุ� ต้�องการแสด้งขั้�อควัาม ไม(จำ�าเป�นต้�องม�ส(วันน��

Page 20: โครงสร้างภาษาซีเบื้องต้น

โปรแกรมทุ� 1 สูร�าง folder ช �อ 517111/รห�สูน�กศ3กษา สูร�างไฟลี่� hello.c โด้ยให�พิ�มพิ�ค�าว-า hello world การใช�งาน turbo c

พิ�มพิ�ช �อต�วเองเพิ��มอ�กหน3�งบรรทำ�ด้

F2 SaveAlt+F9 CompileCtrl+F9 Compile & RunAlt+F5 Output

Page 21: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม

#include <stdio.h>

void main() { printf(“Hello world\n\n"); printf(“Welcome to Computer Programming 1"); return ;}

Hello world Welcome to Computer Programming 1

ผู้ลี่การทำ�างาน

โปรแกรมBackslash n n

ขี3&นบรรทำ�ด้ใหม-

Page 22: โครงสร้างภาษาซีเบื้องต้น

ค�าแนะน�า

#include <stdio.h>

main ()

{ clrscr();

….

getch();}

เคลี่�ยร�หน�าจอ

โปรแกรม

รอร�บค-าจากค�ย�บอร�ด้

Page 23: โครงสร้างภาษาซีเบื้องต้น

การใช้� การใช้� ControlControl ด้�วัยด้�วัย BackslashBackslashจำากต้�วัอย(างทุ� 3 จะเห;นได้�ว-าหากต�องการให�แสูด้งผู้ลี่ขี�ามบรรทำ�ด้จะต�องเพิ��ม \n ลี่งไป เร�ยกว-า backslash

นอกจากน�&ย�งม�ต�วอ �นๆ เช-น\n\n ขี3&นบรรทำ�ด้ใหม-\t\t เว�นระยะ 1 tab

\xhh\xhhใสู-ต�วอ�กษร hh เม �อ hh เป'นเลี่ขีฐานสู�บหก เช-น 41 = 'A', 42 = 'B'

\a\a สู-งเสู�ยงป?& บ\\\\ แสูด้ง \\\"" แสูด้ง "

Page 24: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม

#include <stdio.h>

main() { printf("%%dd %%5.2f5.2f %%ss", 12, 20.3, "Example");}

12 20.30 Example

โปรแกรม

ผู้ลี่การทำ�างาน

%%d %%5.2f %%s ค อ รห�สูควบค2ม

Page 25: โครงสร้างภาษาซีเบื้องต้น

รห�สควับื้ค,มล�กษณะรห�สควับื้ค,มล�กษณะ (Format String)(Format String)

%d%d พิ�มพิ�จ�านวนเต;มฐานสู�บ%u%u พิ�มพิ�เลี่ขีไม-ม�เคร �องหมาย%f%f พิ�มพิ�เลี่ขีทำศน�ยม%e%e พิ�มพิ�ในร"ปจ�านวนจร�งยกก�าลี่�ง%c%c พิ�มพิ�ต�วอ�กษรต�วเด้�ยว%s%s พิ�มพิ�ช2ด้ต�วอ�กษร (String)

%%%% พิ�มพิ�เคร �องหมาย %%o%o พิ�มพิ�เลี่ขีฐานแปด้%x%x พิ�มพิ�เลี่ขีฐานสู�บหก

Page 26: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม

#include <stdio.h>#define x 65main() { printf("%%d %%c %%o %%x\n", x, x, x, x); printf(“x = %d”, x);}

65 A 101 41X = 65

โปรแกรม

ผู้ลี่การทำ�างาน

Page 27: โครงสร้างภาษาซีเบื้องต้น

การจำ�ด้การหน�าจำอด้�วัยรห�สการจำ�ด้การหน�าจำอด้�วัยรห�สควับื้ค,มล�กษณะควับื้ค,มล�กษณะ

ในกรณ�ทำ��ต�องการจ�ด้การหน�าจอแสูด้งผู้ลี่สูามารถใช�ต�วเลี่ขีร-วมก�นก�บรห�สูควบค2มได้� เช-น

%5d หมายถ3ง แสูด้งต�วเลี่ขีจ�านวนเต;ม 5 หลี่�กอย-างต��า

%5.2f หมายถ3ง แสูด้งต�วเลี่ขีจ�านวนจ�านวน 5 หลี่�กอย-างต��า แลี่ะ

ทำศน�ยม 2 ต�าแหน-งค(า %d %5d

12 12 ___12

123 123 __123

1234 1234 _1234

12345 12345 12345

ค(า %f %5.2f

1.2 1.200000 _1.20

1.234 1.234000 _1.23

12.345 12.345000 12.35

123.456 123.456000 123.46

Page 28: โครงสร้างภาษาซีเบื้องต้น

โปรแกรมทุ� 2 สูร�างไฟลี่� print.c โด้ย ก�าหนด้ #define ด้�งต-อไปน�&

จ�านวนเต;ม X ม�ค-า 65 จ�านวนจร�ง Y ม�ค-า 1.23456ต�วอ�กษร CH ม�ค-า ‘C’ ช2ด้ต�วอ�กษร SU ม�ค-า “Silpakorn

university” พิ�มพิ�ค-าต-างๆ ทำ��ก�าหนด้ ให�แสูด้งผู้ลี่ด้�งร"ป

X in decimal = 65 X in octadecimal =

101X in Hexadecimal =

41Y = 1.234Y = 1.23e+00

CH = %CSU = “Sipakorn

university”

Page 29: โครงสร้างภาษาซีเบื้องต้น

การเก;บค-าในภาษา C ทำ�าได้� 2 ลี่�กษณะ ค อ

แบบค-าคงทำ�� (Constant) แบบต�วแปร (Variable)

การสูร�างต�วแปร ต�องร" �ว-าจะใช�ต�วแปรเก;บค-าอะไร ประกาศต�วแปรให�เหมาะสูมก�บค-าทำ��จะเก;บ

ชน�ด้ขีองต�วแปรหลี่�กในภาษา C ต�วแปรทำ��ใช�เก;บอ�กขีระ (Character variable) ต�วแปรทำ��ใช�เก;บเลี่ขีจ�านวนเต;ม (Integer variable) ต�วแปรทำ��ใช�เก;บเลี่ขีจ�านวนจร�ง (Float variable)

Page 30: โครงสร้างภาษาซีเบื้องต้น

การประกาศต้�วัแปร

ร"ปแบบขีองการประกาศต�วแปร

int i; ประกาศ i ให�ชน�ด้เป'นinteger

float realnum; ประกาศ realnum ให� ม�ชน�ด้เป'น float

char ch; ประกาศ ch ให�ชน�ด้ เป'น character

ช้น%ด้ต้�วัแปร ช้� อต้�วัแปร;

Page 31: โครงสร้างภาษาซีเบื้องต้น

ช้น%ด้ขั้องต้�วัแปร

ประเภทุขั้�อม4ล

ค�าอธิ%บื้าย ค(าทุ� เก5บื้ได้� ขั้นาด้ (ไบื้ต้0)

char ต้�วัอ�กษร 1 ต้�วั

- 128 ถ3ง 127

1

short ต�วเลี่ขีจ�านวนเต;ม

- 128 ถ3ง 127

1

int ต้�วัเลขั้จำ�านวันเต้5ม

-32768 ถ3ง 32767

2

long ต�วเลี่ขีจ�านวนเต;ม -232 ถ3ง 232-1 4

float ต้�วัเลขั้ทุศน%ยม

3.4E+/-38 (7 ต�าแหน-ง)

4

double ต�วเลี่ขีทำศน�ยม

1.7E+/-308 (15 ต�าแหน-ง)

8

Page 32: โครงสร้างภาษาซีเบื้องต้น

การประกาศต้�วัแปรช้น%ด้เด้�ยวัก�น เราสูามารถ ประกาศต้�วัแปรหลายๆต้�วั ทุ� ม�ช้น%ด้

เด้�ยวัก�น โด้ยใช�เพิ�ยง ประโยค(statement) เด้�ยวได้� โด้ยใช�ร"ปแบบ

1. การประกาศทุ�ละต้�วั เช้(นint i; int j; int k;

2. การประกาศพัร�อมก�นหลายต้�วั เช้(น int i, j, k;

Page 33: โครงสร้างภาษาซีเบื้องต้น

การประกาศต้�วัแปรพัร�อมให�ค(าเร% มต้�น ในภาษา C ประโยค (statement) ขีองการ

ประกาศต�วแปร สูามารถก�าหนด้ค-าเร��มต�นให�ก�บ ต�วแปรได้�ทำ�นทำ�

โด้ยใช�ร"ปแบบ

เช-น int i = 5;

ช้น%ด้ต้�วัแปร ช้� อต้�วัแปร =ค(าเร% มต้�น;

นอกจากน�&ย�งสูามารถประกาศ หลี่ายๆ ต�วแปรในบรรทำ�ด้เด้�ยว

ก�นได้�อ�กเช-น int i = 5, k = 3, y;

Page 34: โครงสร้างภาษาซีเบื้องต้น

หล�กการต้��งช้� อ หล�กการต้��งช้� อ ((IdentifierIdentifier))ช้� อ (Identifier)

ไอเด้นต�ฟายเออร� เป'นช �อทำ��ผู้"�ใช�ก�าหนด้ขี3&นในโปรแกรม เช-น ช �อค-าคงทำ�� ช �อต�วแปร ช �อฟ/งก�ช�น เป'นต�น

ต�องขี3&นต�นด้�วยต�วอ�กษรภาษาอ�งกฤษ (ต�วใหญ-หร อเลี่;กก;ได้� )หร อขี�ด้ลี่-าง ‘_’

ตามด้�วยต�วอ�กษรภาษาอ�งกฤษ ต�วเลี่ขี หร อขี�ด้ลี่-าง (Underscore) ‘_’

ไม-ม�ช-องว-างหร อต�วอ�กษรพิ�เศษอ �นๆ เช-น ‘!’, ‘@’, ‘#’, ‘$’, ‘%’, ‘^’ เป'นต�น

ต�วพิ�มพิ�ใหญ-แลี่ะเลี่;กจะเป'นคนลี่ะต�วก�นเช-น NAME, name, Name, NamE

ห�ามซ�&าก�บค�าสูงวน Reserve Words ขีองภาษา C ห�ามต�&งช �อซ�&าก�บ Function ทำ��อย"-ใน Library ขีองภาษา C

Page 35: โครงสร้างภาษาซีเบื้องต้น

ค�าสงวัน ค�าสงวัน Reserve Words Reserve Words ขั้องภาษา ขั้องภาษา CC

auto double int struct

break else long switch

case enum register typedef

char extern return union

const float short unsigned

continue for signed void

default goto sizeof volatile

do if static While

asm _cs _ds _es

_ss cdecl far huge

interrupt near pascal _export

Page 36: โครงสร้างภาษาซีเบื้องต้น

ว�ธี�การสูร�างต�วแปรแลี่ะก�าหนด้ค-า #include <stdio.h>

void main() { int age;

char sex; float grade;

age = 20; sex = ‘ f ’; grade = 3.14;}

#include <stdio.h>void main()

{ int age = 20;

char sex = ‘ f ’; float grade = 3.14; char name[10] =

“malee” printf(“you are %s\

n”,name); . . .}

Page 37: โครงสร้างภาษาซีเบื้องต้น

a + b x = y c = a + b x == y ++i

น%พัจำน0 น%พัจำน0อาจำประกอบื้ด้�วัย

ต้�วัแปร ค(าคงทุ� การเร�ยกใช้�ฟั/งก0ช้�น หร�อม�ต้�วัด้�าเน%นการร(วัมอย4(ก5ได้�

Page 38: โครงสร้างภาษาซีเบื้องต้น

ต้�วัด้�าเน%นการ

ลี่�าด้�บความสู�าค�ญน�อย

ลี่�าด้�บความสู�าค�ญมาก»̈n¤ ° ª́ εÁ· µ¦� � � � � � � � ª́ εÁ· µ¦� � � � �

ª́ εÁ· µ¦¥¼µ¦¸� � � � � � ¼®µ¦Â̈³®µÁ«¬Á®̈º°� � ª Â̈³̈� � � ª́ εÁ· µ¦Á¦¥̧Á̧¥� � � � � � � � � ª́ εÁ· µ¦Á̧¥Ánµ� � � � � � � �

AND OR ª́ εÁ· µ¦ÁºÉ° Å� � � � � � � � ª́ εÁ· µ¦ ε® nµ� � � � � � � � �

- ++ -- ! sizeof (type) * / %

+ - < <= > >=

== != && || ? :

= += -= *= /= %=

Page 39: โครงสร้างภาษาซีเบื้องต้น

โปรแกรมทุ� 3 สูร�างไฟลี่� triangle.c โด้ยให�

ร�บค-าฐานเป'นเลี่ขีจ�านวนจร�ง ร�บค-าความสู"งเป'นเลี่ขีจ�านวนจร�ง ค�านวนหาค-าพิ &นทำ��ขีองสูามเหลี่��ยม

Area = ½ * ฐาน * สู"ง

Page 40: โครงสร้างภาษาซีเบื้องต้น

การใช้� การใช้� scanf()scanf()

เป'นค�าสู��งทำ��ใช�ในการร�บค-า โด้ยม�ร"ปแบบการใช�งานด้�งน�&scanf(“format string”, address list …);

format string เป�นส(วันทุ� ใช้�ในการใส(ร4ปแบื้บื้ขั้องการร�บื้ขั้�อม4ล

address list เป�นต้�าแหน(งต้�าแหน(งขั้องต้�วัแปรทุ� ต้�องการจำะเก5บื้

ขั้�อม4ล

Page 41: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม

#include <stdio.h>

void main() { int x ;

scanf("%%d",&&x); printf("%%d %%c", x, x); return ;}

6666 B

6565 A

โปรแกรม

ผู้ลี่การทำ�างาน

Page 42: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม

#include <stdio.h>

void main() { char s1[80], s2[80] ;

scanf("%%[0-9]%%[a-zA-Z]", s1, s2); printf("%%s %%s", s1, s2); return ;}

1234test1234 test

test1234 test

โปรแกรม

ผู้ลี่การทำ�างาน

Page 43: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม

#include <stdio.h>

void main() { float b,h,area ; printf("Input Base = "); scanf("%%f",&&b); printf("Input Height = "); scanf("%%f",&&h); area = 0.5*b*h ; printf("Area of triangle is %%5.2f",area); return ;}

Input Base = 12.0Input Height = 6.0Area of triangle is 36.00

Input Base = 3.2Input Height = 1.2Area of triangle is 1.92

Page 44: โครงสร้างภาษาซีเบื้องต้น

โปรแกรมทุ� 4 สูร�างไฟลี่� circle.c โด้ยให�

ร�บค-าร�ศม�เป'นเลี่ขีจ�านวนจร�ง ก�าหนด้ค-าคงทำ�� PI ม�ค-า 3.14159 ค�านวนหาค-าพิ &นทำ��ขีองวงกลี่ม

Area = PI* (ร�ศม�)2

Page 45: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม

/* program to calculate area of a circle */#include <stdio.h>#define PI 3.14159main(){

float radius, area;printf(“Input Radius = ?");scanf("%f", &radius);area = PI * radius * radius;printf("Area of circle is %7.2f ", area);

}

Input Radias = 12.0Area of circle is 452.39

Page 46: โครงสร้างภาษาซีเบื้องต้น

โปรแกรมทุ� 5 สูร�างไฟลี่� donut.c โด้ยให�

ร�บค-าร�ศม�ขีองวงกลี่ม 2 วง ก�าหนด้ค-าคงทำ�� PI ม�ค-า 3.14159 ค�านวนหาค-าพิ &นทำ��ขีองวงกลี่มสู-วนสู�เทำา

Page 47: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม#include <stdio.h>#define PI 3.14159main() { float radius1,radius2, area1, area2; printf("Input outer radius ="); scanf(%f, &radius1); printf("Input inner radius ="); scanf(%f, &radius2); if (radius2 < radius1) { area1 = PI * radius1 * radius1; area2 = PI * radius2 * radius2; printf("Area of donut is %5.2f", area1-area2); }}

Page 48: โครงสร้างภาษาซีเบื้องต้น

จบโครงสูร�างภาษาซ�เบ &องต�น

Question ?Question ?

Page 49: โครงสร้างภาษาซีเบื้องต้น

ค�าถามเก� ยวัก�บื้ ค�าถามเก� ยวัก�บื้ printf()printf()

yards = 8;feet = yards * 3;printf(“%d yards is \n”, yards);Printf(“%d feet”, feet);

จากสู-วนขีองโปรแกรม

8 yards is24 feet

ผู้ลี่การทำ�างาน ค อ ?

Page 50: โครงสร้างภาษาซีเบื้องต้น

ต้�วัอย(างโปรแกรม

test1234test 1234

1234test 1234

ผู้ลี่การทำ�างาน

#include <stdio.h>

void main() { char s1[80], s2[80] ;

scanf("%%[^0-9]%%[^a-zA-Z\n]", s1, s2); printf("%%s %%s", s1, s2); return ;}

โปรแกรม