Bài giảng Ngôn ngữ lập trình C/C++ (Tuần 2)

Các ngôn ngữ lập trình (NNLT) đều có một số kiểu dữ liệu cơ bản

Các yếu tố gắn với kiểu dữ liệu:

Tên kiểu

Số byte trong bộ nhớ để lưu trữ một đơn vị dữ liệu thuộc kiểu này

Miền giá trị của kiểu

 

ppt42 trang | Chuyên mục: C/C++ | Chia sẻ: dkS00TYs | Lượt xem: 2199 | Lượt tải: 2download
Tóm tắt nội dung Bài giảng Ngôn ngữ lập trình C/C++ (Tuần 2), để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 NGÔN NGỮ LẬP TRÌNH C/C++ (Bài giảng tuần 2) Tin học cơ sỏ II * Nội dung Kiểu dữ liệu Biểu thức Câu lệnh Kiểu dữ liệu đơn giản Tin học cơ sỏ II * Khái niệm Các ngôn ngữ lập trình (NNLT) đều có một số kiểu dữ liệu cơ bản Các yếu tố gắn với kiểu dữ liệu: Tên kiểu Số byte trong bộ nhớ để lưu trữ một đơn vị dữ liệu thuộc kiểu này Miền giá trị của kiểu Tin học cơ sỏ II * Một số kiểu dữ liệu đơn giản trong C++ Tin học cơ sỏ II * Kiểu ký tự char c, d;	// c, d được phép gán giá trị từ -128 đến 127 unsigned char e, f;	// e được phép gán giá trị từ 0 đến 255 c = 65 ; d = 179; 	// d có giá trị ngoài miền cho phép e = 179; f = 330;	// f có giá trị ngoài miền cho phép cout #include void main() { 	float r = 2;	 // r là tên biến dùng để chứa bán kính 	cout hoặc const =; Ví dụ: #define sosinhvien 50 #define MAX 100 const sosinhvien = 50; Biến: Khai báo và sử dụng Tin học cơ sỏ II * Khai báo biến Biến là các tên gọi để lưu giá trị khi chương trình thực hiện Biến khác hằng ở chỗ giá trị của nó có thể thay đổi trong khi chương trình thực hiện Có hai cách khai báo biến: Khai báo không khởi tạo Khai báo có khởi tạo Tin học cơ sỏ II * Khai báo không khởi tạo ; ; , ; Chú ý: Các biến có cùng kiểu có thể khai báo theo cách 3 Tin học cơ sỏ II * Ví dụ về khai báo biến không khởi tạo void main() { 	int i, j;	// khai báo 2 biến i, j có kiểu nguyên 	float x ; 	// khai báo biến thực x 	char c, d[100] ;	// biến kí tự c, xâu d 	// chứa tối đa 100 kí tự 	unsigned int u; // biến nguyên không dấu u 	… } Tin học cơ sỏ II * Khai báo có khởi tạo =; =; =, =; Các giá trị khởi tạo có thể là hằng, biến hoặc biểu thức Tin học cơ sỏ II * Ví dụ về khai báo biến có khởi tạo const int n = 10 ;	 void main() { 	int i = 2, j , k = n + 5;	// khai báo i và khởi tạo 	// bằng 2, k bằng 15 	float eps = 1.0e-6 ; 	// khai báo biến thực 	// epsilon khởi tạo bằng 10-6 	char c = 'Z';	// khai báo biến kí tự c 	// và khởi tạo bằng 'A' 	char d[100] = "Tin hoc";	// khai báo xâu kí tự d 	// chứa dòng chữ "Tin hoc" … } Tin học cơ sỏ II * Ví dụ về tên gọi trong C++ Tên gọi đúng: i, i1, j, tinhoc, tin_hoc, luu_luong Tên gọi sai: 1i, tin hoc, luu-luong-nuoc Các tên sau đây là khác nhau: ha_noi, Ha_noi, HA_Noi, HA_NOI, ... Tin học cơ sỏ II * Phạm vi của biến Phạm vi của biến là nơi mà biến có tác dụng hay tại đó giá trị của biến có thể sử dụng được Chi tiết: sẽ nói trong các bài học sau Tin học cơ sỏ II * Gán giá trị cho biến Sử dụng phép gán để gán giá trị cho biến: = ; Ví dụ: int n, i = 3;	// khởi tạo i bằng 3 n = 10;	// gán cho n giá trị 10 cout Do đó có thể thực hiện nhiều phép gán: ==…= Tuy nhiên không nên lạm dụng nhiều phép gán như trên dẫn đến chương trình khó đọc Phép toán, biểu thức và câu lệnh Tin học cơ sỏ II * Phép toán C++ có nhiều phép toán chia thành các loại 1 ngôi, 2 ngôi và thậm chí 3 ngôi Các thành phần tên gọi tham gia trong phép toán gọi là hạng thức hoặc toán hạng, các kí hiệu phép toán gọi là toán tử Ví dụ: a+b: a, b là toán hạng, + là toán tử Số ngôi của phép toán chính là số toán hạng Tin học cơ sỏ II * Các phép toán số học Cộng (+), trừ (-), nhân (*) Chia (/): Chia lấy phần nguyên: 5/2 = 2 Chia thực: 5.0/2.0 = 2.5 Lấy phần dư (%) 5 % 2 = 1 4 % 2 = 0 Đây là các phép toán 2 ngôi Phép trừ còn là 1 ngôi (khi đảo dấu) Tin học cơ sỏ II * Các phép toán tự tăng giảm i++, ++i: Tăng i (biến nguyên) lên 1 đơn vị i--, --i: Giảm i (biến nguyên) đi 1 đơn vị Đây là các phép toán 1 ngôi Tin học cơ sỏ II * Các phép toán so sánh và logic Các phép toán so sánh: Bằng nhau (==), khác nhau (!=), lớn hơn (>), lớn hơn hoặc bằng (>=), nhỏ hơn ( = Gán có điều kiện: = ?: là một biểu thức logic, và là các biểu thức cùng kiểu với kiểu của Nếu đúng thì nhận giá trị của ngược lại nhận giá trị của Tin học cơ sỏ II * Ví dụ phép gán có điều kiện x = (3 + 4 b) ? a: b 	// x = số lớn nhất trong 2 số a, b. Tin học cơ sỏ II * Cách viết gọn của phép gán Phép gán dạng x = x@a, trong đó @ là một phép toán số học, xử lý bit.. có thể được viết gọn thành: x @= a Ví dụ: x = x + 2  x += 2 y = y/2  y /= 2 Tin học cơ sỏ II * Biểu thức Biểu thức là dãy kí hiệu kết hợp giữa các toán hạng, phép toán và cặp dấu () theo một qui tắc nhất định Các toán hạng có thể là hằng, biến, hàm Ví dụ các biểu thức (x +y)*4-2 (-b + sqrt(delta)) / (2*a) 3 - x + sqrt(y) Tin học cơ sỏ II * Thứ tự ưu tiên của các phép toán C++ qui định trật tự tính toán theo các mức độ ưu tiên từ cao đến thấp như sau: Các biểu thức trong cặp dấu ngoặc () Nếu có nhiều cặp ngoặc lồng nhau thì cặp trong cùng (sâu nhất) được ưu tiên cao hơn Các phép toán 1 ngôi (tự tăng-giảm, lấy địa chỉ, lấy nội dung con trỏ, phủ định …) Các phép toán số học. Các phép toán quan hệ, logic. Các phép gán. Tin học cơ sỏ II * Chú ý Để chương trình rõ ràng, sáng sủa: Với mỗi biểu thức, nên sử dụng dấu ngoặc để chỉ định một cách tường minh trật tự tính toán trong biểu thức đó Tin học cơ sỏ II * Phép toán chuyển đổi kiểu C++ hỗ trợ chuyển đổi kiểu tự động: char intlong intfloatdouble Chuyển đổi kiểu không tự động: (tên_kiểu)biểu_thức	// cú pháp cũ trong C hoặc tên_kiểu(biểu_thức) 	// cú pháp mới trong C++ Tin học cơ sỏ II * Câu lệnh Một câu lệnh trong C++ được thiết lập từ các từ khoá và các biểu thức … và luôn luôn được kết thúc bằng dấu chấm phẩy Ví dụ: cin >> x >> y ; x = 3 + x ; y = (x = sqrt(x)) + 1 ; cout abs(x), labs(x), fabs(x): trả lại giá trị tuyệt đối của một số nguyên, số nguyên dài và số thực. pow(x, y): hàm mũ, trả lại giá trị x lũy thừa y (xy). exp(x): hàm mũ, trả lại giá trị e mũ x (ex). log(x), log10(x): trả lại lôgarit cơ số e và lôgarit thập phân của x (lnx, logx) . sqrt(x): trả lại căn bậc 2 của x. atof(s_number): trả lại số thực ứng với số viết dưới dạng xâu kí tự s_number. Hàm lượng giác: sin(x), cos(x), tan(x) Tin học cơ sỏ II * Các vấn đề cần nhớ Các kiểu dữ liệu của C++ Hằng và biến Phép toán (toán tử), biểu thức, toán hạng, độ ưu tiên của các phép toán Ngôi của phép toán Câu lệnh và khối lệnh Tin học cơ sỏ II * Bài tập Làm tất cả các bài tập từ số 1 đến số 20 trong giáo trình (trang 38, 39, 40) Giờ thực hành: Yêu cầu sinh viên chạy các chương trình trong tuần 1 và tuần 2 trên máy tính 

File đính kèm:

  • pptBài giảng Ngôn ngữ lập trình CC++ (Tuần 2).ppt