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

Giáo trình ngôn ngữ lập trình c (dùng trong các trường THCN)

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 (22.37 MB, 295 trang )



s ở

GIÁO DỤC VÀ Đ À O TẠO H À
L Ê VĂN H U Ỳ N H (Chủ

G

I

A

O

T

R

N Ộ I

biên)

I

N

H

NGON NGỮ LẬP TRÌNH c
(Dùng



N H À

trong

các

trường

X U Ấ T B Ả N H À

THON)

N Ộ I - 2007



L ờ i giới

thiêu

ước ta dang bước vào thời kỳ cơng
đại hóa
nghiệp

vãn minh,

Trong
nhân


nhằm
hiện

đưa Việt

cách

mạng

Đại

hội

hành
Đảng

Trung
tồn

hiện

nước

to lớn đó, cơng

lực ln giữ vai trị quan
Chấp

trở thành


hóa,

cơng

đại.

sự nghiệp

Ban

Nam

nghiệp

ương

quốc

trọng.
Đảng

lần

tác đào

Báo cáo Chính
Cộng

sản


thứ IX đã chỉ

Việt

tạo

trị

của

Nam

tại

rõ: " P h á t t r i ể n

g i á o dục và đ à o tạo là m ộ t trong những đ ộ n g lực quan trọng
t h ú c đ ẩ y sự n g h i ệ p cơng

nghiệp

hóa,

hiện

đại

hóa,

là đ i ề u


k i ệ n đ ể p h á t t r i ể n n g u ồ n lực c o n n g ư ờ i - y ế u t ố c ơ b ả n đ ể
p h á t t r i ể n x ã h ộ i , tăng truồng k i n h t ế nhanh và b ề n vững".
Quán
và nhận

triệt chủ trương,
thức đúng

giáo

trình

nghị

của Sở Giáo

Uy ban

nhân

cho phép

án biên soạn
học chuyên
việc

nâng

lực Thủ

Trên

chương
nghiệp

cao chất



Sở Giáo

trình,

lượng

Hà Nội.
đào

đào

số

tạo thực hiện

đề

các trường

ủy, UBND
tạo và phát


định

định

Quyết

đề

231912003,

đã ra Quyết
trong

trình,

tạo, theo

ngày

dục và Đào

giáo trình

(THCN)

lượng

Nội


nước

thành
triển

Trung

này thể

hiện

phố

trong

nguồn

nhân

đơ.
cơ sở chương
và những

Sở Giáo dục và Đào
soạn

phô

và Nhà


của chương

tạo Hà Nội,

tâm sâu sắc của Thành

tạo ban hành
biển

thành

trọng

cao chất

dục và Đào

dân

của Đảng

quyết

đắn về tầm quan

đối với việc nâng

5620ỈQĐ-UB

sự quan


Nghị

chương

trình

khung

kinh nghiệm

của Bộ Giáo

dục và

Đào

rút ra từ thực tế đào

tạo,

tạo đã chỉ đạo các trường
trình,

giáo

trình

một


cách

THCN

tổ

khoa

học,

chức
hệ

3




thống

và cập nhật

tượng

học sinh THCN

Bộ giáo

những


trình

các trường



ở Hà Nội,

hữu ích cho các trường
dạy

tiễn phù

đồng

dạy

và học

thời là tài liệu

có đào tạo các ngành

đáo bạn đọc quan

tổ chức

là một

trong


và đào

tạo Thủ

"50 năm
Thăng

đối

rập

trong

tham

khảo

kỹ thuật

-

nghiệp

tâm đến vấn để hướng

biên

hoạt


nhiều

bộ chương

động

lập ngành

- Hà

trình,

thực

thiết

đơ để kỷ niệm

thành

Long

soạn

"50 năm

nghiệp,

" và hướng


ủy, UBND,

nghiệp

chuyên

gia đầu

nhà doanh

gia Hội

đồng

nghiệm
Đây
biền

gắng

nhưng

Chúng

ngành,

ngành

các giảng


đồng

phản

giáo

dục

tới kỷ niệm
thành

soạn
chắc

tôi mong
bước

viên,

Thủ

đô ",

"1000

năm

cảm ơn

phô,


các

kiện giúp

biện,

thu các chương

để từng

của ngành

của Thành

đã tạo điều

là lần đầu

chức

này

Hội

trình,

tiên Sở Giáo

giáo

dục

nhà

quản

đỡ, đóng

đồng

Thành

Vụ Giáo

Bộ Giáo dục và Đào tạo, các nhà khoa

nghiệp

tham

trình

Nội".

các sở, ban,

chun

giáo


giải phóng

Sở Giáo dục và Đào tạo Hà Nội chân

bản

với

nghề.
Việc

đọc

hợp

Nội.

này là tài liệu giảng

THON

vụ và đơng

thức thực

kiến

thẩm

học,


các

lý,

các

góp ý
định

dục



kiến,
Hội

trình.

và Đào

tạo Hả Nội

tố
cố

chương

trình,


giáo

trình.



đã hết

chắn

khơng

tránh

khỏi

thiếu

sót,

bất

cập,

ý kiến

đóng

góp


của

bạn

nhận

được

hồn

thiện

những

bộ giáo

trình

trong

các

sức

lần

tái

sau.


GIÁM ĐỐC SỞ G I Á O DỤC V À Đ À O TẠO


Lời nói

đ ầ u

gịn ngữ c được
được phổ
năm

1978.

cơng

ngơn

ngữ đặc biệt

Ngày

nay,

năng.

cụ thông
hiệu

chuyên


thường

của

Ngược

cuốn

Ngôn

kế và lần đầu

thiết
ngữ

của các ngôn

quả và thành

nghiệp,

cài đặt trên

lẻo. Lỏng
trình.

rãi trong

c đã tiến bộ hơn nhiêu


Sức mạnh

và D. Ritchie

lập trình

trong

gia phẩn

tất cả các loại máy
ngữ c khơng

lại, sức mạnh

Rất gần với ngơn

phải

gị bó, khơng

nhà

cứng

và phần

tính

mềm




vạn

gọn và

lỏng

tạo của người

lập

từ tính cơ đọng,

ngắn

chế sự sáng

c khơng

lệ thuộc

vào phần

ứng dụng

nhắc,

vì ngồi


c hồn
dụng

tồn

ngữ Turbo

trình
nghiệp

thích

thức

trên các hệ thống
chun

c có tới khơng

c của hãng

Borland

với ANSỈ

học được

phần


này

c. Người

về ngôn

ngữ c trong

cứng hay phần

nhằm

giúp

cho

và các bạn yêu thích

học hồn

mềm thơng
các

bạn

ngơn

giáo
dụng


học

sinh

ngữ lập trình

và khám phá sức mạnh

của c. Ngơn

ngữC

sinh lại có ý đinh

sâu vào phía

sau của các dồng

nhìn

đó mới là cách

học ngơn

của mình

thích

muốn


trong
sao

cho

những

và ni

học

vấn
sinh

khơng

ngữ c. Tác giả thành
dưỡng

lịng

cho thấy rằng c là một ngơn ngữ

Một
là làm

kích

của


cả trình

biên

dưới 80%



của

tác giả là có

cân

một số bổ sung về các hàm đồ hoa, âm thanh

các kiến
Giáo

viết bằng

cứng

đổi.

ngôn

tương

máy


chỉnh

dịch của c lẫn chương
Sự lựa chọn

thống.

cụ đắc lực của các

từ máy tính này sang máy tính khác,

cần thay

hệ

một

cơng

máy tính. Vì vậy, khi chuyển
lệnh khơng

c đã là

là sự đẩy đủ, hồn
hạn

ngữ máy nhưng
trình


trầm

tính.

của c bắt nguồn

c khơng

cao,

bản

hụt

vực lập trình

lĩnh

và trở thành

các chun

ngơn

lẻo nên

cơng

ngữ bậc


tiên

c xuất

từ khi ra đời, mặc dù nhỏ gọn và có vẻ như thiếu

những

và được

rộng

biến

Ngay

trọng

lập trình

B. Kernighan

ham

phải

tồn

có thể n tâm


trình

này để lập

sử
trình

khác.
các

trường

c bước

trung

học

lùm

quen

đầu

dễ học, nhất

là khi

học


lệnh.

thực

tình,

