อ.พิศิษฐ์ นาคใจ คณะ...

44
อ.พิศิษฐ์ นาคใจ คณะวิทยาศาสตร์และเทคโนโลยี มหาวิทยาลัยราชภัฎอุตรดิตถ์ 1 โครงสร้าง ภาษาซี

Upload: others

Post on 01-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

อ.พศษฐ นาคใจ

คณะวทยาศาสตรและเทคโนโลย

มหาวทยาลยราชภฎอตรดตถ

1

โครงสราง ภาษาซ

Page 2: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

วตถประสงค

2

สามารถเขยนโปรแกรมภาษาซอยางงาย ๆ ได

สามารถแสดงขอความออกทางจอภาพได

สามารถแสดงขอมลชนดตางๆ ออกทางจอภาพได

สามารถก าหนดรปแบบการแสดงขอมลออกทางจอภาพได

Page 3: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

สวนประกอบของภาษาซ

โครงสรางภาษาซแบงออกเปน 2 สวนคอ

1. Head โปรแกรม

2. Body โปรแกรม

Page 4: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

Head โปรแกรม

สวนหวของโปรแกรม นบตงแตบรรทดแรกจนถงสวนทเปน main function

สวนหวโปรแกรมใชส าหรบเขยนค าสงพเศษบางอยาง กอนทจะเรมใหโปรแกรม

ท างาน

สวนประกอบ Head โปรแกรม

พรโปรเซสเซอรไดเรคทฟ -> ค าสงภาษาซพเศษ จะมเครองหมาย # อยดานหนา

ตวอยาง #include #define

- การประกาศตวแปร -> สวน Head สามารถประกาศตวแปรไดตวแปรทประกาศสวน

Head จะมลกษณะทเปน Gobal

Page 5: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

#include

พรโปรเซสเซอร ทส าคญคอ #include ท าหนาท ดง Function ทเกยวของกบ

โปรแกรมมาใชงาน มการประกาศ 2 ลกษณะ

1. #include <ชอไฟล>

ตวอยาง

#include <stdio.h>

#include <math.h>

การใชเครองหมาย <> เพราะให ภาษาซคนหาไฟลจากแฟมทก าหนดไวกอน

Page 6: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

#include2. #include “ชอไฟล”

ตวอยาง

#include “stdio.h”

#include “math.h”

การใชเครองหมาย “ ” หมายถงให ภาษาซคนหาไฟลทก าหนดใน แฟมปจจบนทโคด

เราเขยนอย

Page 7: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยาง

Page 8: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

การสรางตวแปร

ส าหรบการสรางตวแปรทสวนหวของโปรแกรม สามารถสรางได แตโปรแกรมนนจะ

สามารถมองเหนไดทกๆ Function

วธการสรางตวแปร แสดงไดดงน

ชนดตวแปร ชอตวแปร;

ชนดตวแปร ชอตวแปร = คาเรมตนของตวแปร;

Page 9: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยาง

Page 10: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

สวนของตวโปรแกรม

การเขยนโปรแกรมภาษาซ โปรแกรมจะเรมท างานท main Function เปนสวน

แรกและกระท าค าสงภาษาซทถกเขยนขน รปแบบค าสงแบบออกเปน 2 รปแบบ

- ค าสงเดยว คอค าสงทมเพยงค าสงเดยว เพอท างานอยางใดอยางหนง

- ฟงกชน คอชดค าสงเดยวหลายๆ ค าสง รวมไวเปนบลอคของค าสง

Page 11: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ค าสงเดยว

เปนค าสงทมเพยงค าสงเดยว เพอท างานอยางใดอยางหนงเทานน ตวอยางเชน

int a = 7;

float b = 3.0;

c = a+b;

a = b*c;

Page 12: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ฟงกชน หรอ Block ของค าสง

เปนการน าค าสงหลายๆ ค าสงมาเขยนรวมกนไวเปน Block ของค าสง block

ของค าสงจะมเครองหมาย วงเลบปกกาเปด และ วงเลบปกกาปดบอกขอบเขตของ

ชดค าสง

ตวอยาง

Page 13: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

รปแบบการเขยนค าสงภาษาซ

การเขยนค าสงภาษาซ จะตองเขยนใหถกตองตามขอก าหนดของภาษาดงน

ค าสงในภาษาซ จะตองใชตวอกษรตวเลก เชน printf();

