Thành phần cơ bản của
chương trình
GV. Nguyễn Minh Huy
Nhập mơn lập trình - GV. Nguyễn Minh Huy
1
Nội dung
Giới thiệu ngôn ngữ C.
Biến,, hằng,
Biến
hằng, kiểu dữ liệu
liệu..
Lệnh nhập
nhập,, xuất,
xuất, tính tốn.
tốn.
Nhập mơn lập trình - GV. Nguyễn Minh Huy
2
Nội dung
Giới thiệu ngôn ngữ C.
Biến,, hằng,
Biến
hằng, kiểu dữ liệu
liệu..
Lệnh nhập
nhập,, xuất,
xuất, tính tốn.
tốn.
Nhập mơn lập trình - GV. Nguyễn Minh Huy
3
Giới thiệu ngôn ngữ C
Lịch sử phát triển
triển::
Năm ra đời
đời?
?
Tác giả?
giả?
Tiền thân
thân?
?
Hậu duệ
duệ?
?
Đặc điểm
điểm?
?
Sách tham khảo
khảo?
?
Dennis Ritchie, Brian Kernighan, 1973
K&R C, 1978
Nhập mơn lập trình - GV. Nguyễn Minh Huy
4
Giới thiệu ngơn ngữ C
Cấu trúc chương trình C:
Chương trình
Các phần của chương trình
#include <stdio.h>
#include <math.h>
1. Phần khai báo thư viện.
int a, b, c;
void nhap();
2. Phần khai báo biến
và hàm dùng chung.
void main()
{
}
3. Phần chương trình chính.
void nhap()
{
}
4. Phần cài đặt các hàm dùng chung.
Nhập mơn lập trình - GV. Nguyễn Minh Huy
5
Giới thiệu ngôn ngữ C
Các ký tự sử dụng trong chương trình C:
Bảng chữ cái Latin
A Z, a z
Bộ chữ số thập phân
09
Phép toán số học
+, -, *, /, %, =, (, )
Phép toán so sánh
>, <, >=, <=, ==, !=
Phép toán logic
!, &&, ||
Phép toán trên bit
&, |, >>, <<
Ký tự đặc biệt
#, {, }, ;, ., ->, :
Dấu gạch dưới, khoảng trắng
_, ‘ ‘
Nhập môn lập trình - GV. Nguyễn Minh Huy
6
Giới thiệu ngôn ngữ C
Câu lệnh và khối lệnh
lệnh::
Câu lệnh
lệnh::
Chỉ thị ra lệnh
lệnh..
Yêu cầu máy tính thực hiện
hiện..
Kết thúc bằng dấu chấm phẩy ;.
Trình biên dịch bỏ qua dấu cách
và xuống dòng chen ngang
ngang..
void main
main()
()
{
int a, b, cc;;
a = 100;
100;
b=
a/
2;
Khối lệnh
lệnh::
Gồm nhiều câu lệnh liên tiếp nhau
nhau..
Bao giữa dấu ngoặc { }.
Câu lệnh phức hợp
hợp..
Hàm main là khối lệnh khổng lồ.
lồ.
{
Nhập mơn lập trình - GV. Nguyễn Minh Huy
b = b + 5;
c = a * b;
}
printf(“%d”,
printf
(“%d”, a, b)
b);;
}
7
Giới thiệu ngơn ngữ C
Câu chú thích
thích::
Ghi chú
chú,, giải thích chương trình
trình..
Trình biên dịch bỏ qua khi dịch
dịch..
Làm rõ nghĩa chương trình
trình..
Khơng ảnh hưởng tính tốn.
tốn.
Bao giữa dấu /* và */ ((trong
trong C).
Bắt đầu bằng dấu // ((trong
trong C++).
Nhập mơn lập trình - GV. Nguyễn Minh Huy
/* Chương trình tính
cường độ dịng điện
*/
void main()
{
int U, I, R;
// Tính CĐDĐ
I = U / R;
}
8
Nội dung
Giới thiệu ngôn ngữ C.
Biến,, hằng,
Biến
hằng, kiểu dữ liệu.
liệu.
Lệnh nhập
nhập,, xuất,
xuất, tính tốn.
tốn.
Nhập mơn lập trình - GV. Nguyễn Minh Huy
9
Biến,, hằng,
Biến
hằng, kiểu dữ liệu
Biến và hằng
hằng::
Những ký hiệu chứa giá trị.
trị.
Dùng để nhập
nhập,, xuất,
xuất, tính tốn.
tốn.
Biến
Biến:: giá trị có thể thay đổi
đổi..
Hằng
Hằng:: giá trị khơng đổi
đổi..
Giai thừa N
Kết quả S = 1
N>1
đúng
sai
S=S*N
N=N-1
S
Nhập mơn lập trình - GV. Nguyễn Minh Huy
10
Biến,, hằng,
Biến
hằng, kiểu dữ liệu
Khai báo biến và hằng
hằng::
Đặt tên cho biến và hằng
hằng..
Phải khai báo tất cả biến
biến,, hằng trước khi dùng
dùng!!
Câu lệnh khai báo biến trong C:
liệu>
> <
tên biến>;
biến>;
int a, b, tuoi;
tuoi;
float x, y, diemTB;
diemTB;
Câu lệnh khai báo hằng trong C:
const
liệu>
> <
tên hằng>
hằng> = <
giá trị>;
trị>;
#define
hằng>
> <
giá trị>
trị>
const float PI = 3.14;
#define NAM_HIEN_TAI
2014
Nhập mơn lập trình - GV. Nguyễn Minh Huy
11
Biến,, hằng,
Biến
hằng, kiểu dữ liệu
Quy tắc đặt tên biến và hằng trong C:
Các ký tự được phép sử dụng
dụng::
A Z, a z, 0 9.
Dấu gạch dưới ‘_’.
Ký tự đầu tiên không được là số!
số!
Không được trùng các từ khóa
khóa::
while, if, new, delete, goto
goto,, int,
int, float, namespace, return,
Nên đặt tên có nghĩa
nghĩa!!
int
float
char
int
a , b;
diem1,, diem2
diem1
diem2;;
_ky_tu123;;
_ky_tu123
123so,, new
123so
new;;
Nhập mơn lập trình - GV. Nguyễn Minh Huy
// Tên hợp lệ,
lệ, khơng có nghĩa
nghĩa..
// Tên hợp lệ,
lệ, có nghĩa
nghĩa..
// Tên hợp lệ,
lệ, có nghĩa
nghĩa..
// Tên KHƠNG hợp lệ.
lệ.
12
Biến,, hằng,
Biến
hằng, kiểu dữ liệu
Kiểu dữ liệu
liệu::
Điều gì xảy ra trong máy khi khai báo biến và hằng
hằng?
?
Một vùng nhớ được cấp phát và đặt tên.
tên.
int a;
0010 1101 1010 0111
Vùng nhớ a:
char kytu
kytu;;
Vùng nhớ kytu
kytu:: 0010 1101
Bộ nhớ máy tính
Kích thước vùng nhớ
nhớ?
?
Giá trị chứa trong vùng nhớ
nhớ?
?
Do kiểu dữ liệu quyết định
định..
Nhập mơn lập trình - GV. Nguyễn Minh Huy
13
Biến,, hằng,
Biến
hằng, kiểu dữ liệu
Các kiểu dữ liệu cơ sở trong C:
Kiểu dữ liệu
Ý nghĩa
Kích thước Miền giá trị
int
unsigned int
Số nguyên đơn
4 bytes
-2147483648.. 2147483647
0.. 4,294,967,295
long
unsigned long
Số nguyên kép
8 bytes
–9,223,372,036,854,775,808..
9,223,372,036,854,775,807
0..18,446,744,073,709,551,615
short
unsigned short
Số nguyên ngắn
2 bytes
-32768..32767
float
Số thực chính xác đơn 4 bytes
3.4E +- 1038
(7 chữ số thập phân)
double
Số thực chính xác kép
8 bytes
1.7E +- 10308
(15 chữ số thập phân)
char
Ký tự
1 byte
-128..127
bool
Logic
1 byte
true, false
Nhập mơn lập trình - GV. Nguyễn Minh Huy
14
Nội dung
Giới thiệu ngôn ngữ C.
Biến,, hằng,
Biến
hằng, kiểu dữ liệu
liệu..
Lệnh nhập,
nhập, xuất,
xuất, tính tốn.
tốn.
Nhập mơn lập trình - GV. Nguyễn Minh Huy
15
Lập nhập
nhập,, xuất,
xuất, tính tốn
Lệnh nhập trong C:
Thư viện
viện:: #include
stdio.h>
> ((st
stan
and
dard input/
nput/o
output).
Cú pháp
pháp::
scanf(“<
scanf
(“<Định
Định dạng kiểu
kiểu>”[,
>”[, &bien1, &bien2, ]);
Định dạng kiểu
kiểu::
Xác định kiểu dữ liệu cho biến cần nhập
nhập..
Định dạng kiểu
Ý nghĩa
%d, %ld
Số nguyên có dấu: int, long, short
%f, %lf
Số thực: float, double
%u
Số nguyên không dấu: unsigned int/long/short
%c
Ký tự: char
%s
Chuỗi ký tự: char [ ], char *
Nhập môn lập trình - GV. Nguyễn Minh Huy
16
Lệnh nhập
nhập,, xuất,
xuất, tính tốn
Lệnh nhập trong C:
#include <stdio.h>
stdio.h>
void main
main()
()
{
int a, b, c;
float diem;
char kytu
kytu;;
char ten[30];
scanf(“%d”, &a);
scanf(“%d”,
scanf(“%d
scanf
(“%d %d”, &b, &c);
scanf(“%f”,
scanf
(“%f”, &diem);
scanf(“%c”,
scanf
(“%c”, &kytu
&kytu);
);
scanf(“%s”,
scanf
(“%s”, &ten);
// Nhập số nguyên a.
// Nhập 2 số nguyên b, c.
// Nhập số thực diem.
// Nhập ký tự.
tự.
// Nhập tên.
tên.
}
Nhập mơn lập trình - GV. Nguyễn Minh Huy
17
Lệnh nhập
nhập,, xuất,
xuất, tính tốn
Lệnh xuất trong C:
Thư viện
viện:: #include
stdio.h>
> ((st
stan
and
dard input/
nput/o
output)
Cú pháp
pháp::
printf(“<
printf
(“<Định
Định dạng xuất
xuất>”[,
>”[, biến 1, biến 2, ]);
Định dạng xuất
xuất::
Cách trình bày thơng tin cần xuất
xuất..
Bao gồm
gồm::
Chuỗi ký tự cần xuất
xuất..
Định dạng kiểu
kiểu:: xác định kiểu dữ liệu cho biến cần xuất
xuất..
Ký tự điều khiển
khiển..
Nhập môn lập trình - GV. Nguyễn Minh Huy
18
Lệnh nhập
nhập,, xuất,
xuất, tính tốn
Lệnh xuất trong C:
Ký tự điều khiển
khiển::
Xuất ra màn hình các ký tự đặc biệt
biệt..
Ký tự điều khiển
Ý nghĩa
\a
Tiếng chng
\b
Lùi một bước
\n
Xuống dịng
\t
Ký tự tab
\\
Dấu ‘\’
\”
Dấu nháy kép ‘“’
Nhập mơn lập trình - GV. Nguyễn Minh Huy
19
Lệnh nhập
nhập,, xuất,
xuất, tính tốn
Lệnh xuất trong C:
Định dạng số nguyên
nguyên:: %
%n
nd
int a = 123;
printf(“
printf
(“Gia
Gia tri a = %d”, a);
printf(“
printf
(“Gia
Gia tri a = %5d”, a);
// Xuất Gia tri a =
// Xuất Gia tri a =
1 2 3
1 2 3
Định dạng số thực
thực:: %
%n.k
n.kff
float x = 15.62;
printf(“
printf
(“Gia
Gia tri x = %f”, x);
// Xuất Gia trị x =
printf(“
printf
(“Gia
Gia tri x = %7.3f”, x); // Xuất Gia tri x =
Nhập mơn lập trình - GV. Nguyễn Minh Huy
1 5 . 6 2
1 5 . 6 2 0
20