trình

bày

tâm muốn
mê của

và vào ra, Tui bo

Nhưng

qua

người

cách
học

chứ

khơng
trình


khó.

đề mà tác giả cố gắng

thể hiện

trong

giáo

khơng

ngữ

trình

c,

chỉ biết

về ngơn

lập



cịn

5



sử dụng

biết

hiệu

khơng

thể xem

dị gỡ

lỗi.

nhẹ,

Giáo trình
Mười
chương

quả
nhất

là khả

khung

phụ


ví dụ minh

bài tập đồ sộ chìa

từ đầu

đã được
hoa

cố gắng

dung

giáo

trình

đến

mơ phỏng

cuối

thực

bảo, góp ý từ phía

mong

Học


biết

tin, PGS.TS.
viện

Qn

qt

tồn

kiện

năng

và khả

năng

bài

tập.

cơ bản

theo

được


trình

Nội dung

từng chương,
minh

trình

và chạy

họa

để tiện

thử thành

ra trên

rất hữu ích với

đấm

các

báo để giáo

màn

đều


cơng.
hình

viên

tra.

được

sử dụng.

chắc chắn giáo trình

phục

Các

đánh

số

một

Các

ví dụ

đều


hình

ảnh

để người

học

minh

dễ

tác giả cũng
cảm

Phạm

chân

ơn Ban

cho

tác giả những

cuốn

giáo

trình


giám

để tác giả hồn

thành

hình

thiện

Nguyễn

Đồn

ý kiến

q

Văn
báu

Ban

hợp

việc dạy và học
nhận

mong


được

sự

các em học sinh và bạn
hiệu

Văn Ất - Đại học Giao

sự, PGS.TS.

cịn có chỗ chưa

vụ tốt nhất cho cơng

ơn sâu sắc PGS.TS.

dành

trường

ESTIH

bản thảo.

Đồng

Xn


- Viện

thơng,
- Viện

góp phần

Huy

Cơng
làm

nghệ
nên

này.

Lê Văn

thời,

Huỳnh


của
chỉ

đọc.

đã hết

tác

Cơng

TS. Dương

Tác gia

6

kỹ

bộ nội dung

cao, tuy khó nhưng

các hình

tế diễn

muốn

thành

viên và tạo điều

thông

trợ giúp


phụ lục và phần

các thầy, các bạn đồng nghiệp,

giả xin chân

xin bày tỏ lòng

cầu

hoa.

giáo

nhưng

các thầy và các bạn học sinh,

động

các

u

chứng.

sai sót. Ngồi

Tác


một

cho q trình dạy, học và kiểm

dịch

Mặc dù đã rất cố gắng,
hoặc

thác

phẩn

theo nội dung

tra kỹ lưỡng,

và kiếm

như

mê.

ví dụ, các bài tập,

kiểm

khai

bao


lục gồm một số bài nâng

Tất cả các

trình

do Bộ Giáo dục và Đào tạo ban hành.

vã học sinh có đủ bài tập dùng

chiều

năng

trình

bạn học sinh giỏi và có lỏng say
Phần

lập

12 chương,

của giáo

bày chi tiết, với rất nhiều
Phần

trường


được chia thành

hai chương

trình

mơi

sức
giả
nghệ

Tử Cường

-

thơng

đã

chất

lượng

tin

của



C h ư ơ n g

Ì

CÁC KHÁI NIỆM Cơ BẢN

ì. CHƯƠNG TRÌNH (PROGRAM)
L à m ộ t g i ả i thuật đ ư ợ c v i ế t b ằ n g m ộ t n g ô n n g ữ l ậ p t r ì n h n à o đ ó m à sau k h i
đ ư ợ c d ị c h t h à n h n g ô n n g ữ của m ộ t m á y t í n h cụ t h ể c ó t h ể d ù n g đ ể g i ả i q u y ế t
m ộ t l ớ p c á c b à i t o á n . C á c bước x ử lý của g i ả i thuật t r o n g c h ư ơ n g t r ì n h đ ư ợ c
g ọ i là c á c c â u l ệ n h (statement) hoặc c á c chỉ l ệ n h ( i n s t r u c t i o n ) t ù y theo c ấ p bậc
của n g ô n ngữ. N g ư ờ i c h u y ê n soạn thảo ra c h ư ơ n g t r ì n h g ọ i là n g ư ờ i l ậ p t r ì n h .
li. NGƠN NGỮ LẬP TRÌNH
L à m ộ t t ậ p h ợ p đ ị n h nghĩa t ư ờ n g m i n h c á c k ý tự, c á c k ý h i ệ u v à c á c q u y
tắc k ế t hợp c h ú n g cho p h é p v i ế t c á c c h ư ơ n g t r ì n h m á y t í n h .
Số lượng c á c k ý tự, k ý h i ệ u trong m ộ t n g ô n n g ữ l ậ p t r ì n h là hữu

hạn.

N g ư ờ i l ậ p t r ì n h c h ỉ đ ư ợ c p h é p sử d ụ n g c á c k ý t ự , k ý h i ệ u đ ó . C á c q u y tắc
n h ằ m đ ả m b ả o đ ể n g ư ờ i l ậ p t r ì n h sử d ụ n g c á c k ý h i ệ u đ ú n g đ ắ n , t ạ o ra đ ư ợ c
c á c t ê n , c á c b i ể u t h ứ c , c á c c â u l ệ n h h ợ p l ệ . Q u y t ắ c đ ể t ạ o ra c á c c â u l ệ n h
g ọ i là c ú p h á p .
IU. TÍNH Cơ ĐỘNG (PORTABILITY)
T í n h c ơ đ ộ n g ( p o r t a b i l i t y ) của m ộ t n g ô n n g ữ l ậ p t r ì n h t h ể h i ệ n k h ả n ă n g
t h í c h ứng c ủ a m ộ t c h ư ơ n g t r ì n h v i ế t b ằ n g n g ô n n g ữ đ ó v ớ i n h i ề u l o ạ i m á y
t í n h v à n h i ề u h ệ đ i ề u h à n h k h á c nhau. N ế u m ộ t c h ư ơ n g t r ì n h v i ế t b ằ n g m ộ t
n g ô n n g ữ n à o đ ó k h i m a n g sang m á y t í n h n à o l ạ i p h ả i c h ỉ n h sửa đ ể p h ù h ợ p
v ớ i m á y t í n h đ ó t h ì ta n ó i là n g ô n n g ữ đ ể v i ế t c h ư ơ n g t r ì n h đ ó k h ơ n g c ó t í n h
cơ động.


7


IV. CÁC L O Ạ I NGƠN NGỮ LẬP TRÌNH
1. N g ô n n g ữ m á y
L à b ộ l ệ n h của c h í p v i x ử lý t r ê n m ộ t l o ạ i m á y t í n h cụ t h ể , t h ể h i ệ n b ằ n g
c á c m ã số, c á c q u y tắc sử d ụ n g c á c m ã s ố đ ó đ ể v i ế t c á c c h ư ơ n g t r ì n h đ i ề u
k h i ể n trực t i ế p h o ạ t đ ộ n g của m á y t í n h t ư ơ n g ứng.

V í d ụ , t r ê n b ộ v i x ử lý

