Cấu trúc lựa chọn
Câu lệnh if
Câu lệnh if – else
Câu lệnh với nhiều lệnh if
Câu lệnh if lồng nhau
Câu lệnh switch.
Vòng lặp
Vòng lặp „for‟ trong C
Toán tử „phẩy‟
Vòng lặp lồng nhau
Vòng lặp „while‟ và vòng lặp „do-while‟
Lệnh nhẩy
Các lệnh „break‟, „continue‟ và „goto‟
Hàm „exit()‟.
Các cấu trúc lựa chọn cho phép chúng ta thay đổi luồng
chương trình. Dựa trên một điều kiện nào đó, một câu lệnh hay
một chuỗi các câu lệnh có thể được thực hiện hoặc không.
Hầu hết các ngôn ngữ lập trình đều sử dụng lệnh if để đưa ra
điều kiện. Nguyên tắc thực hiện như sau nếu điều kiện đưa ra
là đúng (true), chương trình sẽ thực hiện một công việc nào đó,
nếu điều kiện đưa ra là sai (false), chương trình sẽ thực hiện
một công việc khác.
126 trang |
Chia sẻ: candy98 | Lượt xem: 578 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Nhập môn tin học - Chương 4: Các cấu trúc điều khiển - Đào Nam Anh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
NHẬP MÔN TIN HỌC
CÁC CẤU TRÚC ĐIỀU KHIỂN
TS Đào Nam Anh
Tài liệu
Slides do TS.Đào Nam Anh thực hiện dựa trên
tài liệu [1] và các mã nguồn [2]:
1. TS.Nguyễn Thị Thu Hà,
TS.Nguyễn Hữu Quỳnh,
TS.Nguyễn Thị Thanh Tân,
Giáo trình Nhập môn tin học,
Khoa CNTT, Đại học Điện lực, 2013
2. Programiz.com
CNTT Nhập môn tin học 2
Nội dung
CÁC CẤU TRÚC ĐIỀU KHIỂN
U C A N
NG P
C NH Y
CNTT Nhập môn tin học 3
CÁC CẤU TRÚC ĐIỀU KHIỂN
GIỚI THIỆU
Cấu trúc lựa chọn
Câu lệnh if
Câu lệnh if – else
Câu lệnh với nhiều lệnh if
Câu lệnh if lồng nhau
Câu lệnh switch.
Vòng lặp
Vòng lặp „for‟ trong C
Toán tử „phẩy‟
Vòng lặp lồng nhau
Vòng lặp „while‟ và vòng lặp „do-while‟
Lệnh nhẩy
Các lệnh „break‟, „continue‟ và „goto‟
Hàm „exit()‟.
4
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Các cấu trúc lựa chọn cho phép chúng ta thay đổi luồng
chương trình. Dựa trên một điều kiện nào đó, một câu lệnh hay
một chuỗi các câu lệnh có thể được thực hiện hoặc không.
Hầu hết các ngôn ngữ lập trình đều sử dụng lệnh if để đưa ra
điều kiện. Nguyên tắc thực hiện như sau nếu điều kiện đưa ra
là đúng (true), chương trình sẽ thực hiện một công việc nào đó,
nếu điều kiện đưa ra là sai (false), chương trình sẽ thực hiện
một công việc khác.
5 CNTT Nhập môn tin học
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ :
Để xác định một số là số
n hay số lẻ, ta thực hiện như sau:
1. Nhập vào một số.
2. Chia số đó cho 2 để xác định số dư.
3. Nếu số dư của phép chia là 0, đó là số “Chẵn”
HOẶC nếu số dư của phép chia khác 0, đó là số “Lẻ”.
Bước 2 trong giải thuật trên kiểm tra phần dư của số đó khi chia
cho 2 có bằng 0 không? Nếu đúng, ta thực hiện việc hiển thị
thông báo đó là số chẵn. Nếu số dư đó khác 0, ta thực hiện việc
hiển thị thông báo đó là số lẻ.
6 CNTT Nhập môn tin học
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Trong C một điều kiện được coi là đúng (true) khi nó có giá trị
khác 0, là sai (false) khi nó có giá trị bằng 0.
C cung cấp hai dạng câu lệnh lựa chọn:
Câu lệnh if
Câu lệnh switch
Sau đây chúng ta hãy tìm hiểu hai câu lệnh lựa chọn này.
7 CNTT Nhập môn tin học
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Câu lệnh if
Câu lệnh if cho phép ta đưa
ra các quyết định dựa trên
việc kiểm tra một điều kiện
nào đó là đúng (true) hay sai
(false).
Sơ đồ quy trình thực hiện
của câu lệnh if. Khi xét điều
kiện, nếu điều kiện trong
trường hợp đúng công việc
sẽ được thực hiện, còn nếu
điều kiện sai, chương trình
sẽ không thực hiện gì cả.
8
Điều kiện
Công việc
Nếu điều kiện đúng
Nếu điều kiện sai
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Dạng tổng quát của câu lệnh if:
if (biểu thức)
Các câu lệnh;
Biểu thức phải luôn được đặt trong cặp dấu ngoặc (). Mệnh đề
theo sau từ khoá if là một điều kiện (hoặc một biểu thức điều
kiện) cần được kiểm tra. Tiếp đến là một lệnh hay một tập các
lệnh sẽ được thực thi khi điều kiện (hoặc biểu thức điều kiện)
có kết quả true.
9 CNTT Nhập môn tin học
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ:
#include
void main()
{
int a = 10, b = 2, max;
if (a > b){
max = a ;
printf(“The max value is: %d”, max) ;
}
}
10 CNTT Nhập môn tin học
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ:
#include
void main()
{
int a = 10, b = 2, max;
if (a > b){
max = a ;
printf(“The max value is: %d”, max) ;
}
}
11 CNTT Nhập môn tin học
Với a được gán giá trị
10, b được gán giá trị
2, biểu thức điều kiện
(a>b) có giá trị đúng.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ:
#include
void main()
{
int a = 10, b = 2, max;
if (a > b){
max = a ;
printf(“The max value is: %d”, max) ;
}
}
12 CNTT Nhập môn tin học
Với a được gán giá trị
10, b được gán giá trị
2, biểu thức điều kiện
(a>b) có giá trị đúng.
Do đó khối lệnh gắn
với biểu thức if được
thực thi và kết quả của
chương trình như sau:
The max value is: 10
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ:
#include
void main()
{
int a = 10, b = 2, max;
if (a > b){
max = a ;
printf(“The max value is: %d”, max) ;
}
}
13 CNTT Nhập môn tin học
Khối lệnh sau lệnh if được
đặt trong cặp ngoặc nhọn
{}. Khi có nhiều lệnh cần
được thực hiện, các câu
lệnh đó được coi như một
khối lệnh (block) và phải
được đặt trong cặp dấu {}.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ:
#include
void main()
{
int a = 10, b = 2, max;
if (a > b)
max = a ;
}
14 CNTT Nhập môn tin học
Khối lệnh sau lệnh if được
đặt trong cặp ngoặc nhọn
{}. Khi có nhiều lệnh cần
được thực hiện, các câu
lệnh đó được coi như một
khối lệnh (block) và phải
được đặt trong cặp dấu {}.
Nếu trong ví dụ trên ta
không đưa vào dấu ngoặc
nhọn ở câu lệnh if, chỉ có
câu lệnh đầu tiên (max = a)
được thực hiện khi điều
kiện trong câu lệnh if là
đúng.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ:
#include
void main()
{
int a = 10, b = 2, max;
if (a > b && (a>3 || b<5))
max = a ;
}
15 CNTT Nhập môn tin học
Nếu có nhiều biểu thức điều
kiện cần kiểm tra, tùy vào
trường hợp ta kết hợp các biểu
thức dưới dạng phép (AND)
ký hiệu
&&, phép (OR) ký
hiệu
||.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
16 CNTT Nhập môn tin học
Ví dụ: kiểm tra một năm có phải
là năm nhuận hay không.
Năm nhuận là năm chia hết cho 4
hoặc 400 nhưng không chia hết
cho 100.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
#include
void main()
{
int y;
printf(“\nPlease enter a year:”);
scanf(“%d”, &y);
if (y% 4 == 0 && y % 100 != 0
|| y % 400 == 0)
printf(“\n%d is a leap year!”, y);
getch();
}
17 CNTT Nhập môn tin học
Ví dụ: kiểm tra một năm có phải
là năm nhuận hay không.
Năm nhuận là năm chia hết cho 4
hoặc 400 nhưng không chia hết
cho 100.
Chúng ta sử dụng lệnh if để kiểm
tra điều kiện.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
#include
void main()
{
int y;
printf(“\nPlease enter a year:”);
scanf(“%d”, &y);
if (y% 4 == 0 && y % 100 != 0
|| y % 400 == 0)
printf(“\n%d is a leap year!”, y);
getch();
}
18 CNTT Nhập môn tin học
Ví dụ: kiểm tra một năm có
phải là năm nhuận hay không.
Năm nhuận là năm chia hết
cho 4 hoặc 400 nhưng không
chia hết cho 100.
Chúng ta sử dụng lệnh if để
kiểm tra điều kiện.
Chương trình trên cho ra kết
quả như sau:
Please enter a year: 2012
2012 is a leap year!
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
#include
void main()
{
int y;
printf(“\nPlease enter a year:”);
scanf(“%d”, &y);
if (y% 4 == 0 && y % 100 != 0
|| y % 400 == 0)
printf(“\n%d is a leap year!”, y);
getch();
}
19 CNTT Nhập môn tin học
Điều kiện
year % 4 == 0 &&
year % 100 != 0 ||
year % 400 == 0
trả về giá trị 1 nếu năm đó là
năm nhuận.
Khi đó, chương trình hiển thị
thông báo gồm biến year và dòng
chữ “is a leap year”.
Nếu điều kiện trên không thỏa
mãn, chương trình không hiển thị
thông báo nào.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Câu lệnh if...then...else
Ở trên ta đã biết dạng
đơn giản nhất của câu
lệnh if, cho phép ta lựa
chọn để thực hiện hay
không một câu lệnh hoặc
một chuỗi các lệnh.
C cũng cho phép ta lựa
chọn trong hai khối lệnh
để thực hiện bằng cách
dùng cấu trúc if – else
như sau:
20
Điều kiện Công việc 2
Nếu điều kiện
đúng
Công việc 1
Nếu điều kiện sai
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Cú pháp câu lệnh rẽ nhánh
dạng này được mô tả như
sau:
if (biểu thức)
câu_lệnh_1;
else
câu_lệnh_2;
21 CNTT
Điều kiện Công việc 2
Nếu điều kiện
đúng
Công việc 1
Nếu điều kiện sai
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Cú pháp câu lệnh rẽ nhánh
dạng này được mô tả như
sau:
if (biểu thức)
câu_lệnh_1;
else
câu_lệnh_2;
22 CNTT Nhập môn tin học
Nếu biểu thức có giá trị đúng
(khác 0) thì câu lệnh 1 được
thực hiện.
Nếu sai (bằng 0), câu lệnh 2
được thực hiện.
Khi có nhiều lệnh cần được
thực hiện, các câu lệnh đó
được coi như một khối lệnh
(block) và phải được đặt
trong cặp dấu {}.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ:
#include
void main()
{
int a = 10, b = 2, max;
if (a > b)
max = a ;
}
23 CNTT Nhập môn tin học
Trở lại đoạn mã trong ví ở
trên, dễ dàng nhận thấy
biến max chỉ được gán giá
trị khi a > b.
Trong trường hợp ngược
lại, sẽ không có thông báo
nào được sinh ra hay nói
một cách khác là đoạn mã
này chưa thực hiện được
yêu cầu tìm số lớn nhất
trong 2 số a và b bất kỳ.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Ví dụ:
#include
void main()
{
int a = 10, b = 2, max;
printf(“Input a = ” ) ;
scanf(“%d”, &a);
printf(“Input b = ” ) ;
scanf(“%d”, &b ) ;
if (a > b)
max = a;
else
max = b;
printf(“The max value is: %d”, max);
}
24
Trở lại đoạn mã trong ví ở
trên, dễ dàng nhận thấy
biến max chỉ được gán giá
trị khi a > b.
Trong trường hợp ngược
lại, sẽ không có thông báo
nào được sinh ra hay nói
một cách khác là đoạn mã
này chưa thực hiện được
yêu cầu tìm số lớn nhất
trong 2 số a và b bất kỳ.
Điều đó được khắc phục
rất đơn giản bằng cấu trúc
if-else
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
#include
void main()
{
int y;
printf(“\nPlease enter a year:”);
scanf(“%d”, &y);
if (y% 4 == 0 && y % 100 != 0
|| y % 400 == 0)
printf(“\n%d is a leap year!”, y);
getch();
}
25 CNTT Nhập môn tin học
Đoạn mã này chỉ hiển thị
thông báo “is a leap year” ra
màn hình nếu là năm nhuận.
Trong trường hợp ngược lại,
nếu năm nhập vào không phải
là năm nhuận, sẽ không có bất
kỳ thông báo nào được in ra.
Điều này có thể gây ra sự hiểu
lầm và đôi chút khó chịu cho
người sử dụng.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
#include
void main()
{
int y;
printf(“\nPlease enter a year:”);
scanf(“%d”, &y);
if (y% 4 == 0 && y % 100 != 0
|| y % 400 == 0)
printf(“\n%d is a leap year!”, y);
else
printf(“\n%d is not a leap year!”, y);
getch();
}
26
Đoạn mã này chỉ hiển thị
thông báo “is a leap year” ra
màn hình nếu là năm nhuận.
Trong trường hợp ngược lại,
nếu năm nhập vào không phải
là năm nhuận, sẽ không có bất
kỳ thông báo nào được in ra.
Điều này có thể gây ra sự hiểu
lầm và đôi chút khó chịu cho
người sử dụng.
Để khắc phục điều này, thay vì
sử dụng cấu trúc if đơn giản, ta
sử dụng cấu trúc if-else
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
27
Ví dụ: đổi một ký tự hoa thành
ký tự thường.
Nếu ký tự không phải là một
ký tự hoa, nó sẽ được in ra mà
không cần thay đổi.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
/* Convert upper case to lower case*/
#include
void main()
{
char c;
printf(“Please enter a character: ”);
scanf(“%c”, &c);
if (c >= „A‟ && c <= „Z‟)
printf(“haracter Converted: %c”,
c + „a‟ – „A‟);
else
printf(“Character Entered: %c”, c);
}
28
Ví dụ: đổi một ký tự hoa thành
ký tự thường.
Nếu ký tự không phải là một
ký tự hoa, nó sẽ được in ra mà
không cần thay đổi.
Chương trình sử dụng cấu trúc
if-else để kiểm tra xem một ký
tự có phải là ký tự hoa không,
rồi thực hiện các thao tác
tương ứng.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
/* Convert upper case to lower case*/
#include
void main()
{
char c;
printf(“Please enter a character: ”);
scanf(“%c”, &c);
if (c >= „A‟ && c <= „Z‟)
printf(“haracter Converted: %c”,
c + „a‟ – „A‟);
else
printf(“Character Entered: %c”, c);
}
29
Biểu thức c >= ‘A’ && c <=
‘Z’ kiểm tra ký tự nhập vào có
là ký tự hoa không.
Nếu biểu thức trả về true, ký
tự đó sẽ đổi thành ký tự
thường bằng biểu thức c + ‘a’
– ‘A’, và được in ra màn hình
qua hàm printf().
Nếu giá trị của biểu thức là
false, câu lệnh sau else được
chạy và chương trình hiển thị
tự đó ra màn hình mà
không cần thực hiện bất cứ sự
thay đổi nào.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Nhiều lựa chọn các câu lệnh if...then...else
Câu lệnh if cho phép ta lựa chọn thực hiện một hành động nào
đó hay không.
Câu lệnh if – else cho phép ta lựa chọn thực hiện giữa hai hành
động.
C cho phép ta có thể đưa ra nhiều lựa chọn hơn. Chúng ta mở
rộng cấu trúc if – else bằng cách thêm vào cấu trúc else – if để
thực hiện điều đó. Nghĩa là mệnh đề else trong một câu lệnh if
– else lại chứa một câu lệnh if – else khác. Do đó nhiều điều
kiện hơn được kiểm tra và tạo ra nhiều lựa chọn hơn.
30 CNTT Nhập môn tin học
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Nhiều lựa chọn các câu lệnh if...then...else
Câu lệnh if cho phép ta lựa chọn thực hiện một hành động nào
đó hay không.
Câu lệnh if – else cho phép ta lựa chọn thực hiện giữa hai hành
động.
C cho phép ta có thể đưa ra nhiều lựa chọn hơn. Chúng ta mở
rộng cấu trúc if – else bằng cách thêm vào cấu trúc else – if để
thực hiện điều đó. Nghĩa là mệnh đề else trong một câu lệnh if
– else lại chứa một câu lệnh if – else khác. Do đó nhiều điều
kiện hơn được kiểm tra và tạo ra nhiều lựa chọn hơn.
31 CNTT Nhập môn tin học
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Nhiều lựa chọn các câu lệnh if...then...else
Cú pháp tổng quát trong trường hợp này như sau:
if (biểu thức) câu_lệnh;
else
if (biểu thức) câu_lệnh;
else câu_lệnh;
32 CNTT Nhập môn tin học
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
Nhiều lựa chọn các câu lệnh if...then...else
Cú pháp tổng quát
if (biểu thức) câu_lệnh;
else
if (biểu thức) câu_lệnh;
else câu_lệnh;
Cách canh lề (lùi vào trong) như trên giúp ta nhìn chương trình
một cách dễ dàng khi có một hoặc hai lệnh if.
Tuy nhiên khi có nhiều lệnh if hơn cách viết đó dễ gây ra
nhầm lẫn vì nhiều câu lệnh sẽ phải lùi vào quá sâu. Vì vậy,
lệnh if-else-if thường được canh lề theo dạng hình bên phải:
33
if (biểu thức)
câu_lệnh;
else if (biểu thức)
câu_lệnh;
else if (biểu thức)
câu_lệnh;
. . .
else
câu_lệnh;
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N #include #include
int main()
{
char choice;
printf("Enter a choice: " ) ;
scanf("%c", &choice);
printf("\nChoice :%c", choice);
if (choice == '+')
printf("\nChoice Addition");
else if (choice == '-')
printf("\nChoice Subtraction");
else if (choice == '*')
printf("\nChoice Multiplication");
else if (choice == '/')
printf("\nChoice Division");
else
printf("\nInvalid Choice!");
getch();
return 0;
}
34
Ví dụ sau đây cho phép người
dùng nhập một
tự tương
ứng với một phép toán bất kỳ
từ bàn phím.
Xuất ra các thông báo tương
ứng với mỗi phép toán được
nhập.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N #include #include
int main()
{
char choice;
printf("Enter a choice: " ) ;
scanf("%c", &choice);
printf("\nChoice :%c", choice);
if (choice == '+')
printf("\nChoice Addition");
else if (choice == '-')
printf("\nChoice Subtraction");
else if (choice == '*')
printf("\nChoice Multiplication");
else if (choice == '/')
printf("\nChoice Division");
else
printf("\nInvalid Choice!");
getch();
return 0;
}
35
Trong chương trình trên,
Nếu
tự nhập là dấu (+), chương
trình sẽ in ra dòng thông báo
“Choice Addition ”.
Nếu là dấu (-), chương trình sẽ in ra
dòng thông báo “Choice
Subtraction”.
Nếu là dấu (*) chương trình sẽ in ra
dòng thông báo “Choice
Multiplication”.
Nếu là dấu (/) chương trình sẽ in ra
dòng thông báo “Choice Division”.
Nếu
hiệu nhập vào không phải
phép toán thì in ra thông báo
“Invalid Choice!”;
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N #include #include
int main()
{
char choice;
printf("Enter a choice: " ) ;
scanf("%c", &choice);
printf("\nChoice :%c", choice);
if (choice == '+'){
printf("\nChoice Addition");
result = a + b;
}
else if (choice == '-'){
printf("\nChoice Subtraction");
result = a - b;
}
else if (choice == '*'){
printf("\nChoice Multiplication");
result = a * b;
}
else if (choice == '/'){
printf("\nChoice Division");
result = a / b;
}
getch();
return 0;
}
36
Muốn thực hiện nhiều hơn một
lệnh sau mỗi câu lệnh if hay
else, ta phải đặt các câu lệnh
đó vào trong cặp dấu ngoặc
nhọn {}.
Các câu lệnh đó tạo thành một
nhóm gọi là lệnh phức hay
một khối lệnh.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
if (biểu thức–1)
{
if (biểu thức_2)
câu_lệnh1;
if (biểu thức_3)
câu_lệnh_2;
else
câu_lệnh_3;/* với if (biểu thức_3) */
}
else
câu_lệnh_4; /* với if (biểu thức_1) */
37
Các cấu trúc if lồng nhau
Một cấu trúc if lồng nhau là
một lệnh if được đặt bên trong
một lệnh if hoặc else khác.
Trong C, lệnh else luôn gắn
với lệnh if không có else gần
nó nhất, và nằm trong cùng
một khối lệnh với nó.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
if (biểu thức–1)
{
if (biểu thức_2)
câu_lệnh1;
if (biểu thức_3)
câu_lệnh_2;
else
câu_lệnh_3;/* với if (biểu thức_3) */
}
else
câu_lệnh_4; /* với if (biểu thức_1) */
38
Các cấu trúc if lồng nhau
Trong cấu trúc if ở trên, nếu giá
trị của biểu_thức_1 là true thì
lệnh if thứ hai sẽ được kiểm tra.
Nếu biểu_thức_2 là true thì
lệnh câu_lệnh_1 sẽ được thực
hiện.
Nếu biểu thức_3 là true,
câu_lệnh_2 sẽ được thực hiện,
nếu không câu_lệnh_3 được
thực hiện.
Nếu biểu thức_1 là false thì
câu_lệnh_4 được thực hiện.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
if (điều kiện-1)
if (điều kiện_2)
câu_lệnh_1;
else
câu_lệnh_2;
câu_lệnh_kế_tiếp;
39
Các cấu trúc if lồng nhau
Vì lệnh else trong cấu trúc
else-if là không bắt buộc, nên
có thể có một cấu trúc khác
như dạng bên:
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
if (điều kiện-1)
if (điều kiện_2)
câu_lệnh_1;
else
câu_lệnh_2;
câu_lệnh_kế_tiếp;
40
Các cấu trúc if lồng nhau
Vì lệnh else trong cấu trúc
else-if là không bắt buộc, nên
có thể có một cấu trúc khác
như dạng bên
Trong đoạn mã trên, nếu điều
kiện-1 là true, chương trình sẽ
chuyển đến thực hiện lệnh if
thứ hai và điều kiện-2 được
kiểm tra.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
if (điều kiện-1)
if (điều kiện_2)
câu_lệnh_1;
else
câu_lệnh_2;
câu_lệnh_kế_tiếp;
41
Các cấu trúc if lồng nhau
Nếu điều kiện đó là true,
câu_lệnh_1 được thực hiện,
nếu không câu_lệnh_2 được
thực hiện, sau đó chương trình
thực hiện những lệnh trong
câu lệnh kế tiếp.
Nếu điều kiện_1 là false,
chương trình sẽ chuyển đến
thực hiện những lệnh trong
câu lệnh kế tiếp.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
if (điều kiện-1)
if (điều kiện_2)
câu_lệnh_1;
else
câu_lệnh_2;
câu_lệnh_kế_tiếp;
42
Ví dụ Các cấu trúc if lồng nhau
Viết chương trình phân loại sinh
viên theo điểm tổng kết, cụ thể
như sau:
Loại xuất sắc (Excellent): Điểm
tổng kết 8.5
Loại giỏi (Good): 8.0 Điểm
tổng kết < 8.5
Loại khá (Fair): 6.5 Điểm tổng
kết < 8
Loại trung bình (Normal): 5
Điểm tổng kết < 6.5
Loại yếu (Bad): Điểm tổng kết <
5.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
43
Ví dụ Các cấu trúc if lồng nhau
Viết chương trình phân loại sinh viên
theo điểm tổng kết, cụ thể như sau:
Loại xuất sắc (Excellent): Điểm tổng
kết 8.5
Loại giỏi (Good): 8.0 Điểm tổng
kết < 8.5
Loại khá (Fair): 6.5 Điểm tổng kết
< 8
Loại trung bình (Normal): 5 Điểm
tổng kết < 6.5
Loại yếu (Bad): Điểm tổng kết < 5.
CÁC CẤU TRÚC ĐIỀU KHIỂN
1.
U C A N
44
Ví dụ Các cấu trúc if lồng nhau
Viết chương trình phân loại sinh viên
theo điểm tổng kết, cụ thể như sau:
Loại xuất sắc (Excellent): Điểm tổng
kết 8.5
Loại g