Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 26

Khi nim c bn C

Chng 1

Mc Tiu
Phn bit s khc nhau gia Cu lnh, Chng trnh v Phn mm Bit c qu trnh hnh thnh ngn ng C Bit c khi no dng C v ti sao Nm c cu trc ngn ng C Hiu r khi nim gii thut (algorithms) V lu (flowchart) S dng c cc k hiu dng trong lu
Lp trnh c bn C/Chng 1/ 2 of 26

Phn mm, chng trnh, cu lnh


Software

Program 1

Program 2

Commands

Commands

Commands

Lp trnh c bn C/Chng 1/ 3 of 26

Bt u C
BPCL Martin Richards B Ken Thompson C Dennis Ritchie

Lp trnh c bn C/Chng 1/ 4 of 26

Cc lnh vc ng dng ca C
C c dng lp trnh h thng Mt chng trnh h thng lm thnh mt phn h
iu hnh hoc cc tin ch h tr ca h iu hnh H iu hnh (Operating Systems), trnh thng dch (Interpreters), trnh son tho (Editors), trnh Hp Ng (Assembly) c gi l chng trnh h thng H iu hnh UNIX c pht trin da vo C C cc trnh bin dch dnh cho hu ht cc loi h thng PC
Lp trnh c bn C/Chng 1/ 5 of 26

Ngn ng cp trung
Ngn ng cp cao

C
Ngn ng hp ng
Lp trnh c bn C/Chng 1/ 6 of 26

Ngn ng c cu trc
C cho php tng hp m lnh v d liu N c kh nng tp hp v n
i tt c thng tin, lnh khi phn cn li ca chng trnh dng cho nhng tc v ring

Chng trnh C c th c chia nh thnh


nhng hm (functions) hay nhng khi m (code blocks).
Lp trnh c bn C/Chng 1/ 7 of 26

c im ca C
C c 32 t kha Nhng t kha ny kt hp vi c php ca C hnh
thnh ngn ng C Cc quy tc c p dng cho cc chng trnh C Tt c t kha l ch thng main() on m trong chng trnh C {
c phn bit ch thng, ch hoa, do while khc DO WHILE T kha khng th dng t tn bin (variable name) hoc tn hm (function name)
/* This is a sample Program*/ int i,j; i=100; j=200; : }

Lp trnh c bn C/Chng 1/ 8 of 26

Cu trc chng trnh C main()


Chng trnh C c chia nh thnh nhng n v gi l hm Khng k c bao nhiu hm trong chng trnh, H iu hnh lun trao quyn iu khin cho hm main() khi mt chng trnh C c thc thi. Theo sau tn hm l du ngoc n Du ngoc n c th c cha hay khng cha nhng tham s
Lp trnh c bn C/Chng 1/ 9 of 26

Cu trc chng trnh C (tt.) Du phn cch {}


Sau phn u hm l du ngoc xon m { N cho bit vic thi hnh lnh trong hm bt u Tng t, du ngoc xon ng } sau cu lnh cui cng trong hm ch ra im kt thc ca hm
Lp trnh c bn C/Chng 1/ 10 of 26

Cu trc chng trnh C (tt.) Du kt thc cu lnh ;


Mt cu lnh trong C c kt thc bng du chm phy ; Trnh bin dch C khng hiu vic xung dng, khong trng hay tab Mt cu lnh khng kt thc bng du chm phy s c xem nh dng lnh li trong C
Lp trnh c bn C/Chng 1/ 11 of 26

Cu trc chng trnh C (tt.) /*Dng ch thch*/


Nhng ch thch thng c vit m t cng vic ca mt lnh c bit, mt hm hay ton b chng trnh Trnh bin dch s b qua phn ch thch Trong trng hp ch thch nhiu dng, n s bt u bng k hiu /* v kt thc l */
Lp trnh c bn C/Chng 1/ 12 of 26

Th vin C

Tt c trnh bin dch C u cha


