Bài giảng này đề cập đến những nội dung sau: Cấu trúc điều kiện (rẽ nhánh), cấu trúc if, cấu trúc switch, các bước để viết cấu trúc chương trình có điều kiện, chương trình con, biến cục bộ,...và những nội dung liên quan khác. Mời các bạn cùng tham khảo để nắm bắt các nội dung chi tiết.
Trang 1Cấu trúc điều kiện
&
Chương trình con
Nguyễn Đông Hà
Khoa CNTT – ĐH KHTN
Trang 2Cấu trúc điều kiện (rẽ nhánh)
trường hợp việc tính toán trong chương trình
khác
Trang 3Ví dụ 1
Trang 4câu lệnh 1;
câu lệnh 2;
….
} else { câu lệnh 3;
câu lệnh 4;
….
}
if ( điều_kiện ) câu lệnh;
if ( điều_kiện ) {
câu lệnh 1; câu lệnh 2;
….
}
Trang 5Ví dụ 2
7 Tùy theo n = 1, 2, 3, …, 7 hãy in tương ứng
ra màn hình
Trang 6câu lệnh 1;
… (break;) default:
câu lệnh 1;
…
Trang 7Các bước để viết chương trình có
cấu trúc điều kiện
Bước 1: Xác định dữ kiện nhập (dữ kiện có sẵn) và
dữ kiện xuất (dữ kiện cần phải tính và trả lời đáp số)
Bước 2: Chia công việc phải làm theo yêu cầu của đề bài thành các bước đơn giản hơn
Bước 3: Với mỗi bước được chia nhỏ ở bước 2, nếu các công việc phải làm trong bước đó có dùng các từ ngữ “nếu… thì” hay “xét các trường hợp…” thì
chúng ta vẽ cây quyết định để giải quyết từng trường hợp
Bước 4: Chuyển kết quả ở bước 2, bước 3 thành
chương trình C
Trang 8Chương trình con
Trang 9Chương trình con
Khi có một công việc giống nhau cần được thực hiện ở nhiều nơi (tham số vào và kết quả trả về có thể khác nhau)
Khi cần chia một chương trình lớn thành các đơn thể độc lập để chương trình được trong sáng dễ hiểu, dễ quản lý
Trang 10 Hàm void không có giá trị trả về
Các hàm khác trả giá trị về bằng câu lệnh return
Trang 11Chương trình con
Chương trìnhcon (Hàm)
Dữ kiện vào Kết quả trả về
Trang 12Không sử dụng chương trình con
trường hợp 1
/* Các công việc phải thực hiện */
Bước A1 Bước A2 Bước A3
Bước B1 Bước B2 Bước B3 Bước C1 Bước C2
Trang 13Đặc điểm các bước
Trang 14Không sử dụng chương trình con
trường hợp 1
Bước A1 Bước A2 Bước A3
Bước B1 Bước B2 Bước B3
Bước C1 Bước C2 Bước C3
/* Các công việc phải thực hiện trong chương trình */
Trang 15Sử dụng chương trình con
trường hợp 1
HÀM A
Bước A1 Bước A2 Bước A3
HÀM B
Bước B1 Bước B2 Bước B3
HÀM C
Bước C1 Bước C2 Bước C3
Trang 16Không sử dụng chương trình con
trường hợp 2
/* Các công việc phải thực hiện */
Công việc A1 Công việc B1 Công việc C1
Công việc A2 Công việc B2 Công việc C2
Trang 17Đặc điểm các công việc
Trang 18Gọi hàm A với gtrị đầu vào 1
Gọi hàm B với gtrị đầu vào 1
Gọi hàm C với gtrị đầu vào 1
Gọi hàm A với gtrị đầu vào 2
Gọi hàm B với gtrị đầu vào 2
Gọi hàm C với gtrị đầu vào 2
Trang 19Ví dụ
Trang 20Không sử dụng chương trình con
/* Các công việc phải thực hiện */
Trang 21/* Các công việc phải
thực hiện trong hàm void
Trang 22Khai báo chương trình con
kiểu_trả_về tên_hàm(
kiểu_tham_số_1 tên_tham_số_1,
…, kiểu_tham_số_n tên_tham_số_n )
Ví dụ:
void main ()
Trang 23Biến cục bộ
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 24Câu lệnh
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 25Trả kết quả
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 27}
Trang 28Gọi hàm và truyền tham số
/* Thuc hien nhap, tinh, xuat ket qua cho hinh tron 1 */
Trang 30Mã nguồn chương trình ví dụ
/* Ham de nhap ban kinh, gia tri
dau vao la r, ko co gt tra ve */
{
/* Xuat thong bao nhap ban kinh */
/* Nhap ban kinh dua vao bien r */
}
Trang 31Mã nguồn chương trình ví dụ
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 33Mã nguồn chương trình ví dụ
/* Chuong trinh chinh */
{
/* Khai bao bien ban kinh va
dien tich cho 2 hinh tron */
int r1, r2;
float S1, S2;
/* Ham xoa man hinh */
Trang 35Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 36Chạy từng bước chương trình ví dụ
Trang 37Chạy từng bước chương trình ví dụ
/* Chuong trinh chinh */
{
/* Khai bao bien ban kinh va
dien tich cho 2 hinh tron */
int r1, r2;
float S1, S2;
/* Ham xoa man hinh */
Trang 38Chạy từng bước chương trình ví dụ
/* Chuong trinh chinh */
{
/* Khai bao bien ban kinh va
dien tich cho 2 hinh tron */
int r1, r2;
float S1, S2;
/* Ham xoa man hinh */
Trang 41Mã nguồn chương trình ví dụ
/* Ham de nhap ban kinh, gia tri
dau vao la r, ko co gt tra ve */
{
/* Xuat thong bao nhap ban kinh */
/* Nhap ban kinh dua vao bien r */
}
Trang 42Mã nguồn chương trình ví dụ
/* Ham de nhap ban kinh, gia tri
dau vao la r, ko co gt tra ve */
{
/* Xuat thong bao nhap ban kinh */
/* Nhap ban kinh dua vao bien r */
}
Trang 43Mã nguồn chương trình ví dụ
/* Ham de nhap ban kinh, gia tri
dau vao la r, ko co gt tra ve */
{
/* Xuat thong bao nhap ban kinh */
/* Nhap ban kinh dua vao bien r */
}
Trang 46Mã nguồn chương trình ví dụ
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 47Mã nguồn chương trình ví dụ
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 48Mã nguồn chương trình ví dụ
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 54Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 55Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 56Mã nguồn chương trình ví dụ
/* Ham de nhap ban kinh, gia tri
dau vao la r, ko co gt tra ve */
{
/* Xuat thong bao nhap ban kinh */
/* Nhap ban kinh dua vao bien r */
}
Trang 57Mã nguồn chương trình ví dụ
/* Ham de nhap ban kinh, gia tri
dau vao la r, ko co gt tra ve */
{
/* Xuat thong bao nhap ban kinh */
/* Nhap ban kinh dua vao bien r */
}
Trang 58Mã nguồn chương trình ví dụ
/* Ham de nhap ban kinh, gia tri
dau vao la r, ko co gt tra ve */
{
/* Xuat thong bao nhap ban kinh */
/* Nhap ban kinh dua vao bien r */
}
Trang 59Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 60Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 61Mã nguồn chương trình ví dụ
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 62Mã nguồn chương trình ví dụ
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 63Mã nguồn chương trình ví dụ
/*Ham tinh dien tich,gia tri dau vao
la r, gia tri tra ve la dien tich*/
Trang 64Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 65Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 68Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 69Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 70Mã nguồn chương trình ví dụ
/* Thuc hien cho hinh tron 2 */
Trang 71Ghi nhớ
trình trước khi viết code
riêng biệt nào đó