TỔNG QUAN VỀ
Ô Ữ Í
NG
Ô
N NG
Ữ
LẬP TR
Í
NH C/C++
GV: Từ thị Xuân Hiền
1
1Lịch sử củangônngữ C/C++
1
.
Lịch
sử
của
ngôn
ngữ
C/C++
C
được
tạo
bởi
Dennis
Ritchie
ở
Bell
Telephone
C
được
tạo
bởi
Dennis
Ritchie
ở
Bell
Telephone
Laboratories vào năm 1972.
Vào
năm
1983
,
học
viện
chuẩn
quốc
gia
Mỹ
Vào
năm
1983
,
học
viện
chuẩn
quốc
gia
Mỹ
(American National Standards Institute - ANSI)
thành lậpmộttiểubanđể chuẩnhóaCđược
biết đếnnh
ư
A
NSI Standard C
C++ đượcxâydựng trên nềntảng ANSI
Sdd
C
S
tan
d
ar
d
C
C++ là mộtngônngữ lậptrìnhhướng đối
tượ
ó
b
hà
ả
ô
ữ
C
2
tượ
n
g
,n
ó
b
ao
hà
mc
ả
n
gô
nn
gữ
C
2Kỹ thuật để giảiquyếtmột bài toán
2
.
Kỹ
thuật
để
giải
quyết
một
bài
toán
Một
chương
trình
máy
tính
được
thiết
kế
để
giải
Một
chương
trình
máy
tính
được
thiết
kế
để
giải
quyếtmột bài toán nào đó. Vì vậy, những bước
cần
để
tìm
kiếm
lời
giải
cho
một
bài
toán
cũng
cần
để
tìm
kiếm
lời
giải
cho
một
bài
toán
cũng
giống như những bướccần để viếtmột
chươn
g
trình.
g
Các bướcgồm:
− Xác đ
ị
nh
y
êu cầucủa bài toán
ị
y
− Đưarathuật toán (dùng mã giả,hoặclưu đồ)
−
Cài
đặt
(viết)
chương
trình
3
Cài
đặt
(viết)
chương
trình
− Thựchiệnchương trình và kiểmchứng
3.Các bước tron
g
chu trình
g
phát triển chương trình
4
3.Các bước tron
g
chu trình
g
phát triển chương trình
Nhập
mã
nguồn
(source
code)
Nhập
mã
nguồn
(source
code)
− Mã nguồnlàtậplệnh dùng để chỉ dẫnmáy
tính
thực
hiện
công
việc
do
người
lập
trình
tính
thực
hiện
công
việc
do
người
lập
trình
đưara
Tập
tin
mã
nguồn
có
phần
mở
rộng
cpp
−
Tập
tin
mã
nguồn
có
phần
mở
rộng
.
cpp
(C++)
Biên
dịch
mã
nguồn
(compile)
Biên
dịch
mã
nguồn
(compile)
− Chương trình viếtbằng ngôn ngữ cấpcao
C/C++
được
biên
dịch
sang
mã
máy
bằng
5
C/C++
được
biên
dịch
sang
mã
máy
bằng
mộtchương trình dịch(compiler)
3.Các bước tron
g
chu trình
g
phát triển chương trình
Liên
kết
các
tập
tin
đối
tượng
tạo
các
tập
tin
Liên
kết
các
tập
tin
đối
tượng
tạo
các
tập
tin
thực thi (executable file).
C/C++
có
một
thư
viện
hàm
được
tạo
sẵn
−
C/C++
có
một
thư
viện
hàm
được
tạo
sẵn
− Tậptinđốitượng do trình biên dịch tạora
kết
hợp
với
mã
đối
tượng
để
tạo
tập
tin
thực
kết
hợp
với
mã
đối
tượng
để
tạo
tập
tin
thực
thi, quá trình này đượctạobởibộ liên kết
(
Linker
)
()
Thựchiệnchương trình
6
3.Các bước tron
g
chu trình
g
phát triển chương trình
Thực
hiện
chương
trình
Thực
hiện
chương
trình
− Chương trình nguồn đượcbiêndịch và liên
kết
sẽ
tạo
nên
tập
tin
thực
thi
và
thực
thi
tại
kết
sẽ
tạo
nên
tập
tin
thực
thi
và
thực
thi
tại
dấunhắchệ thống
Nếu
chương
trình
có
lổi
phải
được
chỉnh
sửa
−
Nếu
chương
trình
có
lổi
phải
được
chỉnh
sửa
và biên dịch lại.
−
Quá
trình
4
bước
sẽ
được
lập
lại
cho
đến
khi
Quá
trình
4
bước
sẽ
được
lập
lại
cho
đến
khi
tậptinthựcthithựchiện đúng yêu cầubài
toán
7
4. Khảo sát m
ộ
t chươn
g
trình
ộ g
C/C++ đơn giản
// my first program in C/C++
//
my
first
program
in
C/C++
#include <conio.h>
#include <iostream h>
#include
<iostream
.
h>
int main()
{
{
cout << "Hello World!"; //Output “Hello World!”
getch();
getch();
return 0;
}
8
}
4. Khảo sát m
ộ
t chươn
g
trình
ộ g
C/C++ đơn giản
//
my
first
program
in
C/C++
:
//
my
first
program
in
C/C++
:
dòng chú thích, không ảnh hưởng đếnhoạt động
của
chương
trình
của
chương
trình
#include <iostream.h>:
Các
lệnh
bắt
đầ
bằng
dấ
#
gọi
là
chỉ
thị
tiền
ử
Các
lệnh
bắt
đầ
u
bằng
dấ
u
#
gọi
là
chỉ
thị
tiền
x
ử
lý (preprocessor)
9
4. Khảo sát m
ộ
t chươn
g
trình
ộ g
C/C++ đơn giản
int main():
int
main():
− Hàm main là điểm mà tất cả các chương trình
C/C++ bắt đầuthựchiện
C/C++
bắt
đầu
thực
hiện
.
− Hàm main không phụ thuộc vào vị trí của hàm
Nội d ng t ong hàm main l ôn đượcthựchiện
−
Nội
d
u
ng
t
r
ong
hàm
main
l
u
ôn
được
thực
hiện
đầu tiên khi chương trình được thực thi
Chương trình C/C++ phảitồntạihàmmain()
−
Chương
trình
C/C++
phải
tồn
tại
hàm
main()
− Nội dung của hàm main() tiếp sau phần khai
báo chính thức đặttrongcặpdấu{}
10
báo
chính
thức
đặt
trong
cặp
dấu
{
}
4. Khảo sát m
ộ
t chươn
g
trình
ộ g
C/C++ đơn giản
cout
<<
"
Hello
World!“
:
−
cout
<<
Hello
World!
:
Đây là mộtlệnh nằmtrongphầnthâncủahàm
main
main
−
Cout
:làmộtdòng(stream)xuấtchuẩnC/C++
được định nghĩatrongthư việniostream.hKhi
ò
ệ
ì
ò
ệ
d
ò
n
g
l
ệ
nh thưcthith
ì
d
ò
n
g
l
ệ
nh Hello Word!
đượcxuất ra màn hình
getch()
:
dùng
để
chờ
nhập
một
ký
tự
từ
bàn
−
getch()
:
dùng
để
chờ
nhập
một
ký
tự
từ
bàn
phím.
−
return
0
:
lệnh
kết
thúc
hàm
main
trả
về
mã
đi
11
return
0
:
lệnh
kết
thúc
hàm
main
trả
về
mã
đi
sau nó.
5 Các chú thích
5
.
Các
chú
thích
Cá
hú
thí h
đượ
á
lậ
tì h
iê
ử
Cá
cc
hú
thí
c
h
đượ
cc
á
c
lậ
p
t
r
ì
n
h
v
iê
ns
ử
dụng để ghi chú hay mô tả trong các
hầ
ủ
h
tì h
p
hầ
nc
ủ
ac
h
uon
g
t
r
ì
n
h
.
Trong C/C++ có hai cách để chú thích:
Chú thích dòng: dùng cậpdấu //.
Chú
thích
khối
(chú
thích
trên
nhiều
Chú
thích
khối
(chú
thích
trên
nhiều
dòng) dùng cặp /* */.
12
5 Các chú thích
5
.
Các
chú
thích
/
*
My second program in C/C++ with more comments
/
My
second
program
in
C/C++
with
more
comments
Author: Novice programmer
Date: 01/01/2008
*/
#include <conio.h>
#include <iostream h>
#include
<iostream
.
h>
int main()
{
cout << "Hello World! "; // output Hello World!
cout << "I hate C/C++."; // output I hate C/C++.
getch();
13
getch();
return 0;
}
6. Cấu trúc của m
ộ
t chươn
g
trình
ộ g
C/C++
Cấutrúcmộtchương trình C/C++ gồm: các
Cấu
trúc
một
chương
trình
C/C++
gồm:
các
tiền xử lý, khai báo biến toàn cục, hàm main…
14
6. Cấu trúc của m
ộ
t chươn
g
trình
ộ g
C/C++
15
7Cáctậptinthư viện thông dụng
7
.
Các
tập
tin
thư
viện
thông
dụng
Đây
là
các
tập
tin
chứa
định
nghĩa
các
Đây
là
các
tập
tin
chứa
định
nghĩa
các
hàm thông dụng khi lập trình C/C++.
Muốn
sử
dụng
các
hàm
trong
các
tập
tin
Muốn
sử
dụng
các
hàm
trong
các
tập
tin
header này thì phải khai báo #include
<FileName
.
h>
ở
phần
đầu
của
chương
trình,
với
<FileName
.
h>
ở
phần
đầu
của
chương
trình,
với
FileName.h là tên tậptinthư viện.
16
7Cáctậptinthư viện thông dụng
7
.
Các
tập
tin
thư
viện
thông
dụng
Các
tập
tin
thư
viện
thông
dụng
gồm
:
Các
tập
tin
thư
viện
thông
dụng
gồm
:
•
Stdio.h(C), iostream.h(C++):
định nghĩa
các
hàm
vào
ra
chuẩn
như
các
hàm
xuất
dữ
các
hàm
vào
ra
chuẩn
như
các
hàm
xuất
dữ
liệu (printf())/cout), nhậpgiátrị cho biến
(scanf())/cin),
nhận
ký
tự
từ
bàn
phím
(scanf())/cin),
nhận
ký
tự
từ
bàn
phím
(getc()), in ký tự ramànhình(putc()),nhập
mộtchuỗikýtự từ bàm phím (gets()), xuất
ỗ
chu
ỗ
ikýt
ự
ra màn hình (puts())
•
Conio.h
: định nghĩacáchàmvàoratrong
ế
ộ
17
ch
ế
đ
ộ
DOS, nh
ư
clrscr(),
g
etch(), …
7Cáctậptinthư viện thông dụng
7
.
Các
tập
tin
thư
viện
thông
dụng
math
h
:
Định
nghĩa
các
hàm
toán
học
như
:
•
math
.
h
:
Định
nghĩa
các
hàm
toán
học
như
:
abs(), sqrt(), log(), log10(), sin(), cos(),
tan()
acos()
asin()
atan()
pow()
exp()
tan()
,
acos()
,
asin()
,
atan()
,
pow()
,
exp()
,…
•
alloc.h:
định nghĩa các hàm vào ra cấpthấp
gồm
các
hàm
open(),
open(),
read(),
gồm
các
hàm
open(),
_
open(),
read(),
_read(), close(), _close(), creat(), _creat(),
creatnew(), eof(), filelength(), lock(), …
18