Tải bản đầy đủ (.pdf) (7 trang)

Tổng quan lập trình C

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (122.27 KB, 7 trang )

Chổồng I : Tọứng quan


Trang 1
Chơng I.
TỉNG QUAN
I.
Giồùi thióỷu vóử ngọn ngổợ C:
I.1.

Lởch sổớ ngọn ngổợ C:

Ngọn ngổợ C õổồỹc Dennis Ritchie thióỳt kóỳ taỷi phoỡng thờ nghióỷm Bell nm 1972 vồùi muỷc
õờch vióỳt hóỷ õióửu haỡnh UNIX. Tuy nhión nhồỡ tờnh ổu vióỷt vaỡ linh õọỹng cuớa C nón C õaợ õổồỹc
giồùi tin hoỹc sổớ duỷng khừp nồi nhổ mọỹt ngọn ngổợ chờnh thọỳng. Do coù nhióửu phión baớn C cuớa
nhióửu nhaỡ saớn xuỏỳt phỏửn móửm nón nm 1983 ANSI (American National Standard Institute)
xỏy dổỷng tióu chuỏứn ANSI C. Tọứ chổùc ISO cuợng xỏy dổỷng chuỏứn cho C. Hai chuỏứn naỡy giọỳng
nhau vaỡ õổồỹc bióỳt õóỳn vồùi tón chung laỡ ANSI C.
I.2.
ặu õióứm cuớa ngọn ngổợ C:
Hióỷn nay coù rỏỳt nhióửu ngọn ngổợ lỏỷp trỗnh khaùc nhau nhổ PASCAL, JAVA, DELPHI,
BASIC, ... Mọựi ngọn ngổợ coù mọỹt sọỳ õióứm maỷnh rióng tuy nhión ngọn ngổợ C õổồỹc sổớ duỷng
rọỹng raợi nhồỡ nhổợng ổu õióứm sau:
C laỡ ngọn ngổợ maỷnh vaỡ móửm deớo (linh õọỹng). C coù thóứ õổồỹc sổớ duỷng õóứ vióỳt hóỷ
õióửu haỡnh, trỗnh bión dởch cuớa ngọn ngổợ khaùc, trỗnh õióửu khióứn, soaỷn thaớo vn baớn, õọử hoaỷ,
baớng tờnh, ...
Ngọn ngổợ C õổồỹc sổớ duỷng rọỹng raợi bồới caùc nhaỡ lỏỷp trỗnh chuyón nghióỷp vaỡ nhồỡ
coù chuỏứn ANSI C nón coù tờnh khaớ chuyóứn cao : chổồng trỗnh vióỳt cho maùy tờnh IBM-PC coù thóứ
õổồỹc bión dởch vaỡ chaỷy trón hóỷ thọỳng maùy tờnh khaùc nhổ VAX.
Chổồng trỗnh dởch coù hióỷu quaớ cao : õóỳn 80% tờnh nng cuớa chổồng trỗnh õoù
vióỳt trón maợ maùy. Ngọn ngổợ C coù thóứ sổớ duỷng khaù nhióửu chổồng trỗnh dởch vaỡ caùc thổ vióỷn tióỷn


ờch

