Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Tài liệu đang bị lỗi
File tài liệu này hiện đang bị hỏng, chúng tôi đang cố gắng khắc phục.
Đề cương chi tiết kỹ thuật lập trình
Nội dung xem thử
Mô tả chi tiết
Bé c«ng th¬ng
Trêng §¹i häc c«ng nghiÖp hµ néi
--- ---
®Ò c¬ng chi tiÕt
m«n häc
kü thuËt lËp tr×nh
(Tµi liÖu gi¶ng d¹y)
hÖ: §¹i häc
(lu hµnh néi bé)
Hµ néi 4/2007 –
§Ò c¬ng chi tiÕt Ki thuat lap trinh
Tµi liÖu tham kh¶o
1. Kü thuËt lËp tr×nh C – GS.TS. Ph¹m V¨n Êt
2. Ng«n ng÷ lËp tr×nh C++ - GS. TS. Ph¹m v¨n Êt.
3. Kü thuËt lËp tr×nh - NguyÔn TiÕn Huy – TrÇn H¹nh Nhi.
4. Ng«n ng÷ lËp tr×nh C++ - Ng« Trung ViÖt.
….
Néi dung
Ch¬ng I. Tæng quan vÒ C++
Ch¬ng II. C¸c cÊu tróc ®iÒu khiÓn
Ch¬ng III. Kü thuËt lËp tr×nh ®¬n thÓ
Ch¬ng IV. Kü thuËt lËp tr×nh dïng m¶ng
Ch¬ng V. Kü thuËt lËp tr×nh dïng con trá
Ch¬ng VI. Kü thuËt lËp tr×nh víi tÖp
Ch¬ng VII. D÷ liÖu kiÓu cÊu tróc
Ph©n bæ thêi gian:
30 tiÕt lý thuyÕt + 60h thùc hµnh
§iÒu kiÖn tiªn quyÕt:
§· häc m«n NhËp m«n tin häc, Pascal
Thang ®iÓm: 10
Sè bµi kiÓm tra: 04 bµi
Sè bµi thi: 01 bµi thi gi÷a häc phÇn + 01 bµi thi hÕt häc phÇn.
Biªn so¹n: ThS. NguyÔn M¹nh Cêng
Tµi liÖu gi¶ng d¹y- Lu hµnh néi bé Trang 2
§Ò c¬ng chi tiÕt Ki thuat lap trinh
Ch¬ng I. tæng quan vÒ C++
I. Quy tr×nh lµm viÖc trong C++
I.1. C¸c bíc ®Ó lËp ch¬ng tr×nh b»ng C++
§Ó thùc hiÖn viÖc viÕt vµ thùc thi mét ch¬ng tr×nh ®¬n gi¶n trong C++, ngêi ta thêng lµm theo c¸c bíc sau:
- Vµo m«i trêng so¹n th¶o m· lÖnh cña C++: ®Ó lµm ®îc viÖc nµy, trªn
m¸y tÝnh ph¶i ®îc cµi ®Æt phÇn mÒm Turbo C 3.0 (hoÆc cao h¬n, hoÆc Booland
C ). T×m file TC.exe trong th … môc TC\BIN (hoÆc TC30\BIN) vµ thùc thi file nµy.
- So¹n th¶o m· lÖnh cña ch¬ng tr×nh: M«i trêng so¹n th¶o cña TC lµ mét
cöa sæ so¹n th¶o vµ hÖ thèng menu trî gióp qu¸ tr×nh so¹n th¶o còng nh dÞch vµ
thùc thi ch¬ng tr×nh. Ta tiÕn hµnh so¹n th¶o m· lÖnh cña ch¬ng tr×nh trong cöa sæ
nµy theo ®óng có ph¸p cña C++.
- So¸t lçi, dÞch ch¬ng tr×nh: Sau khi so¹n th¶o m· lÖnh b»ng ng«n ng÷ C+
+, ta tiÕn hµnh dÞch ch¬ng tr×nh thµnh ng«n ng÷ m¸y. Qu¸ tr×nh dÞch chØ thµnh
c«ng khi toµn bé m· lÖnh ta so¹n th¶o kh«ng cã lçi có ph¸p. V× vËy, trong qu¸
tr×nh dÞch, TC sÏ tiÕn hµnh so¸t lçi. Qu¸ tr×nh so¸t lçi ®îc tiÕn hµnh lÇn lît qua
c¸c dßng lÖnh tõ trªn xuèng. Khi gÆp lçi, ch¬ng tr×nh dÞch sÏ b¸o lçi t¹i vÞ trÝ gÇn
n¬i x¶y ra lçi. §Ó lµm c¸c c«ng viÖc dÞch – so¸t lçi, ta bÊm phÝm F9, nÕu ch¬ng
tr×nh b¸o lçi, h·y tiÕn hµnh söa lçi.
NÕu muèn qu¸ tr×nh dÞch cho ta mét file thùc thi ®îc cña ch¬ng tr×nh trªn
®Üa (file .exe) ta cÇn ®¶m b¶o trªn menu: Options\ Linker\ Settings\ Output\
Standard exe ®ang ®îc chän.
- Thùc thi ch¬ng tr×nh: Khi ch¬ng tr×nh ®· hÕt lçi ta cã thÓ thùc thi ch¬ng
tr×nh b»ng c¸ch bÊm tæ hîp phÝm Ctrl - F9. KÕt thóc qu¸ tr×nh thùc thi sÏ quay vÒ
m«i trêng so¹n th¶o m· lÖnh ban ®Çu.
C¸c thao t¸c khi so¹n th¶o:
Më file míi: Chän File\ New hoÆc bÊm phÝm chøc n¨ng F3, gâ tªn file míi vµo vµ
bÊm Enter.
Më file cã s½n: Chän File\ Open hoÆc bÊm phÝm chøc n¨ng F2 råi chän file cÇn më vµ
bÊm Enter.
Lu file: Chän File\ Save hoÆc bÊm phÝm chøc n¨ng F2 råi ®Æt tªn file vµ bÊm Enter.
Chó ý trong C++, phÇn më réng cña file m· nguån lµ .CPP.
§ãng file: BÊm tæ hîp phÝm Alt F3. NÕu file cha lu, C++ sÏ yªu cÇu lu file hoÆc bá
qua viÖc lu file, h·y bÊm Y hoÆc N nÕu muèn lu file hoÆc kh«ng lu file.
Phãng to, thu nhá cña sæ so¹n th¶o: BÊm phÝm chøc n¨ng F5.
Tµi liÖu gi¶ng d¹y- Lu hµnh néi bé Trang 3
§Ò c¬ng chi tiÕt Ki thuat lap trinh
ChuyÓn ®Õn cöa sæ so¹n th¶o bÞ Èn ®»ng sau cöa sæ hiÖn t¹i: bÊm phÝm chøc n¨ng F6.
Tho¸t khái m«i trêng C++: BÊm tæ hîp phÝm Alt X.
B«i ®en vïng m· lÖnh: kÝch, gi÷ vµ rª chuét lªn vïng cÇn b«i ®en hoÆc chuyÓn con trá
vÒ ®Çu vïng cÇn b«i ®en råi gi÷ phÝm Shift trong lóc di chuyÓn con trá qua vïng cÇn b«i ®en.
Sao chÐp vïng b«i ®en: Chän Edit\ Copy hoÆc bÊm tæ hîp phÝm Ctrl + Insert.
D¸n vïng m· lÖnh ®· sao chÐp: Chän Edit\ Paste hoÆc bÊm tæ hîp phÝm Shift + Insert.
Sao chÐp nhanh vïng b«i ®en: Di chuyÓn ®Õn vÞ trÝ míi vµ bÊm phÝm K råi C trong
lóc gi÷ phÝm Ctrl.
Di chuyÓn vïng b«i ®en: ChuyÓn ®Õn vÞ trÝ míi vµ bÊm phÝm K råi V trong lóc gi÷
phÝm Ctrl.
Xo¸ vïng m· lÖnh ®· b«i ®en: BÊm phÝm K råi Y trong lóc gi÷ phÝm Ctrl.
Bá b«i ®en: BÊm phÝm K råi K trong lóc gi÷ phÝm Ctrl hoÆc cã thÓ bÊm phÝm K råi H
trong lóc ®ang gi÷ phÝm Ctrl.
ChuyÓn con trá vÒ ®Çu dßng: BÊm phÝm Home.
ChuyÓn con trá vÒ cuèi dßng: BÊm phÝm End.
I.2. CÊu tróc mét ch¬ng tr×nh ®¬n gi¶n trong C++
Mét ch¬ng tr×nh ®¬n gi¶n trong C++ thêng ®îc viÕt trong mét cöa sæ so¹n
th¶o (®iÒu nµy kh«ng hoµn toµn ®óng trong c¸c ch¬ng tr×nh lín).
Mét ch¬ng tr×nh bÊt kú trong C++ ®Òu ®îc t¹o nªn tõ rÊt nhiÒu hµm (t¹m
gäi lµ nh÷ng ®¬n vÞ ch¬ng tr×nh), trong ®ã cã mét hµm ®Æc biÖt ®îc xem nh “ch-
¬ng tr×nh chÝnh” vµ ®îc gäi lµ hµm main. Th«ng thêng hµm main ®îc viÕt ra ®Ó
gäi (sö dông) c¸c hµm kh¸c nh»m gi¶i quyÕt bµi to¸n.
Tuy nhiªn, ë ®©y ta chØ xÐt mét ch¬ng tr×nh ®¬n gi¶n bao gåm duy nhÊt
mét hµm main, ta viÕt theo cÊu tróc sau:
Dßng 1: ®îc gäi lµ c¸c chØ thÞ tiÒn xö lý. Dßng nµy cã nhiÖm vô khai b¸o
c¸c th viÖn sÏ sö dông trong ch¬ng tr×nh.
Trong C++, c¸c lÖnh (hµm) thêng ®îc ®Æt trong c¸c th viÖn, lµ c¸c file .h
(cã thÓ t×m thÊy chóng trong th môc Include cña bé TC). NÕu trong ch¬ng tr×nh
Tµi liÖu gi¶ng d¹y- Lu hµnh néi bé Trang 4
#include <tªn th viÖn>
void main()
{
C¸c lÖnh trong th©n hµm main
}
1
2
3
4
5
§Ò c¬ng chi tiÕt Ki thuat lap trinh
muèn sö dông c¸c lÖnh nµy th× cÇn ph¶i khai b¸o sÏ sö dông c¸c th viÖn t¬ng øng
t¹i ®©y.
Cã rÊt nhiÒu th viÖn cã thÓ sö dông nhng nh÷ng th viÖn hay dïng lµ:
conio.h, stdio.h, iostream.h, math.h, iomanip.h, string.h, ofstream.h, ifstream.h,
fstream.h,…
Dßng 2: lµ tõ kho¸ void main() khai b¸o b¾t ®Çu hµm main.
Dßng 3 vµ 5: c¸c dÊu ‘{‘ vµ ‘}’ b¸o hiÖu b¾t ®Çu vµ kÕt thóc th©n hµm main
hoÆc b¾t ®Çu vµ kÕt thóc mét khèi lÖnh.
Dßng 4: lµ n¬i ta ®Æt c¸c lÖnh cña ch¬ng tr×nh chÝnh.
VÝ dô: ch¬ng tr×nh in ra mµn h×nh dßng ch÷ “Hello wold !”
#include “iostream.h”
void main()
{
cout<< “Hello world !”;
}
§Ó xem trong mét th viÖn cã chøa nh÷ng hµm nµo, trªn menu ta chän Help\ Index råi
gâ tªn th viÖn vµ bÊm Enter.
§Ó xem mét hµm ta ®ang sö dông thuéc vµo th viÖn nµo, ta còng chän help\ Index råi
gâ tªn hµm vµ bÊm Enter.
Trong C++ cã ph©n biÖt ch÷ hoa vµ ch÷ thêng. Sau mçi lÖnh ®Òu cã dÊu “;” ®Ó b¸o kÕt
thóc lÖnh.
§Æt l¹i ®êng dÉn tíi c¸c th viÖn: Trong mét ch¬ng tr×nh ta thêng sö dông c¸c hµm
trong c¸c th viÖn kh¸c nhau ®îc khai b¸o t¹i dßng 1 (nh trªn). Th«ng thêng, c¸c th viÖn ®Æt
trong c¸c th môc TC\INCLUDE. M«i trêng lËp tr×nh C++ tù thiÕt ®Æt ®êng dÉn tíi c¸c th viÖn
nµy. Tuy nhiªn, trong trêng hîp ®êng dÉn bÞ thay ®æi, ch¬ng tr×nh dÞch sÏ kh«ng t×m thÊy
chóng vµ b¸o lçi, khi ®ã ta cÇn ph¶i thiÕt ®Æt l¹i:
B1: Trong Menu chÝnh, chän Option\ Directories.
B2: Trong Include, ®Æt ®êng dÉn tíi c¸c th viÖn cã ®u«i .h(vÝ dô: C:\TC\INCLUDE).
Trong Libraries, ®Æt ®êng dÉn tíi c¸c th viÖn ®u«i .lib (vÝ dô: C:\TC\LIB).
II. BiÕn, biÓu thøc, c¸c lÖnh nhËp xuÊt
II.1. BiÕn
§Ó hiÓu kh¸i niÖm vµ b¶n chÊt biÕn, ta xÐt ch¬ng tr×nh ®¬n gi¶n sau:
NhËp vµo c¸c sè nguyªn a, b. Gäi P lµ tæng cña a vµ b, S lµ tÝch cña a vµ b.
TÝnh K=S*P/(S+P).
Ta dÔ dµng biÓu diÔn bµi to¸n b»ng m« h×nh sau:
Tµi liÖu gi¶ng d¹y- Lu hµnh néi bé Trang 5
§Ò c¬ng chi tiÕt Ki thuat lap trinh
Cã thÓ coi ®Çu vµo cña bµi to¸n lµ a, b vµ ®Çu ra lµ K. C¸c gi¸ trÞ P vµ S lµ
c¸c gi¸ trÞ trung gian.
Khi ngêi dïng nhËp vµo c¸c gi¸ trÞ a vµ b, chóng cÇn ®îc lu tr÷ trong bé
nhí. T¬ng tù nh vËy c¸c gi¸ trÞ P, S, K nÕu cÇn còng sÏ ®îc lu tr÷ trong bé nhí.
VËy tèi ®a ta cÇn sö dông 5 « nhí ®Ó lu tr÷ chóng. C¸c « nhí nµy gäi lµ c¸c biÕn.
BiÕn lµ mét vïng nhí ®îc ®Æt tªn.
Mçi « nhí (biÕn) ®Òu ®îc ®Æt 1 tªn tu©n theo quy íc ®Æt tªn nh sau:
- Tªn biÕn bao gåm ch÷ c¸i, ch÷ sè hoÆc dÊu g¹ch nèi ‘_’
- Ký tù ®Çu tiªn cña tªn biÕn kh«ng ®îc lµ mét ch÷ sè.
- Kh«ng ®îc trïng víi tõ kho¸.
- Trong cïng mét ph¹m vi kh«ng cã 2 biÕn trïng tªn.
Trong ch¬ng tr×nh, ta sö dông tªn biÕn ®Ó truy cËp vµo « nhí cña biÕn. Khi
®ã tªn biÕn chÝnh lµ gi¸ trÞ ®ang chøa trong « nhí cña nã.
TÊt c¶ c¸c biÕn khi sö dông ®Òu ph¶i khai b¸o. Có ph¸p nh sau:
<kiÓu biÕn> <tªn biÕn>;
Trong ®ã:
<kiÓu biÕn>: mçi biÕn dïng ®Ó chøa mét lo¹i gi¸ trÞ kh¸c nhau nh: sè
nguyªn, sè thùc, ký tù .v.v.., do vËy chóng ph¶i cã kiÓu t¬ng øng. Mét sè kiÓu c¬
b¶n nh sau:
KiÓu sè: bao gåm
+ Sè nguyªn int/ short int: lµ kiÓu d÷ liÖu cã ®é dµi 2 byte, dïng ®Ó khai
b¸o c¸c biÕn nguyªn cã gi¸ trÞ trong kho¶ng –32768 -> 32767
+ Sè nguyªn kh«ng dÊu: unsigned int: ®é dµi 2 byte, khai b¸o c¸c biÕn
nguyªn cã gi¸ trÞ tõ 0 tíi 65535.
+ Sè nguyªn dµi long: lµ kiÓu d÷ liÖu cã ®é dµi 4 byte, dïng khai b¸o c¸c
biÕn nguyªn cã gi¸ trÞ trong kho¶ng – 2.147.483.648 -> 2.147.483.647.
+ Sè nguyªn dµi kh«ng dÊu: unsigned long: ®é dµi 4 byte, khai b¸o c¸c
biÕn cã gi¸ trÞ tõ 0 tíi 4.294.967.295.
Tµi liÖu gi¶ng d¹y- Lu hµnh néi bé Trang 6
a
b
K
P S
§Ò c¬ng chi tiÕt Ki thuat lap trinh
+ Sè thùc (dÊu ph¶y ®éng) float: kÝch thíc 4 byte khai b¸o c¸c biÕn thùc tõ
3.4*10-38 -> 3.4*1038
.
+ Sè thùc (dÊu ph¶y ®éng, ®é chÝnh x¸c kÐp) double: kÝch thíc 8 byte, cã
ph¹m vi tõ 1.7*10-308 - > 1.7*10308
+ Sè thùc (dÊu ph¶y ®éng, ®é chÝnh x¸c kÐp) dµi long double: kÝch thíc 10
byte, khai b¸o c¸c biÕn tõ 3.4 * 10-4932 tíi 1.1 * 104932
.
KiÓu ký tù: bao gåm
+ KiÓu ký tù char: khai b¸o biÕn chøa mét ký tù.
+ KiÓu con trá ký tù char *: t¬ng ®¬ng víi chuçi ký tù.
<tªn biÕn>: ®îc ®Æt tuú ý tu©n theo c¸c quy íc ®Æt tªn biÕn ë trªn.
VÝ dô: int a, b; float c;
ë ®©y, ta khai b¸o 2 biÕn a vµ b cã cïng kiÓu sè nguyªn vµ biÕn c cã kiÓu
sè thùc. Khi ®ã ch¬ng tr×nh sÏ cÊp ph¸t 2 « nhí cã kÝch thíc 2 byte mçi « vµ ®Æt
tªn lµ a, b; mét « nhí kÝch thíc 4 byte ®îc ®Æt tªn c.
VÞ trÝ khai b¸o: Cã thÓ khai b¸o biÕn t¹i bÊt kú ®©u trong th©n ch¬ng tr×nh
tríc khi sö dông.
II.2. BiÓu thøc
Mét biÓu thøc bao gåm 2 thµnh phÇn: c¸c to¸n tö (phÐp to¸n) vµ c¸c to¸n
h¹ng (sè h¹ng).
C¸c to¸n tö:
Trong C++, c¸c to¸n tö ®îc t¹m ph©n chia lµm 4 lo¹i theo chøc n¨ng cña
chóng. Sau ®©y lµ mét sè to¸n tö hay dïng:
- C¸c to¸n tö sè häc:
Stt To¸n tö C¸ch viÕt
1 Céng +
2 Trõ -
3 Nh©n *
4 Chia /
5 §ång d %
6 T¨ng 1 ®¬n vÞ ++
7 Gi¶m 1 ®¬n vÞ - -
- C¸c to¸n tö Logic:
Stt To¸n tö C¸ch viÕt
1 Vµ &&
2 HoÆc | |
Tµi liÖu gi¶ng d¹y- Lu hµnh néi bé Trang 7
§Ò c¬ng chi tiÕt Ki thuat lap trinh
3 Phñ ®Þnh !
- C¸c to¸n tö so s¸nh:
Stt To¸n tö C¸ch viÕt
1 Lín h¬n >
2 Nhá h¬n <
3 Lín h¬n hoÆc b»ng >=
4 Nhá h¬n hoÆc b»ng <=
5 B»ng ==
6 Kh«ng b»ng !=
- To¸n tö g¸n:
Stt To¸n tö C¸ch viÕt
1 G¸n =
Mét b¶ng t¬ng ®èi ®Çy ®ñ c¸c to¸n tö trong C++ nh sau:
[ ] ( ) . -> ++ -- &
* + - ~ ! sizeof /
% << >> < > <= >=
== != ^ | && || ?:
= *= /= %= += -= <<=
>>= &= ^= |= , # ##
C¸c to¸n h¹ng:
Cã thÓ chia c¸c to¸n h¹ng lµm 3 lo¹i gåm: h»ng, biÕn vµ hµm.
H»ng: gåm h»ng sè, h»ng x©u ký tù vµ h»ng ký tù. H»ng x©u ký tù khi viÕt
cÇn ®îc ®Æt gi÷a hai dÊu nh¸y kÐp “”; h»ng ký tù ®îc ®Æt gi÷a hai dÊu nh¸y ®¬n ‘’
cßn h»ng sè th× kh«ng.
Hµm: gåm nh÷ng hµm tr¶ vÒ mét gi¸ trÞ nµo ®ã vµ gi¸ trÞ nµy ®îc sö dông
trong biÓu thøc. Cã rÊt nhiÒu hµm cã s½n trong c¸c th viÖn mµ ta cã thÓ sö dông
cho biÓu thøc. Sau ®©y lµ mét sè hµm to¸n häc (th viÖn math.h) thêng dïng:
STT Tªn hµm C¸ch viÕt
1. Sin(x) sin(x)
2. Cos(x) cos(x)
3. x
sqrt(x)
4. e
x
exp(x)
5. Ln(x) log(x)
6. Log10(x) log10(x)
Tµi liÖu gi¶ng d¹y- Lu hµnh néi bé Trang 8