CHƯƠNG 2: CÁC CÂU LỆNH RẼ NHÁNH Nội dung Câu lệnh if Câu lệnh switch... Nếu khác tất cả các và trong câu lệnh có default thì máy se nhãy tới câu lệnh có nhãn default, nếu không máy sẽ
Trang 1CHƯƠNG 2: CÁC CÂU LỆNH RẼ NHÁNH Nội dung
Câu lệnh if
Câu lệnh switch
Trang 2Câu lệnh if
Dạng 1
• if(<biểu thức>)
• <lệnh>
• Nếu giá trị của biểu thức là đúng (khác 0) thì sẽ thực hiện <lệnh>, ngược lại sẽ thực hiện câu lệnh đứng sau câu lệnh if
Dạng 2
• if(<biểu thức>)
• <lệnh 1>
• else
• <lệnh 2>
• Nếu giá trị của biểu thức là đúng (khác 0) thì sẽ thực hiện <lệnh1>, ngược
Trang 3• Ví dụ 1: Nhập vào hai số nguyên và in ra số lớn nhất.
• Cách 1: Sử dụng cú pháp 1
• void main()
• {
• int a, b, max;
• <nhập a, b>
• max = a; //Giả sử a là số lớn nhất
• if(b > max)
• max = b;
• <in max>
• }
Trang 4• Cách 2: Sử dụng cú pháp 2
• void main()
• {
• int a, b, max;
• <nhập a, b>
• if(a >b)
• max = a;
• else
• max = b;
• <in max>
• }
Trang 5• Ví dụ 2: Nhập vào ba số nguyên và in ra số lớn nhất.
• Cách 1: Sử dụng cú pháp 1
• void main()
• {
• int a, b, c, max;
• <nhập a, b, c>
• max = a;
• if(b > max)
• max = b;
• if(c > max)
• max = c;
• <in max>
• }
Trang 6• Cách 2: Sử dụng cú pháp 2
• void main()
• {
• int a, b, c, max;
• <nhập a, b, c>
• // Tìm số lớn nhất giữa a va b
• if(a >b)
• max = a;
• else
• max = b;
• // Tìm số lớn nhất giữa max vừa tìm được ở trên và c
• if(c > max)
• max = c;
• <in max>
Trang 7Chú ý: Trong trường hợp có nhiều câu lệnh if else lồng vào nhau thì else sẽ
gắn liền với if gần nhất
if(<bt1>)
<lênh 1>
else // bt1 sai
if(<bt2>)
if(<bt 3>)
<lệnh 2>
else // bt3 sai
<lệnh 3>
else // bt2 sai
<lệnh 4>
Trang 8Câu lệnh switch
• switch (<bt nguyên>)
• {
• case <hằng 1>: <lệnh 1>
• case <hằng 2>: <lệnh 2>
•
• case <hằng n>: <lệnh n>
• [default: <lệnh n+1>]
• }
• Khi gặp câu lệnh này máy sẽ tính giá trị của <bt nguyên>, tùy theo giá trị của <bt nguyên> máy sẽ nhảy tới câu lệnh có nhãn case <hằng i> (i = 1, … , n) tương ứng Nếu <bt nguyên> khác tất cả các <hằng i> và trong câu
lệnh có default thì máy se nhãy tới câu lệnh có nhãn default, nếu không
máy sẽ nhảy ra khỏi câu lệnh switch mà không làm gì Máy cũng ra khỏi
Trang 9• Ví dụ 3: Nhập vào một số nguyên dương n với 1 <= n <= 7 Tùy theo n =
1, 2, …, 7 hãy in ra các từ Sunday, Monday, …, Saturday ra màn hình
• void main()
• { int n;
• <nhập n>
• switch(n)
• { case 1: printf(“Sunday”); break;
• case 2: printf(“Monday”); break;
• case 3: printf(“Tuesday”); break;
• case 4: printf(“Wednesday”); break;
• case 5: printf(“Thursday”); break;
• case 6: printf(“Friday”); break;
• case 7: printf(“Saturday”); break;
• default: printf(“Giá trị không hợp lệ\n”);
• }
• }