
Bài 1 : C u Trúc C a M t Ch ng Trình C++ấ ủ ộ ươ
Có l m t trong nh ng cách t t nh t đ b t đ u h c m t ngôn ng l p trình là b ngẽ ộ ữ ố ấ ể ắ ầ ọ ộ ữ ậ ằ
m t ch ng trình. V y đây là ch ng trình đ u tiên c a chúng ta :ộ ươ ậ ươ ầ ủ
// my first program in C++
#include <iostream.h>
int main ()
{
cout << "Hello World!";
return 0;
}
Hello World!
Ch ng trình trên đây là ch ng trình đ u tiên mà h u h t nh ng ng i h c ngh l pươ ươ ầ ầ ế ữ ườ ọ ề ậ
trình vi t đ u tiên và k t qu c a nó là vi t câu "Hello, World" lên màn hình. Đây làế ầ ế ả ủ ế
m t trong nh ng ch ng trình đ n gi n nh t có th vi t b ng C++ nh ng nó đã baoộ ữ ươ ơ ả ấ ể ế ằ ư
g m nh ng ph n c b n mà m i ch ng trình C++ có. Hãy cùng xem xét t ng dòngồ ữ ầ ơ ả ọ ươ ừ
m t :ộ
// my first program in C++
Đây là dòng chú thích. T t c các dòng b t đ u b ng hai d u s (//) đ c coi là chútấ ả ắ ầ ằ ấ ổ ượ
thích mà chúng không có b t kì m t nh h ng nào đ n ho t đ ng c a ch ng trình.ấ ộ ả ưở ế ạ ộ ủ ươ
Chúng có th đ c các l p trình viên dùng đ gi i thích hay bình ph m bên trong mãể ượ ậ ể ả ẩ
ngu n c a ch ng trình. Trong tr ng h p này, dòng chú thích là m t gi i thích ng nồ ủ ươ ườ ợ ộ ả ắ
g n nh ng gì mà ch ng trình chúng ta làm.ọ ữ ươ
#include <iostream.h>
Các câu b t đ u b ng d u (#) đ c dùng cho preprocessor (ai d ch h tôi t này v i).ắ ầ ằ ấ ượ ị ộ ừ ớ
Chúng không ph i là nh ng dòng mã th c hi n nh ng đ c dùng đ báo hi u cho trìnhả ữ ự ệ ư ượ ể ệ
d ch. đây câu l nh ị Ở ệ #include <iostream.h> báo cho trình d ch bi t c n ph iị ế ầ ả
"include" th vi n ư ệ iostream. Đây là m t th vi n vào ra c b n trong C++ và nó ph iộ ư ệ ơ ả ả
đ c "include" vì nó s đ c dùng trong ch ng trình. Đây là cách c đi n đ sượ ẽ ượ ươ ổ ể ể ử
d ng th vi n ụ ư ệ iostream
int main ()
Dòng này t ng ng v i ph n b t đ u khai báo hàm ươ ứ ớ ầ ắ ầ main. Hàm main là đi m mà t tể ấ
c các ch ng trình C++ b t đ u th c hi n. Nó không ph thu c vào v trí c a hàmả ươ ắ ầ ự ệ ụ ộ ị ủ
này ( đ u, cu i hay gi a c a mã ngu n) mà n i dung c a nó luôn đ c th c hi nở ầ ố ở ữ ủ ồ ộ ủ ượ ự ệ
đ u tiên khi ch ng trình b t đ u. Thêm vào đó, do nguyên nhân nói trên, m i ch ngầ ươ ắ ầ ọ ươ
trình C++ đ u ph i t n t i m t hàm ề ả ồ ạ ộ main.
Theo sau main là m t c p ngo c đ n b i vì nó là m t hàm. Trong C++, t t c các hàmộ ặ ặ ơ ở ộ ấ ả
mà sau đó là m t c p ngo c đ n () thì có nghĩa là nó có th có ho c không có tham sộ ặ ặ ơ ể ặ ố
(không b t bu c). N i dung c a hàm main ti p ngay sau ph n khai báo chính th cắ ộ ộ ủ ế ầ ứ
đ c bao trong các ngo c nh n ( ượ ặ ọ { } ) nh trong ví d c a chúng taư ụ ủ

cout << "Hello World";
Dòng l nh này làm vi c quan tr ng nh t c a ch ng trình. ệ ệ ọ ấ ủ ươ cout là m t dòng (stream)ộ
output chu n trong C++ đ c đ nh nghĩa trong th vi n ẩ ượ ị ư ệ iostream và nh ng gì mà dòngữ
l nh này làm là g i chu i kí t ệ ử ỗ ự "Hello World" ra màn hình.
Chú ý r ng dòng này k t thúc b ng d u ch m ph y ( ; ). Kí t này đ c dùng đ k tằ ế ằ ấ ấ ẩ ự ượ ể ế
thúc m t l nh và b t bu c ph i có sau m i l nh trong ch ng trình C++ c a b n (m tộ ệ ắ ộ ả ỗ ệ ươ ủ ạ ộ
trong nh ng l i ph bi n nh t c a nh ng l p trình viên C++ là quên m t d u ch mữ ỗ ổ ế ấ ủ ữ ậ ấ ấ ấ
ph y).ẩ
return 0;
L nh ệreturn k t thúc hàm main và tr v mã đi sau nó, trong tr ng h p này là 0. Đâyế ả ề ườ ợ
là m t k t thúc bình th ng c a m t ch ng trình không có m t l i nào trong quá trìnhộ ế ườ ủ ộ ươ ộ ỗ
th c hi n. Nh b n s th y trong các ví d ti p theo, đây là m t cách ph bi n nh tự ệ ư ạ ẽ ấ ụ ế ộ ổ ế ấ
đ k t thúc m t ch ng trình C++. ể ế ộ ươ
Ch ng trình đ c c u trúc thành nh ng dòng khác nhau đ nó tr nên d đ c h nươ ượ ấ ữ ể ở ễ ọ ơ
nh ng hoàn toàn không ph i b t bu c ph i làm v y. Ví d , thay vì vi t ư ả ắ ộ ả ậ ụ ế
int main ()
{
cout << " Hello World ";
return 0;
}
ta có th vi t ể ế
int main () { cout << " Hello World "; return 0; }
cũng cho m t k t qu chính xác nh nhau. ộ ế ả ư
Trong C++, các dòng l nh đ c phân cách b ng d u ch m ph y ( ;). Vi c chia ch ngệ ượ ằ ấ ấ ẩ ệ ươ
trình thành các dòng ch nh m đ cho nó d đ c h n mà thôi. ỉ ằ ể ễ ọ ơ
Các chú thích.
Các chú thích đ c các l p trình viên s d ng đ ghi chú hay mô t trong các ph n c aượ ậ ử ụ ể ả ầ ủ
ch ng trình. Trong C++ có hai cách đ chú thíchươ ể
// Chú thích theo dòng
/* Chú thích theo kh i */ố
Chú thích theo dòng b t đ u t c p d u x (//) cho đ n cu i dòng. Chú thích theo kh iắ ầ ừ ặ ấ ổ ế ố ố
b t đ u b ng ắ ầ ằ /* và k t thúc b ng ế ằ */ và có th bao g m nhi u dòng. Chúng ta s thêmể ồ ề ẽ
các chú thích cho ch ng trình : ươ
/* my second program in C++ Hello World! I'm a C++ program

with more comments */
#include <iostream.h>
int main ()
{
cout << "Hello World! ";
// says Hello World!
cout << "I'm a C++ program";
// says I'm a C++ program
return 0;
}
N u b n vi t các chú thích trong ch ng trình mà không s d ng các d u //, /* hay */,ế ạ ế ươ ử ụ ấ
trình d ch s coi chúng nh là các l nh C++ và s hi n th các l i. ị ẽ ư ệ ẽ ể ị ỗ
Bài 1 : C u Trúc C a M t Ch ng Trình C++ấ ủ ộ ươ
Có l m t trong nh ng cách t t nh t đ b t đ u h c m t ngôn ng l p trình là b ngẽ ộ ữ ố ấ ể ắ ầ ọ ộ ữ ậ ằ
m t ch ng trình. V y đây là ch ng trình đ u tiên c a chúng ta :ộ ươ ậ ươ ầ ủ
// my first program in C++
#include <iostream.h>
int main ()
{
cout << "Hello World!";
return 0;
}
Hello World!
Ch ng trình trên đây là ch ng trình đ u tiên mà h u h t nh ng ng i h c ngh l pươ ươ ầ ầ ế ữ ườ ọ ề ậ
trình vi t đ u tiên và k t qu c a nó là vi t câu "Hello, World" lên màn hình. Đây làế ầ ế ả ủ ế
m t trong nh ng ch ng trình đ n gi n nh t có th vi t b ng C++ nh ng nó đã baoộ ữ ươ ơ ả ấ ể ế ằ ư
g m nh ng ph n c b n mà m i ch ng trình C++ có. Hãy cùng xem xét t ng dòngồ ữ ầ ơ ả ọ ươ ừ
m t :ộ
// my first program in C++
Đây là dòng chú thích. T t c các dòng b t đ u b ng hai d u s (//) đ c coi là chútấ ả ắ ầ ằ ấ ổ ượ
thích mà chúng không có b t kì m t nh h ng nào đ n ho t đ ng c a ch ng trình.ấ ộ ả ưở ế ạ ộ ủ ươ
Chúng có th đ c các l p trình viên dùng đ gi i thích hay bình ph m bên trong mãể ượ ậ ể ả ẩ
ngu n c a ch ng trình. Trong tr ng h p này, dòng chú thích là m t gi i thích ng nồ ủ ươ ườ ợ ộ ả ắ
g n nh ng gì mà ch ng trình chúng ta làm.ọ ữ ươ
#include <iostream.h>
Các câu b t đ u b ng d u (#) đ c dùng cho preprocessor (ai d ch h tôi t này v i).ắ ầ ằ ấ ượ ị ộ ừ ớ
Chúng không ph i là nh ng dòng mã th c hi n nh ng đ c dùng đ báo hi u cho trìnhả ữ ự ệ ư ượ ể ệ
d ch. đây câu l nh ị Ở ệ #include <iostream.h> báo cho trình d ch bi t c n ph iị ế ầ ả

"include" th vi n ư ệ iostream. Đây là m t th vi n vào ra c b n trong C++ và nó ph iộ ư ệ ơ ả ả
đ c "include" vì nó s đ c dùng trong ch ng trình. Đây là cách c đi n đ sượ ẽ ượ ươ ổ ể ể ử
d ng th vi n ụ ư ệ iostream
int main ()
Dòng này t ng ng v i ph n b t đ u khai báo hàm ươ ứ ớ ầ ắ ầ main. Hàm main là đi m mà t tể ấ
c các ch ng trình C++ b t đ u th c hi n. Nó không ph thu c vào v trí c a hàmả ươ ắ ầ ự ệ ụ ộ ị ủ
này ( đ u, cu i hay gi a c a mã ngu n) mà n i dung c a nó luôn đ c th c hi nở ầ ố ở ữ ủ ồ ộ ủ ượ ự ệ
đ u tiên khi ch ng trình b t đ u. Thêm vào đó, do nguyên nhân nói trên, m i ch ngầ ươ ắ ầ ọ ươ
trình C++ đ u ph i t n t i m t hàm ề ả ồ ạ ộ main.
Theo sau main là m t c p ngo c đ n b i vì nó là m t hàm. Trong C++, t t c các hàmộ ặ ặ ơ ở ộ ấ ả
mà sau đó là m t c p ngo c đ n () thì có nghĩa là nó có th có ho c không có tham sộ ặ ặ ơ ể ặ ố
(không b t bu c). N i dung c a hàm main ti p ngay sau ph n khai báo chính th cắ ộ ộ ủ ế ầ ứ
đ c bao trong các ngo c nh n ( ượ ặ ọ { } ) nh trong ví d c a chúng taư ụ ủ
cout << "Hello World";
Dòng l nh này làm vi c quan tr ng nh t c a ch ng trình. ệ ệ ọ ấ ủ ươ cout là m t dòng (stream)ộ
output chu n trong C++ đ c đ nh nghĩa trong th vi n ẩ ượ ị ư ệ iostream và nh ng gì mà dòngữ
l nh này làm là g i chu i kí t ệ ử ỗ ự "Hello World" ra màn hình.
Chú ý r ng dòng này k t thúc b ng d u ch m ph y ( ; ). Kí t này đ c dùng đ k tằ ế ằ ấ ấ ẩ ự ượ ể ế
thúc m t l nh và b t bu c ph i có sau m i l nh trong ch ng trình C++ c a b n (m tộ ệ ắ ộ ả ỗ ệ ươ ủ ạ ộ
trong nh ng l i ph bi n nh t c a nh ng l p trình viên C++ là quên m t d u ch mữ ỗ ổ ế ấ ủ ữ ậ ấ ấ ấ
ph y).ẩ
return 0;
L nh ệreturn k t thúc hàm main và tr v mã đi sau nó, trong tr ng h p này là 0. Đâyế ả ề ườ ợ
là m t k t thúc bình th ng c a m t ch ng trình không có m t l i nào trong quá trìnhộ ế ườ ủ ộ ươ ộ ỗ
th c hi n. Nh b n s th y trong các ví d ti p theo, đây là m t cách ph bi n nh tự ệ ư ạ ẽ ấ ụ ế ộ ổ ế ấ
đ k t thúc m t ch ng trình C++. ể ế ộ ươ
Ch ng trình đ c c u trúc thành nh ng dòng khác nhau đ nó tr nên d đ c h nươ ượ ấ ữ ể ở ễ ọ ơ
nh ng hoàn toàn không ph i b t bu c ph i làm v y. Ví d , thay vì vi t ư ả ắ ộ ả ậ ụ ế
int main ()
{
cout << " Hello World ";
return 0;
}
ta có th vi t ể ế
int main () { cout << " Hello World "; return 0; }
cũng cho m t k t qu chính xác nh nhau. ộ ế ả ư

Trong C++, các dòng l nh đ c phân cách b ng d u ch m ph y ( ;). Vi c chia ch ngệ ượ ằ ấ ấ ẩ ệ ươ
trình thành các dòng ch nh m đ cho nó d đ c h n mà thôi. ỉ ằ ể ễ ọ ơ
Các chú thích.
Các chú thích đ c các l p trình viên s d ng đ ghi chú hay mô t trong các ph n c aượ ậ ử ụ ể ả ầ ủ
ch ng trình. Trong C++ có hai cách đ chú thíchươ ể
// Chú thích theo dòng
/* Chú thích theo kh i */ố
Chú thích theo dòng b t đ u t c p d u x (//) cho đ n cu i dòng. Chú thích theo kh iắ ầ ừ ặ ấ ổ ế ố ố
b t đ u b ng ắ ầ ằ /* và k t thúc b ng ế ằ */ và có th bao g m nhi u dòng. Chúng ta s thêmể ồ ề ẽ
các chú thích cho ch ng trình : ươ
/* my second program in C++
with more comments */
#include <iostream.h>
int main ()
{
cout << "Hello World! ";
// says Hello World!
cout << "I'm a C++ program";
// says I'm a C++ program
return 0;
}
Hello World! I'm a C++ program
N u b n vi t các chú thích trong ch ng trình mà không s d ng các d u //, /* hay */,ế ạ ế ươ ử ụ ấ
trình d ch s coi chúng nh là các l nh C++ và s hi n th các l i. ị ẽ ư ệ ẽ ể ị ỗ
Bài 3 : Các Toán Tử
Qua bài tr c chúng ta đã bi t đ n s t n t i c a các bi n và các h ng. Trong C++, đướ ế ế ự ồ ạ ủ ế ằ ể
thao tác v i chúng ta s d ng các toán t , đó là các t khoá và các d u không có trongớ ử ụ ử ừ ấ
b ng ch cái nh ng l i có trên h u h t các bàn phím trên th gi i. Hi u bi t v chúngả ữ ư ạ ầ ế ế ớ ể ế ề
là r t quan tr ng vì đây là m t trong nh ng thành ph n c b n c a ngôn ng C++.ấ ọ ộ ữ ầ ơ ả ủ ữ
Toán t gán (ử=).
Toán t gán dùng đ gán m t giá tr nào đó cho m t bi n ử ể ộ ị ộ ế
a = 5;
gán giá tr nguyên 5 cho bi n ị ế a. V trái b t bu c ph i là m t bi n còn v ph iế ắ ộ ả ộ ế ế ả
có th là b t kì h ng, bi n hay k t qu c a m t bi u th c.ể ấ ằ ế ế ả ủ ộ ể ứ