C coù ờt tổỡ khoaù nón suùc tờch vaỡ cọ õoỹng.
C laỡ ngọn ngổợ coù cỏỳu truùc modul thọng qua vióỷc sổớ duỷng caùc haỡm.
I.3.
Nhổồỹc õióứm cuớa ngọn ngổợ C:
Tuy nhión C cuợng coù mọỹt sọỳ nhổồỹc õióứm sau :
Ngọn ngổợ C coù cuù phaùp laỷ vaỡ khoù hoỹc. Nhổợng ngổồỡi õaợ tổỡng vióỳt ngọn ngổợ
khaùc coù thóứ vổồỹt qua õổồỹc khoù khn naỡy.
Mọỹt sọỳ kờ hióỷu coù yù nghộa khaùc nhau tuyỡ thuọỹc vaỡo ngổợ caớnh sổớ duỷng.
C quaù móửm deớo coù thóứ laỡm cho chổồng trỗnh coù veớ bỏỳt ọứn.
I.4.
Thuỏỷt toaùn (Algorithm):
Thuỏỷt toaùn laỡ mọỹt chuọựi caùc chố dỏựn chờnh xaùc õem õóỳn mọỹt lồỡi giaới cho mọỹt baỡi toaùn.
Khi xỏy dổỷng thuỏỷt toaùn ta chuù yù noù phaới thoaớ maợn caùc õióửu kióỷn sau :
+ Tờnh khaớ thi: thuỏỷt toaùn phaới thổỷc hióỷn õổồỹc khi xỏy dổỷng chổồng trỗnh õóứ chaỷy õổồỹc
trón maùy tờnh.
Chổồng I : Tọứng quan


Trang 2
+ Sọỳ bổồùc cỏửn thổỷc hióỷn trong thuỏỷt toaùn laỡ hổợu haỷn õóứ sau mọỹt sọỳ lỏửn lỷp nhỏỳt õởnh ta
phaới õổồỹc nghióỷm cuớa baỡi toaùn
+ Tờnh tọỳi ổu: thọng thổồỡng õọỳi vồùi mọỹt baỡi toaùn coù nhióửu phổồng phaùp giaới khaùc nhau
ta phaới choỹn ra trong sọỳ õoù phổồng phaùp giaới tọỳi ổu nhỏỳt vóử thồỡi gian thổỷc hióỷn, cho kóỳt quaớ
chờnh xaùc nhỏỳt, khọỳi lổồỹng tờnh toaùn ờt nhỏỳt vaỡ õồn giaớn khi vióỳt chổồng trỗnh.

Vờ duỷ :
+ Phaùt bióứu baỡi toaùn : Trong lồùp coù bao nhióu ngổồỡi tón Xuỏn ?
+ ỏửu vaỡo :


Danh saùch lồùp
Tón cỏửn kióứm tra : Xuỏn
+ ỏửu ra :
Sọỳ ngổồỡi coù tón Xuỏn
+ Thuỏỷt toaùn :
Lỏỳy danh saùch lồùp
Lỏỳy tón cỏửn kióứm tra : Xuỏn
Xoùa bọỹ õóỳm vóử 0

Lỏửn lổồỹt õọỳi vồùi tổỡng tón trong danh saùch : So saùnh vồùi tón cỏửn kióứm tra,
nóỳu õuùng thỗ cọỹng 1 vaỡo bọỹ õóỳm
Thọng baùo giaù trở bọỹ õóỳm ( sọỳ sinh vión coù tón Xuỏn )
I.5.
Lổu õọử :

A
Thổỷc hióỷn cọng vióỷc A
A
Goỹi chổồng trỗnh con A Nhỏỷp xuỏỳt dổợ lióỷu
A
B
uùng
Sai
Begin
End
Tuỡy thuọỹc vaỡo traỷng thaùi õuùng
sai cuớa bióứu thổùc B maỡ reợ
nhaùnh thờch hồỹp
Bừt õỏửu vaỡ kóỳt thuùc mọỹt thuỏỷt toaùn

Chỉång I : Täøng quan