80286, 0 5 0 1 0 0 c ó nghĩa là c ộ n g t h ê m m ộ t số 16 bít c ó g i á trị là Ì v à o thanh
ghi A X .
V i ế t c h ư ơ n g trình bằng n g ơ n ngữ m á y đòi h ỏ i n g ư ờ i lập trình phải am hiểu
sâu sắc c ấ u t r ú c v à h o ạ t đ ộ n g của m á y t í n h . C h ư ơ n g t r ì n h v i ế t b ằ n g n g ô n n g ữ
m á y chạy nhanh và h i ệ u q u ả n h ư n g k h ơ n g c ó tính c ơ đ ộ n g .
2. H ợ p n g ữ ( a s s e m b l y l a n g u a g e )
L à n g ô n n g ữ l ậ p t r ì n h m à m ỗ i c â u l ệ n h ứng v ớ i m ộ t l ệ n h t r o n g n g ô n n g ữ
m á y , n h ư n g thay cho c á c m ã m á y v à c á c đ ị a c h ỉ b ộ n h ớ l à c á c t ừ g ợ i n h ớ
( m e m o n i c s ) . V í d ụ , c ũ n g là l ệ n h c ộ n g t h ê m s ố Ì v à o t h a n h g h i A X , l ệ n h hợp
n g ữ n h ư sau:
A D D A X , 0001 h
L ậ p t r ì n h b ằ n g hợp n g ữ thực c h ấ t là l ậ p t r ì n h b ằ n g n g ô n n g ữ m á y n h ư n g đ ỡ
vất vả h ơ n . D ù n g t r ì n h h ợ p d ị c h (assembler) đ ể d ị c h c h ư ơ n g t r ì n h h ợ p n g ữ sang
n g ô n n g ữ m á y . C h ư ơ n g t r ì n h v i ế t b ằ n g hợp n g ữ c ũ n g k h ô n g c ó t í n h c ơ đ ộ n g .
3. N g ô n n g ữ b i ê n d ị c h
L à n g ơ n ngữ c ó thể được dịch thành n g ô n ngữ m á y b ở i m ộ t c h ư ơ n g trình
dịch (compiler). M ộ t c h ư ơ n g trình được viết bằng n g ơ n ngữ b i ê n dịch được g ọ i
là c h ư ơ n g t r ì n h n g u ồ n ( p r o g r a m source) c h ỉ c h ạ y đ ư ợ c t r ê n m á y t í n h sau k h i đ ã

đ ư ợ c d ị c h sang n g ô n n g ữ m á y . B ả n d ị c h h o à n c h ỉ n h của c h ư ơ n g t r ì n h n g u ồ n c ó
t h ể c h ạ y đ ư ợ c t r ê n m á y t í n h g ọ i là c h ư ơ n g t r ì n h k h ả t h i ( p r o g r a m e x e c u t a b l e ) .
C h ư ơ n g t r ì n h k h ả t h i c ó t h ể c h ạ y đ ư ợ c m à k h ô n g c ầ n đ ế n sự c ó m ặ t của t r ì n h
biên dịch.
4. N g ô n n g ữ t h ô n g d ị c h
Là ngôn ngữ d ù n g đ ể viết các chương trình có thể chạy được trên m á y tính
v ớ i đ i ề u k i ệ n ngay t r ư ớ c k h i thực h i ệ n m ộ t l ệ n h , p h ả i c ó m ộ t c h ư ơ n g t r ì n h

8


t h ô n g d ị c h (interpreter) d i ễ n g i ả i ý nghĩa c â u l ệ n h đ ó t h à n h m ã l ệ n h của m á y
t í n h t ư ơ n g ứng.
C h ư ơ n g t r ì n h v i ế t b ằ n g n g ô n n g ữ t h ô n g dịch p h ả i vừa c h ạ y vừa d ị c h n ê n
c h ạ y c h ậ m , t h i ế u t r ì n h t h ơ n g d ị c h thì k h ô n g c h ạ y đ ư ợ c .
5. N g ô n n g ữ b ậ c

cao

Người lập trình bằng ngơn ngữ bậc cao dùng ngơn ngữ này để trình bày
g i ả i thuật cho c á c b à i t o á n của m ì n h m à k h ô n g c ầ n quan t â m đ ế n c ấ u t r ú c và
hoạt đ ộ n g của m á y t í n h . C á c n g ô n n g ữ bậc cao c ó t h ể là n g ô n n g ữ t h ô n g dịch
hoặc b i ê n d ị c h v à t h ư ờ n g là n g ô n n g ữ b i ê n dịch, c ó t í n h c ơ đ ộ n g

cao.

V. c VÀ CÁC NGƠN NGỮ CÙNG DỊNG
1. c
D o B . K e r n i g h a n v à D . R i t c h i e t h u ộ c B e l l L a b o r a t o r i e s của h ã n g Á T &
T t h i ế t k ế n h ằ m p h ụ c vụ cho v i ệ c v i ế t h ệ đ i ề u h à n h Ư N I X . C h ị u ả n h h ư ở n g

của A L G O L n h ư P A S C A L , n h ư n g c đ ặ c b i ệ t t h u ậ n t i ệ n cho v i ệ c l ậ p t r ì n h
h ệ t h ố n g v à d u n g hoa t ố t t h ế m ạ n h của n g ô n n g ữ bậc cao v à t í n h h i ệ u q u ả
của n g ô n n g ữ m á y . c đ ư ợ c d ù n g n h i ề u đ ể v i ế t c á c h ệ đ i ề u h à n h , c á c c h ư ơ n g
t r ì n h d ị c h , k ể c ả c h ư ơ n g t r ì n h d ị c h của n g ô n n g ữ c . V ì l ậ p t r ì n h v i ê n c ó t h ể
đ ư a v à o c á c c h ỉ l ệ n h t á c d ụ n g trực t i ế p đ ế n v i ệ c b i ể u d i ễ n d ữ l i ệ u theo t ừ n g
bít b ê n t r o n g b ộ x ử l ý , n ê n c h ư ơ n g t r ì n h c đ ã đ ư ợ c b i ê n d ị c h sẽ c h ạ y n h a n h
h ơ n n h i ề u so v ớ i c á c c h ư ơ n g t r ì n h đ ư ợ c v i ế t b ằ n g c á c n g ô n n g ữ l ậ p t r ì n h
bậc cao k h á c . Đ ặ c t r ư n g của c là l ỏ n g l ẻ o n h ư n g n g ắ n g ọ n , t i ế t k i ệ m đ ể đ ủ
h i ệ u q u ả . C ó n g ư ờ i đ ã n ó i c là h ợ p n g ữ c ơ đ ộ n g , vì l à n g ơ n n g ữ l ậ p t r ì n h h ệ
t h ố n g n h ư n g c đ ộ c l ậ p v ớ i p h ầ n c ứ n g , v à h ỗ t r ợ cho v i ệ c l ậ p t r ì n h c ấ u t r ú c
v à m o d u l hoa.
N g ố n n g ữ c đ ã t r ả i qua hai giai đ o ạ n l ớ n trong l ị c h sử p h á t t r i ể n của n ó .
N ó đ ư ợ c t r ì n h b à y l ầ n đ ầ u t i ê n trong m ộ t c u ố n

s á c h c ó tiêu đ ề "The

c

P r o g r a m m i n g L a n g u a g e " x u ấ t b ả n n ă m 1978 của c á c t á c g i ả n g ô n n g ữ n à y .
P h i ê n b ả n c n à y đ ư ợ c g ọ i là " K e r n i g h a n & R i t c h i e 78", hay g ọ i tắt là " K & R
78", hay t h ư ờ n g g ọ i n h ấ t là " K & R " .

9


Sau n h ữ n g t h à n h tựu rực r ỡ của h ệ đ i ề u h à n h U N I X . d ẫ n đ ế n n h ữ n g
t h à n h c ô n g của n g ô n n g ữ c , t ì n h h ì n h trở n ê n phức t ạ p : N h i ề u n h à c u n g
c ấ p c á c b ộ t r ì n h b i ê n d ị c h đ ã đ ư a ra thị t r ư ờ n g c á c b ộ b i ê n d ị c h k h ô n *
t ư ơ n g t h í c h v ớ i K & R , vì c ó t h ê m n h i ề u m ở r ộ n g r i ê n g . Đ ế n c u ố i
1978, v i ệ c t h i ế t l ậ p l ạ i t r ậ t tự, c ũ n g n h ư t i ê u c h u ẩ n hoa n g ô n noữ


năm
c

trở

n ê n c ầ n t h i ế t . V i ệ n t i ê u c h u ẩ n hoa q u ố c gia M ỹ ( A N S I ) thực h i ệ n t r á c h
n h i ệ m n à y và c h u ẩ n A N S I c ra đ ờ i n ă m 1989. N á m

1990, t ổ chức t i ê u

c h u ẩ n hoa q u ố c t ế ( I S O ) c h ấ p n h ậ n c h u ẩ n A N S I c n h ư c h u ẩ n q u ố c t ế



g ọ i là c h u ẩ n ISO c .
P h i ê n bản t h ứ hai n à y của c l ẽ ra phải được g ọ i là ISO c , n h ư n g c ầ n
n h ư t o à n t h ế g i ớ i quen g ọ i đ ó là A N S I c . Vì v ậ y ta h i ể u A N S I c c h í n h là
ISO c.
T ừ đ ó đ ế n nay, c t i ế p tục c ó n h i ề u thay đ ổ i và c ả i t i ế n . T h a y đ ổ i r õ rệt
nhất là việc đ ư a k h á i n i ệ m lớp, đ ố i tượng v à o c đ ể trở t h à n h c hướno