ทกค าสงตองลงทายดวยเครองหมาย ;

Page 14: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

โครงสรางโปรแกรมภาษาซ (1)

14

#include<ชอไฟลชดค าสงภายนอก (library).h>type variable;int main(){

type variable;statement ท 1;...statement ท n;return 0;

}

พรโปรเซสเซอรไดเรคทฟ

ตวแปรชนดโกบอล

ฟงกชนหลก สวนตวโปรแกรม

สวนหวโปรแกรม

ตวแปรชนดโลคอล

ชดค าสง

Page 15: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ฟงกชนหลก

15

ฟงกชนหลกเปนฟงกชนทโปรแกรมภาษาซตองมอยเสมอ เพราะคอมไพเลอรของภาษาซจะเรมตนการท างานจากฟงกชนหลก

ตวอยางการเขยนฟงกชนหลกทไมมการท างานใดๆ

int main(void){

return(0);}

int main(){

return 0;}

Page 16: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

กฎเกณฑการใชค าสงในภาษาซ

16

ใชเครองหมาย semi colon ; เปนจดสนสดค าสง

ใชอกษรตวเลกส าหรบเรยกใชค าสง (statement)

ใชเครองหมาย comma , ส าหรบคนตวแปร และพารามเตอร

หากค าสงใดมค าสงสวนยอยภายในหลาย ๆ ค าสง ใหใชเครองหมายปกกา { } ส าหรบก าหนดขอบเขต

Page 17: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

การแสดงผลดวยค าสง printf

17

การเขยนโปรแกรมจ าเปนตองมการแสดงผล เพอใหผใชงานทราบวาโปรแกรมสามารถท างานอะไร จ าเปนตองปอนคาอะไรบาง และเมอโปรแกรมท างานเสรจ ผลลพธทไดเปนอยางไร

ค าสงทใชส าหรบการแสดงผลในภาษาซมหลายค าสง แตทสามารถใชงานไดครอบคลมและนยมใชกน คอ ค าสง printf

Page 18: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

รปแบบของค าสง printf

18

format-string คอรปแบบของขอความซงจะประกอบดวย ขอความธรรมดา, คารหส ASCII และ สวนแสดงชนดขอมล โดย format-string จะอยในเครองหมาย Double quote " "

data-list คอชอขอมล หรอตวแปรทจะท าการแสดงผลตามสวนแสดงชนดขอมลใน format-string

printf (format-string, data-list);

หมายเหต ค าสง printf ตองเรยกใช Preprocessor Directive #include<stdio.h>

Page 19: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf ทไมถกตอง

19

int main()

{

printf ("Hello World!");

return 0;

}

Page 20: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf ทถกตอง

20

#include<stdio.h>

int main()

{

printf ("Hello World!");

return 0;

}

Hello World!

Page 21: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

รปแบบของขอความในค าสง printf

21

ขอความธรรมดา เปนสวนทแสดงตวอกษร ตวเลขออกโดยตรง

คารหส ASCII เปนสวนทควบคมรปแบบการแสดงผล เชน การจดยอหนา การขนตนบรรทดใหม เปนตน

สวนแสดงชนดขอมล เปนการก าหนดรปแบบของชนดขอมลทจะแสดงผลขอมล หรอตวแปร สวนแสดงชนดขอมลแบบปกต สวนแสดงชนดขอมลทก าหนดรปแบบการแสดงผล

Page 22: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ขอความธรรมดา

22

การแสดงขอความธรรมดาเปนการใชค าสง printf ใหแสดงขอความทตองการออกทางจอภาพ โดยจะอยในสวนของ format-string ในค าสง (อยในเครองหมาย Double quote " ")

เชน ค าสงในตวอยางโปรแกรมทผานมา

จะท าการแสดงขอความ Hello World! ออกทางจอภาพหลงจากสง Run โปรแกรม

printf (format-string, data-list);

printf ("Hello World!");

Page 23: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf หลายๆค าสง

23

Hello World!

This is my first Program.

I am a programmer.

Hello World!This is my first Program.I am a programmer.

#include<stdio.h>

int main()

{

printf ("Hello World!");

printf ("This is my first Program.");

printf ("I am a programmer.");

return 0;

}

Page 24: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

คารหส ASCII

24

คารหส ASCII เปนอกขระพเศษทใชงานในภาษาซ ซงใชควบคมการแสดงผลในค าสง printf ในสวนของ format-string