Trang 3
I.6.
Cạc bỉåïc cå bn khi viãút chỉång trçnh C:
• Thiãút kãú chỉång trçnh :
Xạc âënh âáưu vo, âáưu ra ca bi toạn
Xáy dỉûng thût toạn âãø gii quút bi toạn.
• Soản tho :
Sỉí dủng chỉång trçnh soản tho TURBO C hồûc BORLAND C hồûc C++, sau âọ lỉu
lải file âọ våïi tãn l *.c ( âäúi våïi C++ l *.cpp )
• Dëch :
Chỉång trçnh soản tho cng l trçnh biãn dëch.
Trçnh biãn dëch s cọ nhiãûm vủ dëch chỉång trçnh ngưn sang m mạy qua 2 gian
âoản: dëch ra táûp tin *.obj v liãn kãút cạc file *.obj lải våïi nhau qua trçnh liãn kãút. Nãúu
cọ läùi thç ta quay tråí lải bỉåïc soản tho âãø sỉỵa chỉỵa.
• Chảy chỉång trçnh
Nãúu cọ läùi thç ta phi kiãøm tra lải thût toạn, läùi logic, .... âãún khi cho kãút qu âụng.
II.
Cạc pháưn tỉí cå bn ca ngän ngỉỵ C:
II.1.

Bäü kê tỉû ca C:
Ngän ngỉỵ C âỉåüc xáy dỉûng trãn bäü kê tỉû sau :

Cạc chỉỵ cại hoa A .. Z, cạc chỉỵ cại thỉåìng a .. z
• Cạc chỉỵ säú 0 .. 9
• Dáúu cháúm cáu : , ; . ?
• Cạc kê tỉû âàûc biãût nhỉ []{}!@#$%^&*()-=\+|...


Cạc kê tỉû khäng nhçn tháúy nhỉ khong tràõng, dáúu tab, k tỉû xúng dng.
• Kê tỉû gảch dỉåïi _
Âáy chè l táûp con ca Bng m ASCII
Ta khäng âỉåüc phẹp sỉí dủng cạc kê tỉû ngoi bäü kê tỉû trãn.
II.2.
Cạc tỉì khoạ (keyword):
Tỉì khoạ l tỉì dng riãng, khäng thãø âënh nghéa lải, mäùi tỉì khoạ cọ mäüt nghéa riãng.
Ta khäng âỉåüc sỉí dủng tỉì khoạ vo mủc âêch khạc nhỉ âàût tãn cho biãún, hàòng, mng; cáưn
phi viãút chênh xạc tỉì khoạ.
auto asm break case cdecl char const
continue default do double else enum extern
far float for goto huge if int
interrupt long near pascal register return short
signed sizeof static struct switch typedef Union
unsigned void volatile while
_cs _ds _es _ss
_AH _AL _AX _BH _BL _BX _CH
_CL _CX _DH _DL _DX _BP _DI
_SI _SP
Chổồng I : Tọứng quan


Trang 4
II.3.
Tón vaỡ caùch õỷt tón:
Chổồng trỗnh sổớ duỷng rỏỳt nhióửu tón: tón bióỳn, tón hũng, tón haỡm,....
Caùc tón phaới õổồỹc khai baùo trổồùc khi sổớ duỷng
Caùch õỷt tón :
Tón laỡ daợy kờ tổỷ lióửn nhau gọửm caùc chổợ caùi thổồỡng vaỡ hoa, caùc chổợ sọỳ vaỡ dỏỳu

gaỷch dổồùi.

Tón khọng õổồỹc chổùa caùc kờ tổỷ õỷc bióỷt nhổ dỏỳu chỏỳm cỏu, dỏỳu caùch ...
Tón khọng õổồỹc bừt õỏửu bũng chổợ sọỳ
C phỏn bióỷt chổợ hoa vaỡ chổợ thổồỡng : bien,Bien vaỡ BIEN laỡ caùc tón khaùc nhau.
Khọng õổồỹc sổớ duỷng tổỡ khoùa õóứ õỷt tón.

