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

Cấu trúc điều khiển trên ngôn ngữ c và c++

35 389 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 35
Dung lượng 109,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

Tài liệu này dành cho sinh viên, giáo viên khối ngành công nghệ thông tin tham khảo và có những bài học bổ ích hơn, bổ trợ cho việc tìm kiếm tài liệu, giáo án, giáo trình, bài giảng các môn học khối ngành công nghệ thông tin

Trang 1

NGÔN NGỮ LẬP TRÌNH C/C+

+

(Bài giảng tuần 3-4)

Trang 3

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

Trang 4

Câu lệnh rẽ nhánh if…else

if (<điều kiện>) <khối lệnh 1>

Nếu <điều kiện> đúng thì thực hiện <khối lệnh

1>

if (<điều kiện>) <khối lệnh 1> else <khối lệnh 2>

Nếu <điều kiện> đúng thì thực hiện <khối lệnh

1>

Trang 5

else if (delta == 0) printf(“Nghiem kep\n”);

else printf(“Hai nghiệm\n”);

Trang 6

Câu lệnh lựa chọn switch

Câu lệnh if…else cho ta 2 lựa chọn

Khi có nhiều lựa chọn: if…else lồng nhau

C++ cung cấp câu lệnh khác để lựa chọn

nhiều khả năng: switch

Trang 7

Câu lệnh lựa chọn switch: Cú pháp

switch (<điều kiện>)

{

case <biểu thức hằng 1>: [<dãy lệnh 1>];

case <biểu thức hằng 2>: [<dãy lệnh 2>];

……… : ;

case <biểu thức hằng n>: [<dãy lệnh n>];

[default: dãy lệnh n+1;]

}

Trang 8

case 1: case 3: case 5: case 7: case 8: case 10:

case 12: cout << "tháng này có 31 ngày" ; break ;

case 2: cout << "tháng này có 28/29 ngày" ; break;

case 4: case 6: case 9:

case 11: cout << "tháng này có 30 ngày" ; break;

default: cout << “Không có tháng này";

Trang 9

Câu lệnh nhảy goto

Hạn chế dùng câu lệnh goto vì nếu lạm dụng

câu lệnh này sẽ làm cho chương trình trở nên

khó hiểu, dễ sinh lỗi

Trang 10

lap:// đây là nhãn để chương trình quay lại

if (m%2) kq += n; // nếu m lẻ thì cộng thêm n vào kq

m = m >> 1; // dịch m sang phải 1 bit tức m = m / 2

n = n << 1; // dịch m sang trái 1 bit tức m = m * 2

if (m) goto lap; // quay lại nếu m<>0

cout << “m nhân n =” << kq ;

}

Trang 11

Lệnh lặp for

for (<dãy biểu thức 1>;<điều kiện lặp>;<dãy

biểu thức 2>) { <khối lệnh lặp>;}

Các biểu thức trong các dãy biểu thức 1, 2

cách nhau bởi dấu phảy (,)

Điều kiện lặp là biểu thức lôgic

Hoạt động: Thực hiện <dãy biểu thức 1>

kiểm tra <điều kiện lặp>, nếu đúng thực hiện

<khối lệnh lặp>, thực hiện <dãy biểu thức 2>,

quay lại kiểm tra <điều kiện lặp>

Trang 12

Ví dụ minh họa lệnh lặp for

}

Trang 13

Ví dụ minh họa lệnh lặp for

Trang 14

Lệnh lặp while

while (<điều kiện>) { <khối lệnh lặp>; }

Hoạt động: Lặp lại <khối lệnh lặp> trong khi

<điều kiện> đúng.

<khối lệnh lặp> có thể không được thực hiện

lần nào nếu <điều kiện> sai.

Trang 16

cout << "UCLN = " << m ;

Trang 17

Ví dụ lệnh lặp while

Tìm nghiệm xấp xỉ của phương trình e x - 1.5 = 0, trên đoạn [0,

1] với độ chính xác 10 -6 bằng phương pháp chia đôi

c = (a + b)/2; // tìm điểm c giữa đoạn [a,b]

fa = exp(a) - 1.5; fc = exp(c) - 1.5; // tính f(a) và f(c)