mt th vin hm chun Mt hm c vit bi lp trnh vin c th c t trong th vin v c dng khi cn thit Mt s trnh bin dch cho php thm hm vo th vin chun Mt s trnh bin dch yu cu to mt th vin ring
Lp trnh c bn C/Chng 1/ 13 of 26

Bin dch v thi hnh chng trnh

Lp trnh c bn C/Chng 1/ 14 of 26

Cc bc lp trnh gii quyt vn


Gii thut gm mt tp hp cc bc thc hin nhm gii quyt mt vn . Th d sau y m t mt gii thut

Phng hc

Ri phng hc

n cu thang

Xung tng hm i n qun n t phc v Cafeteria


Lp trnh c bn C/Chng 1/ 15 of 26

y l cc bc thc hin khi mt ngi mun i n qun n t phc v t phng hc

Gii quyt mt vn
gii quyt mt vn
Hiu vn r rng

Thu thp thng tin thch hp

X l thng tin

t c kt qu
Lp trnh c bn C/Chng 1/ 16 of 26

M gi (Pseudocode)
Khng l m tht. Mt phng php vit gii thut s dng mt tp hp cc t tng t m tht
BEGIN

DISPLAY Hello World !


END

Mi on m gi phi bt u vi mt t BEGIN hin th gi tr no , t DISPLAY c dng M gi kt thc vi t END


Lp trnh c bn C/Chng 1/ 17 of 26

Lu (Flowcharts)
Lu l mt hnh nh minh ho cho gii thut
START

DISPLAY Hello World !

STOP

Lp trnh c bn C/Chng 1/ 18 of 26

Biu tng trong lu

Lp trnh c bn C/Chng 1/ 19 of 26

Lu cng hai s

Lp trnh c bn C/Chng 1/ 20 of 26

Cu trc IF
S TAR T

BEGIN INPUT num r = num MOD 2 IF r=0 Display Number is even END IF END

IN P U T n u m

r = n u m M OD 2

r =0

Yes

No

D IS P L AY "N u m b e r i s E ve n "

S TOP

Lp trnh c bn C/Chng 1/ 21 of 26

Cu trc IFELSE
S TA RT

BEGIN INPUT num r=num MOD 2 IF r=0 DISPLAY Even Number ELSE DISPLAY Odd Number END IF END

INP UT num

r = num M O D 2

Yes
r=0

No

DIS P LAY "Num ber is E ven"

DIS PLA Y "Num ber is O dd"

S TOP
Lp trnh c bn C/Chng 1/ 22 of 26

a iu kin s dng AND/OR


BEGIN INPUT yearsWithUs INPUT bizDone IF yearsWithUs >= 10 AND bizDone >=5000000 DISPLAY Classified as an MVS ELSE DISPLAY A little more effort required! END IF END
Lp trnh c bn C/Chng 1/ 23 of 26

Cu trc IF lng nhau


BEGIN INPUT yearsWithUs INPUT bizDone IF yearsWithUs >= 10 IF bizDone >=5000000 DISPLAY Classified as an MVS ELSE DISPLAY A little more effort required! END IF ELSE DISPLAY A little more effort required! END IF END
Lp trnh c bn C/Chng 1/ 24 of 26

Cu trc IF lng nhau (tt.)


START INPUT YearsWithUs INPUT bizDone

YES

YearsWithUs >= 10

NO

DISPLAY A Little more effort required NO bizDone > 5000000 YES

DISPLAY A Little more effort required


DISPLAY Classified as an MVS STOP
Lp trnh c bn C/Chng 1/ 25 of 26

Vng lp
S TA R T

BEGIN cnt=0 WHILE (cnt < 1000) DO DISPLAY Scooby cnt=cnt+1 END DO END

cn t= 0

No
cn t < 1 0 0 0

Yes
D IS PL A Y " Sc o ob y "

cn t= c n t+ 1

S TOP

Lp trnh c bn C/Chng 1/ 26 of 26

You might also like