คารหส ASCII การใชงาน\t เวนชองวางทก 1 แทป (8 ชองตวอกษร)

\n ขนบรรทดใหม

\0 เปนอกขระวาง

\' แสดง single quote ออกทางจอภาพ

\" แสดง double quote ออกทางจอภาพ

\\ แสดง backslash ออกทางจอภาพ

Page 25: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf โดยใชคารหส ASCII

25

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

printf ("Hello World!\n");printf ("This is my first Program.");printf ("\n\tI\'m a programmer.");return 0;

}

Hello World!This is my first Program.

I'm a programmer.

Page 26: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

สวนแสดงชนดขอมล

26

ในการเขยนโปรแกรมทมการประยกตขน เชนโปรแกรมค านวณเลข จะตองมการแสดงผลลพธของคาทท าการค านวณ ซงค าสง printf สามารถแสดงผลคาตวแปรได แตจะตองเขยนโปรแกรมใหมความสมพนธกนในสวนของ format-string และ data-list

โดยทใน format-string จะมสวนแสดงชนดขอมล และใน data-list จะมขอมล หรอตวแปรทจะแสดงผล

printf (format-string, data-list);

Page 27: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

การก าหนดสวนแสดงชนดขอมลแบบตางๆ

สวนแสดงชนดขอมล การใชงาน%d แสดงผลขอมลชนดจ านวนเตม%u แสดงผลขอมลชนดจ านวนเตมบวก (ไมคดเครองหมาย)%o แสดงผลขอมลเปนเลขฐานแปด%x แสดงผลขอมลเปนเลขฐานสบหก%f แสดงผลขอมลชนดจ านวนทศนยม (6 ต าแหนง)%e แสดงผลขอมลเปนจ านวนทศนยมและอยในรปยกก าลง%c แสดงผลขอมลชนดอกขระ%s แสดงผลขอมลชนดขอความ%p แสดงผลขอมลชนดตวชต าแหนง

27

Page 28: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf แสดงผลขอมล

28

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

printf ("My name is : %s\n",“Pisit");printf ("My point : %d\n",10+40+49);printf ("Grade : %c\n",'A');printf ("GPA : %f",3.99);return 0;

}

My name is :KmitlMy point : 99Grade : AGPA : 3.990000

Page 29: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

การก าหนดรายชอตวแปรในค าสง printf

29

การแสดงผลตวแปรโดยใชค าสง printf สามารถใชงานโดยการใสขอมล หรอชอตวแปรในสวนของ data-list

หากไมตองการแสดงผลตวแปร ไมตองมสวนของ data-list

หากตองการแสดงผลขอมล หรอตวแปรมากกวาหนงตวในค าสงใหใช เครองหมาย comma , ส าหรบคนชอตวแปร โดยจะท าการแสดงผลตามล าดบตวแปร และสวนการแสดงชนดขอมล

Page 30: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

รายชอตวแปรในค าสง printf

30

printf ("...%?...", data);

printf ("%? %? ... %?", data-1, data-2, ..., data-n);

...data...

data-1 data-2 ... data-n

printf ("...%d...",19);

...19...

printf ("%d-%d-%d",19,1,1980);

19-1-1980

ตวอย

างตว

อยาง

Page 31: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf แสดงผลขอมลหลายตว-1

31

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

printf ("Age = %d, GPA = %f\n",17,3.75);printf ("Programming: %f\nMechanics: %f",4.0,3.5);return 0;

}

Age = 17, GPA = 3.750000Programming: 4.000000Mechanics: 3.5000000

Page 32: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf แสดงผลขอมลหลายตว-2

32

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

printf ("Subject : %s(%d)\n","Programming",2554);printf ("Point : %d\nGrade : %c",99,'A');return 0;

}

Subject : Programming(2552)Point : 99Grade : A

Page 33: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

สวนแสดงชนดขอมลทก าหนดรปแบบการแสดงผล (1)

33

เปนการจองพนทหนาจอจ านวน m ตวอกษร แลวแสดงผล data ชดดานขวาของพนทสวนทจองไว โดยชนดขอมลตาม ? (หากความยาวเกนสวนทจองไวกจะเลอนออกไป)

เปนการจองพนทหนาจอขนาด m ตวอกษร แลวแสดงผล data ชดดานซายของพนทสวนทจองไว โดยชนดขอมลตาม ?

