Bài giảng Nhập môn lập trình - Chương 4: Cấu trúc điều khiển - Nguyễn Minh Huy
Cꢀu trúc điꢁu khiꢂn
GV. Nguyꢀn Minh Huy
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
1
Nꢃi dung
ꢀ Biꢄu thꢅc và toán tꢆ trong C.
ꢀ Cꢇu trúc rꢈ nhánh.
ꢀ Cꢇu trúc lꢉp.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
2
Nꢃi dung
ꢀ Biꢂu thꢃc và toán tꢄ trong C.
ꢀ Cꢇu trúc rꢈ nhánh.
ꢀ Cꢇu trúc lꢉp.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
3
Biꢄu thꢅc và toán tꢆ trong C
ꢀ Biꢄu thꢅc trong C:
ꢀ Là mꢃt dãy hꢊu hꢋn các toán hꢋng và toán tꢆ.
a + b – d * c / e
(x >> (p + 1 ꢅ n)) & ~(~0 << n)
ꢀ Toán hꢋng: biꢌn, hꢍng.
ꢀ Toán tꢆ:
ꢁ Toán tꢆ mꢃt ngôi: <phép toán> a ꢂ ~a, !b, ++c.
ꢁ Toán tꢆ hai ngôi: a <phép toán> b ꢂ a + b, x / y.
ꢁ Toán tꢆ ba ngôi: toán tꢆ điꢎu kiꢏn ( ) ? :
ꢀ Kꢌt quꢐ biꢄu thꢅc: mꢃt giá trꢑ sꢒ.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
4
Biꢄu thꢅc và toán tꢆ trong C
ꢀ Toán tꢆ sꢒ hꢓc:
int a = 5 % 3; // Đúng
float x = 5 % 3.0; // Sai
ꢀ Ký hiꢏu: +, ꢂ, *, /, %.
ꢁ % chꢔ dùng vꢕi sꢒ nguyên.
int b = 5 / 3; // Chia nguyên
float y = 5.0 / 3; // Chia thꢗc
ꢁ / kꢌt quꢐ phꢖ thuꢃc toán hꢋng.
ꢀ Toán tꢆ so sánh:
int a = 5 > 3;
int b = 5 == 3; // 0 (false)
int c = 5 != 3; // 1 (true)
// 1 (true)
ꢀ Ký hiꢏu: >, <, >=, <=, ==, !=.
ꢀ Kꢌt quꢐ: 1 (true), 0 (false).
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
5
Biꢄu thꢅc và toán tꢆ trong C
ꢀ Toán tꢆ logic:
ꢀ Ký hiꢏu:
int a = (5 > 3) && (4 > 7); // 0 (false)
int b = (5 > 3) || (4 > 7); // 1 (true)
int c = !(5 == 3); // 1 (true)
ꢁ ! (not), && (and), || (or).
ꢀ Kꢌt nꢒi biꢄu thꢅc so sánh.
ꢀ Kꢌt quꢐ: 1 (true), 0 (false).
ꢀ Toán tꢆ trên bit:
short a = 5 & 6; // 0101 and 0110
short b = 5 | 6; // 0101 or 0110
unsigned short c = ~1; // not 0001
short d = a >> 1;
ꢀ Ký hiꢏu:
ꢁ & (and), | (or), ^ (xor).
ꢁ ~ (bù).
ꢁ >> (dꢑch phꢐi), << (dꢑch trái).
ꢀ Thao tác trên bit dꢊ liꢏu.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
6
Biꢄu thꢅc và toán tꢆ trong C
ꢀ Toán tꢆ tăng, giꢐm:
ꢀ Ký hiꢏu: ++, ꢂꢂ.
int a = 5++;
// Sai
int a = 5;
ꢀ Tăng/giꢐm 1 đơn vꢑ trên biꢌn.
int b = ++a * 4; // b = 24
int c = a++ * 4; // b = 20
ꢁ Tiꢎn tꢒ: tính trưꢕc biꢄu thꢅc.
ꢁ Hꢁu tꢒ: tính sau biꢄu thꢅc.
ꢀ Toán tꢆ gán:
int a = 5;
ꢀ Ký hiꢏu: =, <phép toán>=
int b, c, d;
d = c = b = a; // b = a
// c = b
a <phép toán>= b;
ꢂ a = a <phép toán> b;
// d = c
ꢀ <phép toán>:
ꢁ +, ꢂ, *, /, %,
int e += a;
// e = e + a
int f *= a + 1; // f = f * (a + 1)
ꢁ &, |, ^, >>, <<.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
7
Biꢄu thꢅc và toán tꢆ trong C
ꢀ Đꢃ ưu tiên toán tꢆ:
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
8
Nꢃi dung
ꢀ Biꢄu thꢅc và toán tꢆ trong C.
ꢀ Cꢀu trúc rꢆ nhánh.
ꢀ Cꢇu trúc lꢉp.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
9
Cꢇu trúc rꢈ nhánh
ꢀ Câu lꢏnh ifꢂelse:
ꢀ Cú pháp:
if (<biꢄu thꢅc logic>)
<Lꢏnh 1>;
[else
Mã giꢇ:
Nꢌu <biꢄu thꢅc logic>
sai
<biꢄu thꢅc logic>
đúng
Lꢏnh 1
[Ngưꢘc lꢋi
Lꢏnh 2]
<Lꢏnh 2>;]
Lꢏnh 1
Lꢏnh 2
ꢀ Ví dꢖ:
// Câu lꢏnh ifꢂelse đꢙ
if (n > 0)
// Bꢚ mꢏnh đꢎ else
if (n > 0)
// Dùng khꢒi lꢏnh
if (n > 0)
a = a * 2;
a = a * 2;
{
else
a = a * 2;
a = a / 2;
b = b + 1;
}
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
10
Cꢇu trúc rꢈ nhánh
ꢀ Câu lꢏnh ifꢂelse:
ꢀ Lưu ý:
if n > 0
a = a * 2;
// Sai
ꢁ Biꢄu thꢅc logic phꢐi đꢉt giꢊa ( ).
ꢃ Giá trꢑ 1: true.
if (1)
// Luôn đúng
// Sai
ꢃ Giá trꢑ 0: false.
a = a * 2;
ꢁ ifꢅelse là câu lꢏnh phꢅc.
ꢃ Không có ; sau if hoꢉc else.
ꢁ ifꢅelse có thꢄ lꢛng nhau.
ꢃ else tương ꢅng if gꢜn nhꢇt.
if (n > 0) ;
a = a * 2;
else ;
a = a / 2;
if (n > 0)
if (a > b)
c = c + 1;
// ifꢂelse lꢛng
else
c = c – 1;
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
11
Cꢇu trúc rꢈ nhánh
ꢀ Câu lꢏnh ifꢂelse:
ꢀ ifꢂelse lꢛng nhau, kiꢄm tra điꢎu kiꢏn trên cùng 1 biꢌn:
if (dtb >= 8)
loai = “Gioi”;
if (dtb >= 8)
loai = “Gioi”;
else
else if (dtb >= 6.5)
loai = “Kha”;
else if (dtb >= 5)
if (dtb >= 6.5)
loai = “Kha”;
else
loai = “Trung binh”;
if (dtb >= 5)
else
loai = “Trung binh”;
loai = “Yeu”;
else
loai = “Yeu”;
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
12
Cꢇu trúc rꢈ nhánh
ꢀ Câu lꢏnh switchꢂcase:
ꢀ Cú pháp:
switch (<biꢄu thꢅc>)
// Câu lꢈnh ifꢅelse tương đương
{
if (<biꢄu thꢅc> == <giá trꢑ 1>)
[case <giá trꢑ 1>:
<Lꢏnh 1>;
break;
case <giá trꢑ 2>:
<Lꢏnh 2>;
break;
<Lꢏnh 1>;
else if (<biꢄu thꢅc> == <giá trꢑ 2>)
<Lꢏnh 2>;
ꢉ
else
<Lꢏnh N>;
....]
[default:
<Lꢏnh N>;]
}
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
13
Cꢇu trúc rꢈ nhánh
ꢀ Câu lꢏnh switchꢂcase:
switch (thu)
{
case 1:
printf(“Chu nhat”); break;
case 2:
printf(“Thu hai”); break;
case 3:
printf(“Thu ba”); break;
case 4:
printf(“Thu tu”); break;
case 5:
printf(“Thu nam”); break;
case 6:
printf(“Thu sau”); break;
case 7:
printf(“Thu bay”); break;
}
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
14
Cꢇu trúc rꢈ nhánh
ꢀ Câu lꢏnh switchꢂcase:
ꢀ Lưu ý:
switch a + b // Sai
{
ꢁ Biꢄu thꢅc phꢐi đꢉt giꢊa ( ).
ꢁ Giá trꢑ ꢝ mꢏnh đꢎ case:
ꢃ Giá trꢑ đơn.
ꢞ
}
ꢃ Không là miꢎn giá trꢑ.
ꢁ Câu lꢏnh break:
switch (a + b)
{
ꢃ Ngꢟt giꢊa các case.
ꢃ Có thꢄ bꢚ đꢄ ghép các case.
case > 5: // Sai
ꢞ
}
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
15
Cꢇu trúc rꢈ nhánh
ꢀ Câu lꢏnh switchꢂcase:
switch (thu)
{
case 2:
case 3:
case 4:
case 5:
case 6:
printf(“Ngay lam viec”); break;
case 1:
case 7:
printf(“Ngay nghi”); break;
default:
printf(“Ngay khong ton tai”);
}
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
16
Nꢃi dung
ꢀ Biꢄu thꢅc và toán tꢆ trong C.
ꢀ Cꢇu trúc rꢈ nhánh.
ꢀ Cꢀu trúc lꢊp.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
17
Cꢇu trúc lꢉp
ꢀ Xét chương trình xuꢇt sꢒ:
ꢀ Xuꢇt các sꢒ nguyên tꢠ 1 đꢌn 10.
ꢁ Thꢗc hiꢏn 10 lꢜn lꢏnh xuꢇt.
ꢀ Xuꢇt các sꢒ nguyên tꢠ 1 đꢌn 100.
ꢁ Thꢗc hiꢏn 100 lꢜn lꢏnh xuꢇt!!
ꢃ Dùng lꢏnh lꢉp.
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
18
Cꢇu trúc lꢉp
ꢀ Câu lꢏnh while và doꢂwhile:
ꢀ Cú pháp:
// Câu lꢈnh while
// Câu lꢈnh doꢅwhile
while (<điꢎu kiꢏn lꢉp>)
do
<Lꢏnh>;
{
<Lꢏnh>;
} while (<điꢎu kiꢏn lꢉp>);
// Câu lꢈnh while tương đương
<Lꢏnh>;
while (<điꢎu kiꢏn lꢉp>)
<Lꢏnh>;
Lꢏnh
đúng
đúng
<điꢎu kiꢏn lꢉp>
<điꢎu kiꢏn lꢉp>
sai
Lꢏnh
sai
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
19
Cꢇu trúc lꢉp
ꢀ Câu lꢏnh while và doꢂwhile:
ꢀ Ví dꢖ:
// Câu lꢈnh doꢅwhile
printf(“Nhap vao n = “);
scanf(“%d”, &n);
// Câu lꢈnh while
printf(“Nhap vao n = “);
scanf(“%d”, &n);
i = 1;
i = 1;
do
while (i <= n)
{
{
printf(“%d”, i);
i++;
printf(“%d”, i);
i++;
} while (i <= n);
}
Nhꢁp môn lꢁp trình ꢂ GV. Nguyꢀn Minh Huy
20
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Nhập môn lập trình - Chương 4: Cấu trúc điều khiển - Nguyễn Minh Huy", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_nhap_mon_lap_trinh_chuong_4_cau_truc_dieu_khien_ng.pdf

