1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng ngôn ngữ lập trình c chương 3 GV dương khai phong

30 211 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 30
Dung lượng 202,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ELSENếu Biểu_thức_điều_kiện cho kết quả khác không tức điều Nếu Biểu_thức_điều_kiện cho kết quả khác không tức điềukiện đó là đúng thì thực hiện khối_lệnh_1, ngược lại thực hiện khối_lện

Trang 1

TIN HỌC ĐẠI CƯƠNG

Lý thuyết: 6 buổi Thực hành: 8 buổi

GVHD: Dương Khai Phong Email: khaiphong@gmail.com

Ngôn ngữ lập trình: C

Trang 2

NỘI DUNG CÁC BUỔI HỌC

1. Tổng quan về C (chương 1,2)

2. Các cấu trúc điều khiển trong C (chương 3)

3. Hàm và cấu trúc chương trình (chương 4)

4. Mảng, chuỗi và con trỏ (chương 5)

5. Kiểu cấu trúc, đệ qui, tập tin (chương 6,7,8)

6. Ôn tập

Trang 3

CHƯƠNG 3: CÁC CẤU TRÚC ĐIỀU KHIỂN

1 Câu lệnh , khối lệnh trong C

2 Cấu trúc điều khiển là gì?

3 Cấu trúc điều kiện: IF ELSE

4 Cấu trúc rẽ nhánh: SWITCH CASE

5 Cấu trúc lặp: FOR, WHILE, DO WHILE

6 Cấu trúc điều khiển GOTO

Trang 4

1 CÂU LỆNH , KHỐI LỆNH TRONG C

a Khái niệm về câu lệnh:

Mỗi câu lệnh (code) thực hiện một chức năng nào đó (như lệnhgán, xuất dữ liệu ra màn hình ) Mỗi câu lệnh có thể được viết

trên một dòng hoặc nhiều dòng và được kết thúc bằng dấu chấm

phẩy “;”.

b Khái niệm về khối lệnh:

- Một dãy các câu lệnh được đặt trong cặp dấu ngoặc nhọn {

và } thì được gọi là một khối lệnh.

- Những câu lệnh của một hàm hay một cấu trúc có nhiều lệnhphải được đặt trong dấu { }

Lưu ý:

- Khi muốn ghi chú một câu lệnh ta dùng dấu : // nội dung

- Khi muốn ghi chú một khối lệnh ta dùng dấu : /* nội dung */

Trang 5

2 CẤU TRÚC ĐIỀU KHIỂN TRONG C

a Cấu trúc điều khiển là gì?

Là cách thức cho phép thay đổi trật tự thực hiện các câu lệnh (khối lệnh) do đó máy có thể từ câu lệnh này nhảy tới thực hiện một câu lệnh trước hoặc sau nó.

DO WHILE

Trang 6

3 CẤU TRÚC ĐIỀU KIỆN: IF ELSE

Nếu Biểu_thức_điều_kiện cho

kết quả khác không (tức điều

Nếu Biểu_thức_điều_kiện cho

kết quả khác không (tức điềukiện đó là đúng) thì thực hiện

khối_lệnh_1, ngược lại thực

hiện khối_lệnh_2.

Trang 7

3 CẤU TRÚC ĐIỀU KIỆN: IF ELSE

Một số ví dụ về if:

Ví dụ 1: Nếu tuổi của người nào đó trên 18 tuổi thì xuất

thông báo “Bạn là thanh niên”?

printf (“Ban la thanh nien”);

Nếu khối lệnh sau if chỉ có 1 lệnh thì ta có thể không cần dùng cặp dấu ngoặc nhọn {…}

Trang 8

3 CẤU TRÚC ĐIỀU KIỆN: IF ELSE

Một số ví dụ về if:

Ví dụ 2: Nếu tuổi của người nào đó trên 18 tuổi thì xuất thông báo

“Bạn là thanh niên”, ngược lại “Bạn chưa đủ tuổi”?

Trang 9

3 CẤU TRÚC ĐIỀU KIỆN: IF ELSE

Một số ví dụ về if:

Ví dụ 3: Giải ptb1 ax+b=0 với a,b là số nguyên nhập từ bàn phím

int a,b; float x;

printf (“Cho biet a=”); scanf (“%d”,&a);

printf (“Cho biet b=”); scanf (“%d”,&b);

Trang 10

- Kết quả của biểu thức tính toán

phải là giá trị nguyên, ký tự.

- Các giá trị 1,2, ,k: phải là hằng

nguyên, ký tự.

- Khi giá trị biểu thức khác tất cảcác giá trị 1,2, ,k thì câu lệnh sau

default được thực hiện

- Câu lệnh break dùng để thoát khỏilệnh switch sau khi thực hiện xong

break thì các lệnh bên dưới sẽ được thực hiện mà không xét lại điều kiện)

Trang 11

printf (“chin”);break;

default :

printf (“Khong biet”);

}

Trang 12

5 CẤU TRÚC LẶP: FOR, WHILE, DO WHILE