Tón coù thóứ daỡi tồùi 31 kờ tổỷ, tuy nhión khọng nón õỷt tón quaù daỡi.
Tón bióỳn, tón hũng nón phaớn aùnh caùi maỡ noù lổu trổợ
Tón haỡm nón phaớn aùnh cọng vióỷc maỡ noù laỡm.
Vờ duỷ : bien_dem, nghiem1, hoan_vi,... : õuùng.
1st, bien dem, registry laỡ caùc vờ duỷ sai .
Chuù yù : + C coù phỏn bióỷt chổợ hoa vaỡ chổợ thổồỡng
+ Tỏỳt caớ caùc tổỡ khoaù vaỡ haỡm chuỏứn õóửu laỡ chổợ thổồỡng, caùc macro chuỏứn õóửu laỡ
chổợ hoa
II.4.
Lồỡi chuù giaới:
Lồỡi chuù giaới trong chổồng trỗnh coù muỷc õờch laỡm cho ngổồỡi õoỹc dóự hióứu, chổồng trỗnh
saùng suớa, thuỏỷn lồỹi trong vióỷc tỗm kióỳm, sổợa chổợa, gồợ rọỳi, ... nhỏỳt laỡ õọỳi vồùi chổồng trỗnh lồùn,
phổùc taỷp. Ta cỏửn coù thoùi quen sổớ duỷng caùc cỏu chuù thờch. Khọng sổớ duỷng chuù thờch vồùi nhổợng
lóỷnh õaợ quaù roợ raỡng.
Lồỡi chuù giaới khọng coù taùc duỷng taỷo ra maợ chổồng trỗnh. Trỗnh bión dởch seợ boớ qua tỏỳt
caớ caùc cỏu ghi chuù. Ta khọng sổớ duỷng caùc cỏu chuù thờch lọửng vaỡo nhau
Lồỡi chuù giaới ồớ bỏỳt kyỡ õỏu trong chổồng trỗnh, õổồỹc õỷt giổợa cỷp kờ hióỷu /* vaỡ */ , chuù
giaới coù thóứ nũm trón nhióửu doỡng.
Vờ duỷ : /* õỏy laỡ haỡm hoaùn vở
haỡm naỡy sổớ duỷng con troớ */
Trong C++, sau mọựi doỡng, lồỡi chuù giaới coù thóứ nũm sau kờ hióỷu //. Mọựi kờ hióỷu // chố coù
taùc duỷng trón doỡng õoù.
Vờ duỷ : int dem=0; // dem laỡ bióỳn õóỳm.

II.5.
Cỏu lóỷnh vaỡ dỏỳu chỏỳm cỏu:
Mọựi cỏu lóỷnh õổồỹc kóỳt thuùc bũng dỏỳu chỏỳm phỏứy ;
Nhổợng doỡng khọng phaới laỡ cỏu lóỷnh thỗ kóỳt thuùc khọng coù dỏỳu chỏỳm cỏu.
Caùc cỏu lóỷnh cuỡng nhoùm nón õỷt thúng cọỹt.
Mọựi cỏu lóỷnh nón vióỳt trón mọỹt doỡng (nóỳu coù thóứ )



Chổồng I : Tọứng quan


Trang 5
Vờ duỷ :
#include <stdio.h> // khọng phaới laỡ lóỷnh
main()
{
int i,j;
i=0;
return 0; // ba doỡng trón laỡ 3 lóỷnh nón coù dỏỳu ;
}
III.
Cỏỳu truùc chung cuớa chổồng trỗnh :

Chổồng trỗnh C laỡ mọỹt tỏỷp hồỹp nhióửu haỡm trong õoù phaới coù 1 haỡm chờnh goỹi laỡ main().
Haỡm laỡ õoaỷn maợ lóỷnh õọỹc lỏỷp õổồỹc õỷt tón vaỡ thổỷc hióỷn mọỹt cọng vióỷc xaùc õởnh khi
õổồỹc goỹi õóỳn. Mọỹt haỡm coù thóứ goỹi õóỳn nhióửu haỡm khaùc.
Haỡm main() laỡ haỡm õổồỹc maùy tờnh thổỷc hióỷn trổồùc tión trong mọỹt chổồng trỗnh.




void ham1(void)
{
......
}
void ham2(void)
{
......
}
main()
{
......
ham1();
......
ham2();
......
}

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×