đối

tượng và C + + .
2. C + +
C á c k h á i n i ệ m về lập trình hướng đ ố i tượng trong S I M U L A , A L G O L và
S M A L L T A L K n g à y nay đ ã phát triển thành một phong c á c h l ậ p trình h i ệ n đ ạ i
làm thay đ ổ i hẳn c á c h nhìn nhận, p h â n tích v ấ n để và thiết k ế c h ư ơ n g trình.
C + + là một n g ô n n g ữ lai, v ẫ n g i ữ l ạ i những ưu đ i ể m của c , n h ư n g t ă n g c ư ờ n °

k h ả n ă n g k i ể m soát k i ể u d ữ l i ệ u , cho p h é p thiết k ế c á c lớp đ ố i tượno và h ỗ trợ
lập trình hướng đ ố i tượng.
3. J A V A
J A V A l ộ t x á c t ừ C + + , t h o á t l y k h ỏ i m ọ i chi t i ế t n h ỏ nhặt t i n h v i của
c

đ ể trở t h à n h m ộ t

ngơn ngữ lập trình hồn tồn hướng

đối

tượng

C h ư ơ n g t r ì n h n g u ồ n J A V A c ó t í n h c ơ đ ộ n g cao, k h i b i ê n d ị c h cho



n g u ồ n g ọ i là b y t e c o d e . M ã bytecode c ó t h ể c h ạ y t h ô n g d ị c h d ư ớ i m ọ i h ệ
đ i ể u h à n h t r ê n c á c p h ầ n c ứ n g k h á c nhau, k í c h t h ư ớ c n h ỏ , g ọ n .

JAVA

đ ư ợ c t h i ế t k ế đ ể c h u ẩ n bị cho k ỷ n g u y ê n của I n t e r n e t , k ỷ n g u y ê n của c á c
trang W E B .

10


4. c #

L à m ộ t n g ô n n g ữ lập trình hướng đ ố i tượng trong b ộ phần m ề m Visual
Studio N É T của M i c r o s o í t . G i ố n g J A V A v ớ i c ú p h á p r ắ n chắc, p h o n g c á c h l ị c h
l ã m l ẫ n ý t ư ở n g h ư ớ n g t ớ i m ô i t r ư ờ n g m ạ n g v à Internet, d ễ sứ d ụ n g v à n ă n g
suất cao g i ố n g n h ư V i s u a l Basic. N g ô n n g ữ n à y c ó p h á t t r i ể n t h ê m r ấ t n h i ề u ý
t ư ở n g m ớ i cao c ấ p l à m cho n ó m ạ n h h ơ n , h i ệ n đ ạ i h ơ n , an t o à n h ơ n so v ớ i Java
và C++.

li


C h ư ơ n g

2

MƠI TRƯỜNG LẬP TRÌNH c

BORLAND C++, là một mơi trường phát triển tích hợp (IDE - Intergrated
Development E n v i r o n m e n t ) đ ư ợ c p h á t t r i ể n l ê n t ừ c h ư ơ n g t r ì n h T u r b o c . T r o n g
m ô i t r ư ờ n g n à y , b ạ n c ó t r ì n h soạn t h ả o t o à n m à n h ì n h , g i a o d i ệ n đ a cửa sổ v ớ i
m e n u . h ộ p t h o ạ i , h ỗ trợ d ù n g c h u ộ t . B ạ n c ó t h ể v i ế t , d ị c h c h ư ơ n g t r ì n h , l i ê n k ế t
c á c m o d u l , c h ạ y t h ử c h ư ơ n g t r ì n h do m ì n h v i ế t ra, g ỡ l ỗ i c h ư ơ n g t r ì n h t ừ n g
d ò n g m ộ t v à k i ể m tra g i á trị của t ừ n g biến,

g i á trị của t ừ n g ô n h ớ , thay đ ổ i g i á

trị của c á c biến theo ý m u ố n n h ằ m x á c đ ị n h l ỗ i của c h ư ơ n g t r ì n h , k i ể m tra giá
trị của c á c thanh g h i sau m ỗ i l ệ n h đ ư ợ c thực h i ệ n . . . M ô i t r ư ờ n g cho p h é p t ạ o ra
c á c d ự á n ứng d ụ n g c h u ẩ n , c á c d ự á n t h ư v i ệ n h à m c h u ẩ n v i ế t t r ê n m ộ t hoặc
nhiều tệp nguồn.
Rất khó tìm chương

trước),

vì các chương

4.5 và BORLAND
đối tượng.

Học

3.0 đơn giản
bâng

ngơn

Visuaỉ
ngơn

trình
trình

C++

6.0.

bằng

Trong

C++


ngơn

như bằng

ngữ c là mơi trường

đến BORLAND

5.0

lỗi thời.

ỈDE,

giáo

BORLAND
nhưng

Mơi

trường

bản

2.0 trở

BORLAND

về


C+ +
hướng

ngữ c trong

C+ +

là mơi

C+ + . Tuy

trình