printf ("%m?",data);

printf ("%-m?",data);

Page 34: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf โดยมการก าหนดรปแบบ-1

34

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

printf ("123456789012345678901234567890");printf ("\n%20d*",46);printf ("\n%-20d*",46);printf ("\n%3d*",46);printf ("\n%3d*",2550);return 0;

}

Page 35: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf โดยมการก าหนดรปแบบ-2

35

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

printf ("123456789012345678901234567890");printf ("\n%20c*",'c');printf ("\n%-20c*",'c');printf ("\n%10s*","Pro");printf ("\n%10s*","Programming");return 0;

}

Page 36: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

สวนแสดงชนดขอมลทก าหนดรปแบบการแสดงผล (2)

36

เปนการก าหนดใหแสดงจ านวนทศนยม n ต าแหนง ส าหรบ %f หรอแสดงอกขระจ านวน n ตว ส าหรบ %s

เปนการจองพนทหนาจอขนาด m ตวอกษรแลวแสดงผล data จ านวนทศนยม n ต าแหนง ส าหรบ %f หรอแสดงอกขระจ านวน n ตว ส าหรบ %s

printf ("%.n?",data);

printf ("%m.n?",data);

Page 37: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf โดยมการก าหนดรปแบบ-3

37

printf ("123456789012345678901234567890");printf ("\n%20s*","programming");printf ("\n%-20s*","programming");printf ("\n%.3s*","programming");printf ("\n%20.3s*","programming");printf ("\n%-20.3s*","programming");

Page 38: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ตวอยางการใชงานค าสง printf โดยมการก าหนดรปแบบ-4

38

printf ("123456789012345678901234567890");printf ("\n%20f*", 1234.56789);printf ("\n%-20f*", 1234.56789);printf ("\n%.3f*", 1234.56789);printf ("\n%20.3f*", 1234.56789);printf ("\n%-20.3f*", 1234.56789);

Page 39: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

ค าอธบายโปรแกรม Comment

39

ค าอธบายโปรแกรมเปนสวนทเพมในโปรแกรมเพอชวยใหผทเขยน หรอผทอานโปรแกรมสามารถเขาใจกบตวโปรแกรมไดงายขน

โดยทค าอธบายโปรแกรมนจะไมมผลตอการท างานของโปรแกรม คอเวลาทท าการคอมไพล จะขามขอความทอยในสวนอธบายโปรแกรมไป

Page 40: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

รปแบบค าอธบายโปรแกรม

40

/* Comment Sentence 1Comment Sentence 2...Comment Sentence n */

/* Comment Sentence */

// Comment Sentence

Page 41: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

แบบฝกหด

41

ใหนกศกษาเขยนโปรแกรมแสดงชอ และ นามสกล ออกทางจอภาพ โดยใหชอ และ

นามสกลอยคนละบรรทดกน

ใหท าการเขยนโปรแกรมโดยใหผลการท างานแสดงรปดอกจนทรเรยงตวเปน

ตวอกษรชอเลนของนสตเอง

Page 42: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

หาผลลพธของชดค าสงตอไปนprintf("%d\n", 1668); >> 1668printf("%.2f\n", 1668.258); >>1668.26printf("%.3f\n", 1668.258); >>1668.258printf("%.3f\n", "1668.258");printf("%+d\n", 422);printf("%04d\n", 422);printf("%s \n", "I\'m eager to go to the next page");

printf("2 + 2 = %d", 4);printf("%d + %d = %d", 2, 3, 5);

Page 43: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

หาผลลพธของชดค าสงตอไปน printf ("Characters: %c\n", 'a');

printf ("Decimals: %d %d\n", 1977, 6500000000);printf ("Preceding with blanks: %7d \n", 1977);printf ("Preceding with zeros: %07d \n", 1977);printf ("Base number: %d %x %o\n", 427, 427, 427);printf ("%s \n", "123 in this text is a String not a number");

Page 44: อ.พิศิษฐ์ นาคใจ คณะ ...mathcom.uru.ac.th/~beebrain/Slide/4121305A/Lec03.pdf · ส่วนประกอบของภาษาซี โครงสร้างภาษาซีแบ่งออกเป็น

เขยนโปรแกรมใหแสดงผลลพธดงน

1.>> '\n' is a New line character.

2.>> Line1

Line2

Line3