Nhận xét: khi một lệnh / khối lệnh phải thực hiện nhiều

lần thì ta dùng cấu trúc lặp để tránh viết lại lệnh / khối lệnh nhiều lần Ta có các cấu trúc lặp sau:

Trang 13

printf(“%d “,i);

}

Trang 14

if (i%2==0)

printf(“%d “,i);}

Trang 15

B3: nếu giá trị biểu thức 2 <> 0 thì

thực hiện khối lệnh, ngược lại thoát

B4: tính giá trị biểu thức 3 rồi quay lại B2

biểu thức 1;

for (;biểu_thức 2;){

<Khối_lệnh>;biểu thức 3;}

Trang 16

5 CẤU TRÚC LẶP: for

Các lệnh dùng kết hợp với cấu trúc lặp : (xem trang 70,71)

break: dùng để để thoát khỏi vòng lặp for ngay lặp tức.

continue: dùng để bắt đầu thực hiện một vòng lặp mới của chu

trình bên trong nhất chứa nó (không thực hiện những lệnh sau nó)

int dem;

for (dem=0;dem<=20;dem++) {

if ((dem==5) || (dem==11))

continue;

printf(“dem = %d”,dem);

} }

Trang 17

5 CẤU TRÚC LẶP:

Ví dụ: viết CT cho phép nhập một số nguyên trong

khoảng 10, nếu nhập lớn hơn thì bắt nhập lại.

=> Nhận xét : chương trình có tính chất lặp đi lặp lại nhiều lần nhưng số lần lặp không xác định trước => while

Trang 19

5 CẤU TRÚC LẶP:

Ví dụ: viết lại CT cho phép nhập một số nguyên trong

khoảng 0 9, nếu nhập ngoài khoảng này thì bắt nhập lại.

} while (so>=0 && so<=9);

printf(“So ban da nhap chinh xac la %d”,so);

}

Trang 20

Thực hiện khối lệnh của vòng lặp cho đến khi biểu

thức có giá trị bằng 0 (hay biểu thức có giá trị false).

 Vòng lặp do while cũng thường được sử dụng khi

số lần lặp không xác định trước.

 Số lần lặp tối thiểu là 1 lần.

Trang 21

5 CẤU TRÚC LẶP: while, do while

Các lệnh dùng kết hợp với cấu trúc lặp : (xem trang

74)

break : dùng để để thoát khỏi vòng lặp ngay lặp tức.

continue : dùng để bắt đầu thực hiện một vòng lặp

mới của chu trình bên trong nhất chứa nó (không thực

hiện những lệnh sau nó)

Ví du: xem thêm trang 75,76

Trang 22

5 CẤU TRÚC ĐIỀU KHIỂN: goto

Cấu trúc điều khiển goto: là sự thể hiện giữa cấu trúc điều kiện và cấu trúc lặp, được sử dụng kết hợp với nhãn lệnh theo cú pháp sau:

goto <Tên_nhãn>;

 Lưu ý :

 Các lệnh goto và nhãn phải nằm trong cùng 1 hàm

 Không cho phép dùng goto nhảy từ ngoài vào trong

1 khối lệnh nhưng ngược lại thì hợp lệ.

Trang 23

5 CẤU TRÚC ĐIỀU KHIỂN: goto

Trang 24

PHẦN BÀI TẬP ÔN TẬP

CHƯƠNG 1,2,3

Trang 25

Bài 1/ trang 77: cho biết kết quả thực thi CT

Phép toán: () Phép toán điều kiện: ? Phép toán gán: =

=> Thứ tự ưu tiên các phép toán (tr34)

Trang 26

Bài 2/ trang 78: cho biết kết quả thực thi CT

b = 0 (do b là biến toàn cục)

Biểu thức : (a>=b && b)

(-1>=0 && b)

Do vế đầu của biểu thức là

false nên CT sẽ không thực hiện tiếp vế sau –b (do trong phép

&& (AND): 1 vế trong biểu thức có giá trị false thì toàn bộ biểu thức có giá trị false =>

vòng while không thực hiện

Kết quả in ra:

-1 0

Trang 27

Bài 3/ trang 79: cho biết kết quả thực thi CT

-a=b++ tức gán a=b trước

rồi thực hiện b=b+1 => a=0

Trang 28

Bài 4/ trang 79: cho biết kết quả thực thi CT

i=0: gán a+=i => a=a+i => a=0

Trang 29

Bài 5/ trang 80: cho biết kết quả thực thi CT

i=0:không thực hiện lệnh nàoi=1:không thực hiện lệnh nàoi=2: so sánh i<a => 2<2: false

Trang 30

Bài 6/ trang 81: cho biết kết quả thực thi CT

for(i=0,j=1;i<5;i++,j+=i++)

printf(“i=%d j=%d i+j=%d \n ”,i,j,i+j);

i++;

j+=i++;

}

Ngày đăng: 03/12/2015, 15:39

TỪ KHÓA LIÊN QUAN