c (phiên

thì lại hỗ trợ chủ yếu cho lập trình

lợi hơn cả. Đây

ngữ c cũng

C++

c hay Microsoỷt

này đã q

Builder


lập trình

và thuận

Turbo

này,

mơi

mơi

trường

trường

BORLAND

lai, cho phép

nhiên

có thể sử dụng

trường

lập trình

C+ + IDE.


lập

trình

Microsoỷt

để giới thiệu

Vì vậy sau đây

nhớ là ngôn ngữ ta học là ngôn

ta sẽ chỉ

về
nói

ngữC.

T r ê n m ộ t m á y t í n h c ó c à i đ ặ t B O R L A N D C + + 3.0, c ó t h ể t h ấ y c á c t h ư m ụ c
v à c á c t ệ p sau đ â y t r o n g ổ đĩa C:
- T h ư m ụ c C : \ T C , hoặc C : \ B O R L A N D
- Trong đó có các thư mục
LIB,

12

EXAMPLES.

c


BIN, INCLUDE, INCLƯDEXSYS,

BGI,


- C á c thư mục I N C L U D E . INCLƯDEVSYS có các tệp tiêu đ ề v ớ i phần
m ở r ộ n g . H , ví d ụ S T D I O . H , C O N I O . H . ... C á c t ệ p n à y c h ứ a c á c k h a i

báo

c á c h à m và c á c m a c r o đ ể c h è n v à o đ ầ u c h ư ơ n g t r ì n h đ ể đ ỡ c ô n g v i ế t c á i gì
tương tự như thế.
- T h ư m ụ c L I B c ó c á c tệp - L I B . ví d ụ C C . L I B . M A T M . L I B . . . là c á c t ệ p t h ư
v i ệ n h à m . Đ â y là c á c t ệ p k h ô n g t h ể t h i ế u k h i h ọ c l ậ p t r ì n h c .
- Trong thư mục
GOTH.CHR.

B G I c ó c á c tệp . B Ĩ I , . C H R .

ví d ụ

EGAVGA.BGI,

C á c t ệ p n à y c ầ n t h i ế t k h i l ậ p t r ì n h đ ồ hoa t r o n g h ệ đ i ề u h à n h

D O S c ù a m á y PC.
- T h ư m ụ c E X A M P L E S c ó n h i ề u t h ư m ụ c con với r ấ t n h i ề u c h ư ơ n g t r ì n h
m ẫ u để bạn tham khảo.
- T r o n g t h ư m ụ c B I N c ó c á c tệp rất quan t r ọ n g sau đ â y :

• B C . E X E (hoặc T C . E X E ) : C á c c h ư ơ n g t r ì n h n à y m ở ra m ô i t r ư ờ n g p h á t
t r i ể n t ổ n g hợp I D E n ó i t r ê n .
• T ệ p T C H E L P . T C H : T h i ế u t ệ p n à y bạn sẽ m ấ t h ẳ n p h ầ n trợ g i ú p .
• C á c t ệ p T C C O N P I G . T C , là t ệ p c ấ u h ì n h , chứa c á c t h ô n g số c à i đ ặ t mặc
đ ị n h hoặc do b ạ n lựa c h ọ n cho m ô i trường I D E . N ế u k h ơ n g c ó t ệ p n à y thì khi
c h ạ y T C . E X E , n ó sẽ đ ư ợ c tạo ra. M ỗ i l ầ n bạn thay đ ổ i c ấ u h ì n h b ằ n g menu
Options thì t ệ p n à y sẽ đ ư ợ c cập nhật.
Chú ý: Nếu
trường,

bạn quá mạnh

đến mức chương

trình

dạn thay đổi cấu hình từmenu
của bạn đã từng chạy

tốt bồng

Options
nhiên

dược nữa thì có tììé xóa tệp này đi. Bạn sẽ cố tệp mới để thử lại từ

của

khơng


mỏ
dịcì

đầu.

• M ộ t số c h ư ơ n g t r ì n h t i ệ n ích n h ư T E M C . E X E , M A K E . E X E , T L I B . E X E ,
T L I N K . E X E . V ì b ạ n đ a n g sử d ụ n g m ô i trường I D E n ê n k h ô n g c ầ n p h ả i quan
t â m đ ế n 3 c h ư ơ n g t r ì n h sau. R i ê n g c h ư ơ n g t r ì n h T E M C . E X E là m ộ t c h ư ơ n g
t r ì n h lý t h ú . N ó d ù n g đ ể dịch m ộ t t ệ p " c h ư ơ n g t r ì n h " v i ế t b ằ n g m ộ t t h ứ n g ô n
n g ữ g ọ i là " T E M P L " , k ế t q u ả sẽ tạo ra m ộ t t ệ p c ấ u h ì n h k i ể u

TCCONFIG.TC,

trong đ ó quy đ ị n h c á c thao t á c sử d ụ n g p h í m của m ô i t r ư ờ n g I D E . B ạ n sẽ t ă n g
n ă n g suất k h i l ậ p t r ì n h và l à m bạn b è p h ả i ngạc n h i ê n v ớ i c á c c ú b ấ m .
Đ ể bước đ ầ u sử d ụ n g đ ư ợ c I D E , chí c ầ n c á c t ệ p sau:
• T C . E X E (hoặc B C E X E ) ,
• M ộ t số tệp . H (STTDIO.H, STTDLIB.H, C O N I O . R

A L L O C . H , STRING.H.

_DEFS.H. _ N U L L . H )

13


• M ộ t s ố t ệ p . L I B và .OBJ ( C S . L I B , M A T H S . L I B , F P 8 7 . L I B ,

C0S.OBJ c ó


trong thư mục L I B )
• M u ố n có trợ g i ú p thì t h ê m tệp T C H E L P . T C H .
C á c t ệ p n à y n ế u n é n l ạ i b ằ n g P K Z I P hoặc N e t h ì c h i ế m k h ô n g h ế t m ộ t đĩa
m ề m 1,44 M b . C ó t h ể đ ể c h u n g t ấ t cả t r o n g m ộ t t h ư m ụ c hay c h i a ra t h à n h c á c
t h ư m ụ c con n h ư đ ã n ê u ở t r ê n .
ì. MƠI TRƯỜNG PHÁT TRIỂN TÍCH HỢP BORLAND C++ IDE
1. K h ở i

động

N ế u b ạ n c h ư a t h ê m đ ư ờ n g d ẫ n t ớ i t h ư m ụ c chứa B C . E X E ( h o ặ c T C . E X E )
vào d ò n g lệnh P A T H trong c h ư ơ n g trình A U T O E X E C . B A T thì h ã y t h ê m vào
c u ố i d ò n g đ ó m ộ t d ấ u c h ấ m p h ẩ y v à ngay sau đ ó l à t ê n đ ư ờ n g d ẫ n .
Ví dụ:
D ò n g P A T H cũ:
PATH=C:\JDOS;C:\WINDOWS;C:\NC;C:\TF\BIN
BC.EXE

có mặt trong C : \ B O R L A N D C \ B I N chẳng

hạn.

V ậ y thì

dịng

P A T H sau k h i sửa sẽ là:
PATH=C:\DOS;C:\WINDOWS;C:\NC;C:\TP\BIN;C:\

BORLANDC \BIN


C ũ n g c ó t h ể k h ô n g c ầ n sửa d ò n g l ệ n h P A T H n h ư t r ê n , m à t h ê m v à o c u ố i
t ệ p A U T O E X E C . B A T l ệ n h sau:
PATH=%PATH%;C:\BORLANDC\BIN
Sau đ ó k h ở i đ ộ n g l ạ i m á y t í n h của b ạ n .
Đ ể t r á n h sự l ộ n x ộ n k h ô n g đ á n g c ó sau n à y , b ạ n h ã y t ạ o ra m ộ t t h ư m ụ c
d à n h r i ê n g cho v i ệ c h ọ c l ậ p t r ì n h c v à cất c á c c h ư ơ n g t r ì n h của b ạ n t r o n g đ ó .
Ví dụ thư mục

C:\MYPROG.

T ừ nay t r ở đ i , m ỗ i l ầ n l ậ p t r ì n h c , b ạ n h ã y d ù n g l ệ n h C D đ ể v à o t h ư m ụ c
M Y P R O G trước t i ê n , sau đ ổ c h ạ y c h ư ơ n g t r ì n h B C . E X E ( h o ặ c T C . E X E ) .
>CD\MYPROGỈĨWfi
>BC

M

I

N ế u d ù n g Shortcut t r o n g W i n d o w s thì b ạ n đ ặ t c á c t h u ộ c t í n h t r o n g b ả n g
Program của Shortcut n h ư sau:
- Close ô n e x i t : c h ọ n ( c ó g ạ c h c h é o )
- Working:

14

C:\MYPROG



- Nếu

bạn

đang

dùng

Windows

98

trở v ề

trước

thì

nên

vào

mục

A d v a n c e d . . . v à b ỏ c h ọ n m ụ c M s D O S mode.
N g o à i ra, c ó t h ể v à o b ả n g Screen và c h ọ n c h ế đ ộ F u l l Screen.
B ạ n sẽ t h ấ y m ở ra trước m ắ t b ạ n m ộ t cửa sổ m à u x a n h v ớ i m ộ t thanh M e n u
ở trên cùng. C ó thể có một

cửa


sổ con

g i ớ i t h i ệ u sản

p h ẩ m của

hãng

B O R L A N D n ế u đ â y là l ầ n đ ầ u tiên b ạ n c h ạ y B O R L A N D c . Ân p h í m Esc đ ể
cất cửa sổ đ ó đ i v à bắt đ ầ u l à m quen v ớ i m ô i t r ư ờ n g l ậ p t r ì n h .
2. Xem xét lại cấu hình
Mỗi lựa chọn trong hàng menu có thể được kích hoạt bằng cách click
c h u ộ t v à o m ụ c c h ọ n đ ó hoặc d ù n g t ổ hợp p h í m A L T v à p h í m n ó n g . P h í m n ó n g
là p h í m ứng v ớ i c h ữ c á i c ó m à u đ ỏ trong m ụ c c h ọ n . V í d ụ ta c ầ n k í c h hoạt
m e n u O p t i o n s , h ã y ấn t ổ hợp p h í m A L T - O .
_ • X
C-ebug Prcjĩd"'t Search Run Ccrp=[•>
ẹ s = = = .i4,:, -,.r,s * = CONST.CPP
ã ' * &t * en
#inelude <stdớo.h>
Corapiler
#defne PI 3.1416926
ôefine HI l o
le generatĩon.
dvancêd ccd« aenerat"ơn.
#dẹfine H2 l o
BiaĩnO
c— cctions...

{
f l ọ a t r = 5, 3 m HI, b = «2;
Cót r- 2át*ons...
pr-intf ("\fiHifiifc tron ban kinh r = 564.
ỊtriI»tfCXnChặ v i l a %ị.2f", r*PI*2);
pri ntf C"V»Hinh chu nhát canh a » 5W>
printf#ụndef PI_ ị • ;
#defì ne PI "Previous Item"
#undef HI
11:1 H ì n h 1. M e n u O p t i o n s \ C o m p i l e r v à c á c m ụ c c h ọ n
? ĩ

-

s

Cần lưu ý bạn là nếu bạn chạy chương trình ở chế độ DOS thì chưa chắc có
t h ế sử d ụ n g đ ư ợ c c h u ộ t . Đ ừ n g b ă n k h o ă n v ề đ i ề u đ ó . N ế u sử d ụ n g b à n p h í m
t h à n h thạo, n ă n g suất sẽ cao h ơ n k h i d ù n g chuột. N ế u v ẫ n t h í c h d ù n g c h u ộ t thì
nên

tìm

một

chương

trình


tên



MOUSE.COM



khởi

động



từ

A U T O E X E C . B A T . N h ư n g tốt h ơ n cả là h ã y tạo m ộ t shortcut của c h ư ơ n g t r ì n h
T C . E X E (hoặc B C . E X E ) t r ê n Desktop của W i n d o w s v à t h i ế t đ ặ t c h ế đ ộ l à m
việc d ư ớ i sự y ể m trợ của W i n d o w s . L à m n h ư v ậ y sẽ g i ú p b ạ n k h ô n g p h ả i b ă n
k h o ă n về c h u ộ t . H ơ n nữa n ế u c h ư ơ n g t r ì n h của b ạ n c ó bị treo t h ì c ũ n g k h ố n g
p h ả i tắt m á y k h ở i đ ộ n g l ạ i t ừ đ ầ u .
Đ ế thay đ ố i c ấ u h ì n h . b ạ n h ã y c h ọ n menu Options.

15


M e n u O p t i o n s sẽ t r ả i x u ố n g v à trong đ ó ta t h ấ y c ó r ấ t n h i ề u m ụ c

chọn.


Đ ừ n g tự ý c h ọ n bừa m à h ã y t u â n theo chỉ d ẫ n sau đ â y :
• Chọn C o m p i l e r , trong đ ó chọn Code generation..., trong đ ó c h ọ n

Small.

• Chọn C o m p i l e r , trong đ ó chọn Ạ d v a n c e d code g e n e r a t i o n . . .

Trong

Floating point chọn 80287.
• C h ọ n D i r e c t o r i e s . . . , t r o n g đ ó k i ế m tra x e m :
- Ịnclude

d i r e c t o r i e s c ó đ ú n g là đ ư ờ n g d ẫ n t ớ i t h ư m ụ c c h ứ a c á c t ệ p * . H

hay k h ô n g . N ế u sai t h ì sửa l ạ i cho đ ú n g , n ế u t h i ế u t h ì t h ê m v à o v ì c á c t ệ p n à y
c ó t h ể đ ể t r o n g n h i ề u t h ư m ụ c k h á c nhau. H a i đ ư ờ n g d ẫ n c á c h n h a u m ộ t d ấ u
c h ấ m phẩy.
- L i b r a r y d i r e c t o r i e s c ó đ ú n g là đ ư ờ n g d ẫ n t ớ i t h ư m ụ c c h ứ a c á c t ệ p
* . L I B hay k h ô n g . N ế u sai t h ì sửa l ạ i hoặc t h ê m v à o .
- O u t p u t d i r e c t o r y : Bạn n ê n tạo m ộ t thư mục r i ê n g n à o đ ó và đ ặ t đường
d ẫ n đ ầ y đ ủ của t h ư m ụ c đ ó t ạ i đ â y đ ể m ỗ i k h i b ạ n d ị c h c h ư ơ n g t r ì n h của b ạ n ,
b á n dịch sẽ đ ư ợ c x ế p g ọ n g à n g v à o n ơ i n à y .
• Chọn Options\Environment\Preferences, trong đ ó chọn A u t o

Save,

g ạ c h c h é o v à o E d i t o r F i l e s . Đ i ề u n à y đ ả m b ả o trước m ỗ i l ầ n c h ạ y t h ử c h ư ơ n g
t r ì n h đ ư ợ c l u n l ạ i t r ê n đĩa. K h i l ậ p t r ì n h c , chắc c h ắ n b ạ n sẽ n h i ề u l ầ n bị treo
m á y . N ế u k h ô n g l à m thao t á c n à y , b ạ n d ễ c ó n g u y c ơ t h ấ y m ấ t c h ư ơ n g t r ì n h

m à khơng có c á c h nào cứu l ạ i .


Đê

lưu l ạ i c á c thay đ ổ i , c h ọ n

Options\Save, gạch chéo vào

mục

E n v i r o n m e n t và chọn O K .
• N g o à i ra, c h ư a n ê n t h ử l à m đ i ề u g ì k h á c cả.
Đ ể chọn mục n à o đ ó trong các hộp thoại bạn t h ử d ù n g c á c p h í m
Tab

5

t

5



5

<-

5


->

Đ ế thay đ ổ i lựa c h ọ n của m ụ c n à o đ ó , b ạ n d ù n g p h í m

SSBS^BB.

li. CÁCH SỬ DỤNG CÁC TRỢ GIÚP
M ô i t r ư ờ n g I D E của B O R L A N D c l u ô n l u ô n s ẵ n s à n g t r ợ g i ú p b ạ n n ế u
trong đĩa của b ạ n c ó c á c t ệ p * . T C H . T h ự c c h ấ t h i ệ n t ạ i b ạ n c h ỉ c ầ n

tệp

T C H E L P . T C H là đ ủ .
Đ ể g ọ i t ớ i p h á n t r ợ g i ú p , b ạ n chỉ c ầ n l à m c á c thao t á c sau:
- Ân p h í m SO- L ú c đ ó , con trỏ của b ạ n đ a n g ở trong cửa sổ n à o sẽ c ó ngay
m ộ t b ả n g c h i d ẫ n c ầ n t h i ế t v ề cửa sổ đ ó .

16


- H o ặ c ấn t ổ h ợ p p h í m A L T • C h ọ n m ụ c C o n t e n t s , sẽ t h ấ y m ộ t b ả n g t ổ n g quan v ề c á c t r ợ g i ú p c ủ a c .
Bạn có thể dùng chuột hoặc bàn phím để chọn vấn đề mà mình quan tâm. Mỗi
từ khoa có màu vàng trong cửa sổ này đều ẩn giấu sau nó cả một chuỗi các giải
thích tỉ mỉ, chi tiết.
• X

(32
CONST.CPP
ihncluđe <stđio. h>
#defĩne f >l 3.1416926

#define HtL 10
#define H2 l o ! = [ • ] =
HELP COKTEMTS
•ị
flọat
HOM t o Use Help L
_
prĩntf
pr"intf
Menus and Hót Keys I—
printf
prìnrtí
Editor Coraraands
#undẹf PI
Assembler (buịlt-in)
Functions
#đefine RI
Coranand

ne
CTC)
Header Files
#undef m
• Caonand Line uCC)
l ữ5t re am classes
L_
_ 3:3
Container classes
Turbo C++ Language
Error Messages

utìlitĩes V
1

H ì n h 2. H ộ p t h o ạ i H E L P

CONTENTS

• Chọn mục Index, bạn sẽ có một danh mục các vấn đề xếp thành nhóm
theo vần ABC. Bạn có thể tìm trong danh mục đó vấn đề mà mình quan tâm.
Có thể gõ thẳng từ mà bạn muốn tìm hiểu. Nếu từ đó có trong danh sách thì
bạn sẽ tìm thấy nó ngay.
Đ ể tra c ứ u c á c h d ù n g c ủ a m ộ t t ừ khoa, v í d ụ s w i t c h , b ạ n h ã y đ ặ t c o n t r ỏ
v à o t ừ s w i t c h v àấn t ổ h ợ p p h í m C T R L - ị^Ị.
Đ ể x e m l ạ i c ử a sổ t r ợ g i ú p trước đ ó , h ã yấn t ổ h ợ p p h í m A L T - m ,
Thường ở cuối trang trợ giúp về một hàm có xuất hiện các dịng chữ màu vàng
cho tên một ví dụ nào đó, chẳng hạn ^ffi33aSĩuE' bạn hãy click vào đó và
tồn v ă n m ộ t c h ư ơ n g t r ì n h v í d ụ sẽ x u ấ t h i ệ n . B ạ n m ở menu E d i t v à c h ọ n lệnh
^aaf^MHifj^ để chép ví dụ đó. Mở một tệp mới và chọn lệnh dán bằng cách
nhấn tổ hợp phím Shift-Insert hoặc chọn lệnh Paste trong menu Edit và chạy thử.

2-Giáo trình NN lặp trình c

17


H I . C Á C L Ệ N H C ơ B Ả N C Ủ A B O R L A N D C++ I D E
1. c ử a s ổ l à m v i ệ c
1.1. C ấ u t r ú c m ộ t c ử a sổ
M ộ t cửa sổ l à m v i ệ c c ó c ấ u t r ú c n h ư sau:
* Đường


viền

Đ ó là đ ư ờ n g bao n é t k é p h ì n h c h ữ nhật bao q u a n h cửa sổ.
T h a n h t i ê u đ ề : C h í n h l à n é t v i ề n t r ê n c ạ n h t r ê n của cửa sổ. G i ữ a

đường

v i ề n n à y c ó t i ê u đ ề của cửa sổ. N ế u b ấ m n ú t t r á i c h u ộ t l ê n t h a n h n à y v à r ê đ i sẽ
l à m d i c h u y ể n cửa sổ.
N ú t Close: P h í a đ ầ u m ú t t r á i của thanh t i ê u đ ề c ó m ộ t n ú t c h ữ n h ậ t n h ỏ
m à u x a n h lá c â y . N ú t n à y d ù n g đ ể đ ó n g cửa sổ.
N ú t Z o o m : Đ ầ u m ú t p h ả i của thanh t i ê u đ ề cửa sổ c ó n ú t p h ó n g đ ạ i . K h i
n ú t n à y c ó h ì n h d ạ n g [ ĩ . ] t h ì c ó t á c d ụ n g p h ó n g to cửa sổ. K h i n ú t n à y c ó d ạ n g
[Xì

sẽ c ó t á c d ụ n g thu n h ỏ cửa sổ t r ở l ạ i k í c h t h ư ớ c trước k h i b ị p h ó n g to. B ê n

canh n ú t z o o m l à m ộ t c o n s ố c h ỉ s ố t h ứ t ư của cửa sổ.

ran
BU

• X

#ĩncluđe "ayheader. ti"
tinclude -cstdio. h>
t m c ỡ u d e ôXMtớo.h>
vcrd etainO


ã
f l o a t a = 1.5, b
printfr\rtML0.2f
prịntf("\i*l0.2f
pri o t f ("\n5O0.2f
p r i ntFr\n5O.0.2f
getchõ; •

= 2.7;
+ 50.0.2f
* KLQ,2f
+• KIO. 2f
+ %L0.2f

5KL0.2f"»
sao; 2? %
%w.2f"
í

ĩ ——— Project:
F i l e nạn®;
ARĨT.LI8
BRIT.CPP

Vãich

f l Htp

Alt-F9 Cowpi1e F3 Make n e Menu


tt

Save F3 ũpett

H ì n h 3. C á c l o ạ i cửa sổ v à c ấ u t r ú c cửa sổ của B O R L A N D C + + I D E

18


C h ỉ t h i v i trí: T r ê n c ạ n h d ư ớ i , p h í a trái của cửa sổ c ó hai s ố n g u y ê n , c á c h
nhau b ằ n g m ộ t g ạ c h c h é o . C á c s ố n à y cho b i ế t con t r ỏ v ă n b ả n đ a n g n h ấ p n h á y
ở d ò n g n à o , c ộ t n à o t r o n g cửa sổ.
N ú t Size: G ó c p h ả i p h í a d ư ớ i của m ỗ i cửa sổ c ó m ộ t đ o ạ n v i ề n đ ơ n . B ấ m
c h u ộ t v à o đ â y r ồ i r ê đ ể thay đ ổ i k í c h thước của cửa sổ.
* Thanh

cuốn dọc và thanh

cuốn

ngang

Đ â y là hai t h a n h n ằ m t r ê n c ạ n h p h ả i v à c ạ n h đ á y của cửa sổ. T r ê n hai đ ầ u
m ú t của m ỗ i t h a n h c ó hai n ú t h ì n h tam g i á c n h ỏ . ở giữa m ỗ i thanh c u ố n c ó
m ộ t con c h ạ y h ì n h c h ữ nhật. C á c n ú t tam g i á c d ù n g đ ể c u ố n cửa sổ theo c h i ề u
m ũ i của h ì n h tam g i á c t ừ n g d ò n g m ộ t . Con c h ạ y n ế u đ ư ợ c k é o r ê b ằ n g c h u ộ t sẽ
c u ố n n ộ i d u n g cửa sổ theo c h i ề u d i c h u y ể n t ớ i vị t r í t ư ơ n g ứng của n ộ i d u n g
cửa sổ t í n h t ỷ l ệ v ớ i c h i ề u d à i thanh c u ố n .
1.2. C á c l o ạ i c ử a sổ
B O R L A N D C + + I D E c ó 7 l o ạ i cửa sổ. Đ ó là:

* Cửa sổ soạn

thảo

Đ â y l à cửa sổ l à m v i ệ c m ặ c đ ị n h , t r ê n đ ó b ạ n sẽ v i ế t c á c d ò n g l ệ n h cho
c h ư ơ n g t r ì n h của b ạ n . M ỗ i cửa sổ n à y t ư ơ n g ứng v ớ i m ộ t t ệ p t r ê n đĩa. N ế u c ó
n h i ề u cửa s ố ứng v ớ i c ù n g m ộ t t ệ p thì c h ú n g sẽ đ ư ợ c đ á n h s ố b ê n c ạ n h tiêu đ ề
của cửa sổ.
* Cửa sổ thông

báo

L à n ơ i x u ấ t h i ệ n c á c t h ô n g b á o trong q u á t r ì n h d ị c h h o ặ c c h ạ y t h ử c h ư ơ n g
t r ì n h . T i ê u đ ề của cửa sổ n à y l u ô n l u ơ n là Message. B ạ n c ó t h ể c ấ t cửa sổ n à y
đ i cho k h ỏ i v ư ớ n g v í u , n h ư n g m ỗ i k h i c ó g ì c ầ n trao đ ổ i v ớ i b ạ n t h ì cửa sổ n à y
lại tự động xuất hiện.
* Cửa sổ

Output

L à m ộ t b ả n sao của cửa sổ h i ể n t h ị k ế t q u ả (User Screen). V ớ i cửa sổ n à y ,
b ạ n sẽ k h ô n g c ầ n d ù n g p h í m A l t - 0 3 đ ể n h ả y n h ó t giữa cửa sổ l à m v i ệ c v à
User Screen nữa.
* Cửa sổ

Watch

L à c h ỗ m à b ạ n c ó t h ể đ ă n g k ý c á c b i ế n c ầ n theo d õ i t r o n g q u á t r ì n h g ỡ l ỗ i .
Cửa sổ n à y sẽ h i ể n t h ị m ọ i thay đ ổ i của c á c b i ế n đ ư ợ c đ ă n g k ý theo q u á t r ì n h
thực h i ệ n c h ư ơ n g t r ì n h , hoặc cho k h ô n g n h ậ n b i ế t m ộ t b i ế n n ế u đ o ạ n t r ì n h

đ a n g thực h i ệ n n g o à i t ầ m t á c d ụ n g của b i ế n đ ó .

19


* Cửa sổ

Registers

N ế u b ạ n c ó h ứ n g t h ú theo d õ i x e m c á c thanh g h i b i ế n đ ổ i n h ư t h ế n à o sau
m ỗ i bước thực h i ệ n của c h ư ơ n g t r ì n h thì m ở cửa sổ n à y .
* Cửa sổ

Proịect

Đ â y là cửa sổ lưu g i ữ c á c t h ô n g t i n v ề m ộ t d ự á n , bao g ồ m t ê n v à đ ư ờ n g
d ẫ n của c á c t ệ p l i ê n quan đ ế n d ự á n . B ạ n c ó t h ể t r u y cập d ễ d à n g v à o b ấ t k ỳ t ệ p
n à o trong đ ó m à k h ô n g m ấ t c ơ n g t ì m k i ế m .
* Cửa sổ Project

notes

Trong q u á trình x â y dựng m ộ t d ự án, bạn cần ghi c h é p tất cả những gì cần
p h ả i l à m , n h ữ n g g ì đ a n g l à m , n h ữ n g gì đ ã l à m , k ế t q u ả c ô n g v i ệ c , n h ữ n g thắc
m ắ c , n h ữ n g p h á t h i ệ n , n h ữ n g thay đ ổ i . Cửa sổ n à y là c h ỗ l à m v i ệ c đ ó .
C h ú ý là: Đ ể m ở cửa sổ soạn t h ả o thì v à o m e n u F i l e . Đ ể m ở c á c cửa sổ
k h á c thì v à o m e n u W i n d o w .
* Các lệnh liên quan

đến cửa


sổ

T Ổ HỢP

L Ệ N H TRÊN

PHÍM

CƠNG

PHÍM

MENU

TẮT

DỤNG

Alt-F, 0

Alt-F, N

File\Open

F3

Mở
đã có.
Mở


File\New

tệp

GHI CHÚ
M ở h ộ p t h o ạ i Open,
tìm và m ở tệp

cửa

Cửa

sổ

mặc

sổ m ớ i

mới



định

tên


NONAMExx.C
N ế u tệp ghi lần đầu

t h ì h ộ p t h o ạ i Save A s
m ở ra. Đ ặ t t ê n hoặc

Alt-F, s

FileVỊave

F2

Lưu
v à o đĩa

tệp

t ì m tệp đ ể lưu.

Cẩn

thận, nếu chọn

một

t ê n c ó sẵn tức là g h i
đ è , c h ú ý trả l ờ i Yes
hay

No

cho


Nếu

không

đúng.
phải



lần đầu thì tệp được
cập nhật.

20


Hộp

thoại

Save

As

m ở ra. Đ ặ t t ê n hoặc
Alt-F, A

Lưu

File\Save Ạ s


vào

tệp m ớ i

t ì m tệp đ ể lưu.

Cẩn

thận,

một

nếu

chọn

tên c ó sẵn tức là ghi
đ è , c h ú ý trả l ờ i Yes
hay N o cho đ ú n g .
T ấ t cả c á c tệp

Alt-F, L

File\Save A U

G h i tất cả

hiện

đ a n g m ở sẽ được cập

nhật lên đĩa.
L ậ t m ộ t cửa số ở d ư ớ i
lên

trên.

Chú

ý:

K h ô n g nên m ở đổng
thời n h i ề u tệp, t r á n h
Alt-W, X

Window\Next

F6

Đ ổ i cửa sổ

m ộ t tệp m ở n h i ề u l ầ n .

làm việc

N ế u k h ô n g thấy

tệp

đ ã m ở trên m à n h ì n h
thì d ù n g l ệ n h n à y đ ể

tìm, k h ơ n g nên m ở l ạ i
b ằ n g l ệ n h F3.

Alt-W, z

Window\Zoom

F5

Phóng đại/

P h ó n g to cửa sổ hết

Phục

cỡ hoặc thu trở l ạ i v ề

hồi

cửa sổ l à m

k í c h thước ban đ ầ u .

việc
Cửa sổ trở t h à n h v i ề n
đ ơ n liên tục, tiêu đ ề ,
c á c thanh c u ố n và c á c
chi
Alt-W, s


Window 5ize/Move
N

Ctrl-F5

tiết

khác

trên

D i chuyển,

đường viền biên mất.

thay

M u ố n d i c h u y ể n thì

đối

kích thước

bấm

các

phím

mũi


tên. M u ố n

thay đ ổ i

k í c h thước

thì

dùng

c á c p h í m m ũ i tên k ế t
hợp v ớ i p h í m Shift.

21


xếp

C á c cửa sổ đ ư ợ c t h u

cửa sổ k i ể u

n h ỏ v à x ế p k ề nhau

ngói l ợ p

phủ k í n m à n hình.

Sắp

Alt-W, T

Window\Tile

Sắp
Alt-W, a

xếp

cửa sổ k i ể u

Window\Cascade

chồng m ũ
lưỡi trai.

Các

cửa

xếp

đè

sổ

được

lên


nhau,

m ỗ i cửa sổ l ệ c h đ i
m ộ t c h ú t sang

phải

và xuống dưới.
N ế u tệp chưa ghi thì

Alt-W, c

Window\Close

Alt-F3

Đ ó n g cửa

phải trả l ờ i câu h ỏ i c ó

sỗ

ghi

hay k h ơ n g . T r ả

l ờ i Yes hoặc N o .
Đóng
Alt-W, e


tất

cả

Window\Close A U

các

cửa sổ

Alt-W, M

Windo\\AMessage

Alt-W, 0

Window\Output

Alt-W, w

Window\Watch

Screen

Alt-W, R

Window\Registers

Alt-W, p


Window\Project

phải trả l ờ i câu h ỏ i c ó
ghi

Message
M ở cửa sổ
Output
M ở cửa sổ
Watch

Alt-F5

Mở

Ưser

Screen
M ở cửa sổ
Register
M ở cửa sổ
Project
M ở cửa sổ

Alt-W, n

WindoW\Project notes

Project
notes


H ì n h 4. C á c l ệ n h c h í n h t r ê n c ử a s ổ

22

hay k h ô n g . T r ả

lòi Yes hoặc N o .

M ở cửa sổ

Window\User
Alt-W, u

N ế u tệp chưa ghi thì


2. C á c l ệ n h s o ạ n t h ả o
C á c l ệ n h n à y đ ư ợ c thực h i ệ n bằng c á c p h í m hoặc t ổ hợp p h ú n t r ê n b à n p h ú n
nếu k h ô n g d ù n g chuột. C ó t h ể lựa chọn tập hợp l ệ n h bằng c á c h c h ọ n menu
O p t i o n s \ E n v i r o n m e n t \ P r e f e r e n c e s , trong đ ó c h ọ n C o m m a n d sét: C ó 2 tập hợp
lệnh, m ộ t theo giao d i ệ n C U A , m ộ t theo giao d i ệ n A l t e r n a t e . T ậ p hợp t h ứ 3 là tập
l ệ n h b ẩ m sinh của B O R L A N D C + + I D E , c h í n h là tập l ệ n h Alternate.
Sau đ â y là c á c l ệ n h c h ủ y ế u :
2.1. M e n u Edit
,

(Soạn thảo)



T ỏ HỢP
PHÍM

LỆNH

LỆNH TRÊN

GHI CHÚ

MENU

K h ô i phục m ộ t trạng t h á i cũ của

Alt-E, u

Ưnddo

Edit\Undo
Alt-BkSpace

cửa sổ soạn thảo. Thực h i ệ n thao
t á c n à y sau k h i m ắ c m ộ t sai l ầ m
n à o đ ó trong cửa sổ soạn thảo và
m u ố n cứu v ã n t ì n h t h ế . C ó t h ể
thực h i ệ n thao t á c n à y n h i ề u l ầ n
đ ể l ầ n n g ư ợ c v ề trạng thái ban
đ ầ u k h i m ớ i m ở cửa sổ.

Alt-E, R


ì Alt-E, T

Redo
Cút

Alt-E, c

Copy

Alt-E, p

Paste

Alt-E, L

._
•—
Clear

Edit\Redo
Shift-Alt-BkSpace

T r ở l ạ i t r ạ n g t h á i trước k h i thực

Edit\Cut

X o a m ộ t k h ố i đ ã c h ọ n v à lưu

Shift-Dd


vào Clipboard

EditXCopy
Ctrl-Ins

Lưu k h ố i đ ã chọn vào Clipboard

EditXPaste

D á n n ộ i d u n g C l i p b o a r d v à o vị

Shift-Ins

t r í con t r ỏ

EditXClear
Ctrl-Del

Xoa khối đã chọn, k h ô n g

hiện lệnh Unddo

lưu

vào Clipboard
K h i sử d ụ n g cửa sổ trợ g i ú p , n ế u
c ó c h ư ơ n g t r ì n h m ẫ u , c ó t h ể thực

Alt-E, E


Copy
example

Edit\Copy
example

h i ệ n c á c thao t á c sao c h é p t h ô n g
thường đ ể c h é p sang tệp m ớ i v à
chạy thử. N ế u d ù n g l ệ n h n à y thì
d ễ chịu h ơ n n h i ề u . B ạ n t i ế t k i ệ m
đ ư ơ c thao t á c đ á n h d ấ u chon

H ì n h 5. C á c l ệ n h s o ạ n t h ả o

23


×