if (fa*fc == 0) break; // f(c) = 0 tức c là nghiệm

if (fa*fc > 0) a = c; else b = c;

} cout << "Nghiem xap xi cua phuong trinh = " << c ;

Trang 18

Lệnh lặp do…while

do {<khối lệnh lặp>} while (<điều kiện>) ;

Hoạt động: Thực hiện <khối lệnh lặp> trong

khi <điều kiện> đúng

<khối lệnh lặp> được thực hiện ít nhất một lần

Trang 19

2 2

3

1 2

1 1

Trang 20

Các lệnh break và continue

break dùng để thoát ra khỏi một khối lệnh (tức

là tập các lệnh nằm trong {})

continue dùng để quay lại đầu vòng lặp mà

không cần thực hiện hết tất cả các lệnh trong

khối lệnh lặp

Trang 22

So sánh cách dùng các câu lệnh lặp

lặp mà số lần lặp được biết trước

Ngược lại với for, while và do…while thường

Trang 23

Mảng (Bảng) và xâu ký tự

Trang 24

Mảng một chiều

Mảng là một dãy các phần tử cùng kiểu được

sắp kề nhau liên tục trong bộ nhớ

Các phần tử được đánh số thứ tự để phân biệt

Nếu mảng có n phần tử thì các phần tử được

đánh số từ 0 đến n-1

Trang 25

Khai báo mảng

<tên kiểu> <tên mảng>[<số thành phần>] ;

// không khởi tạo

<tên kiểu> <tên mảng>[<số thành phần>] =

{ dãy giá trị } ; // có khởi tạo

<tên kiểu> <tên mảng>[ ] = { dãy giá trị } ;

// có khởi tạo

Trang 27

Ví dụ: Tính tổng, tích của hai phân số

void main()

{

int a[2], b[2], tong[2], tich[2] ;

cout << "Nhập a Tử = " ; cin >> a[0] ;

cout << "mẫu = " ; cin >> a[1] ;

cout << "Nhập b Tử = " ; cin >> b[0] ;

cout << "mẫu = " ; cin >> b[1] ;

tong[0] = a[0]*b[1] + a[1]*b[0] ; tong[1] = a[1] * b[1] ;

tich[0] = a[0]*b[0]; tich[1] = a[1] * b[1] ;

cout << "Tổng = " << tong[0] << '/' << tong[1] ;

cout << "Tích = " << tich[0] << '/' << tich[1] ;

Trang 28

cout << "Nhập số phần tử của dãy: " ; cin >> n;

for (i=0; i<n; i++) {

cout << "a[" << i << "] = " ; cin >> a[i];

}

min = a[0]; k = 0;

for (i=1; i<n; i++) if (a[i] < min ) { min = a[i]; k = i; }

cout << "Số bé nhất là " << min << "tại vị trí " << k;

Trang 29

Xâu ký tự

Là mảng có kiểu các phần tử là char

Khai báo:

char <tên xâu>[độ dài] ; // không khởi tạo

char <tên xâu>[độ dài] = <xâu kí tự> ; // có

khởi tạo

char <tên xâu>[] = xâu kí tự ;

// có khởi tạo

Các xâu ký tự có ký tự kết thúc là ‘\0’

Trang 30

Ví dụ khai báo xâu ký tự

// Khai báo xâu độ dài 80, không khởi tạo

char tenfile[80];

// Khai báo xâu độ dài 80, có khởi tạo

char tenfile[80] = “autoexec.bat”;

// Khai báo xâu có khởi tạo

char tenfile = “config.sys”;

Trang 31

Một số hàm xử lý xâu ký tự (1)

#include <string.h>

strcpy(s,t): gán nội dung của xâu t cho xâu s

strncpy(s, t, n): Sao n ký tự đầu tiên của xâu t

vào xâu s

strcat(s, t): Nối xâu t vào xâu s

strncat(s, t, n): Nối n ký tự đầu tiên của xâu t

vào xâu s

Trang 32

thao tác với n ký tự đầu tiên của hai xâu

strcmpi(s, t): Giống strcmp nhưng không

phân biệt chữ hoa và chữ thường

Ngày đăng: 22/10/2014, 19:19

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w