Nhập môn lập trình - Chương 1: Giới thiệu chung - Huỳnh Nguyễn Thành Luân

Một số khái niệm cơ bản

Giải thuật và lưu đồ

Giới thiệu về ngôn ngữ lập trình C

Các thành phần cơ bản của ngôn ngữ lập trình C

pdf48 trang | Chuyên mục: Lập Trình | Chia sẻ: tuando | Lượt xem: 524 | Lượt tải: 1download
Tóm tắt nội dung Nhập môn lập trình - Chương 1: Giới thiệu chung - Huỳnh Nguyễn Thành Luân, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 biếu thức toán học, ô xử lý 
Ô thể hiện trạng thái bắt đầu (Start /Begin) và trạng thái 
kết thúc (Stop/End) của giải thuật 
Ô nhập dữ liệu 
Ô xuất dữ liệu ra màn hình 
Ô điều kiện rẽ nhánh 
Chỉ hướng đi của giải thuật (dòng xử lý) 
Giải thuật (algorithm) 
15 
Flow chart 
Ưu điểm 
 Trình bày trực quan giải thuật 
 Độc lập với ngôn ngữ tự nhiên 
 Độc lập với ngôn ngữ lập trình 
 Bảo đảm khả năng lập trình 
 Cho phép dễ dàng kiểm tra giải thuật 
Nguyên tắc kiểm tra 
 Đi từ START theo bất cứ đường nào cũng phải 
đến một điểm dừng STOP 
 Không có sự quay vòng vĩnh viễn 
 Không có sự kết thúc lưng chừng 
16 
Để giải một bài toán chúng ta thực hiện (tư duy) 
theo 4 bước sau: 
+ Đọc và hiểu bài toán. 
+ Xác định các tham số đầu vào (Input) và tham 
số đầu ra (Output). 
+ Vẽ mô hình giải thuật cho bài toán. 
+ Viết chương trình dựa vào mô hình giải thuật. 
Các ví dụ: 
Giải thuật (algorithm) 
17 
Nhập vào 2 số nguyên bất kỳ 
a, b. Tính tổng của chúng rồi 
xuất ra màn hình. 
Input: a, b 
Output: s 
Giải thuật (algorithm) 
18 
Nhập vào 2 số nguyên bất kỳ 
a, b. Tìm số lớn nhất rồi in ra 
màn hình. 
Input: a, b 
Output: max 
Giải thuật (algorithm) 
19 
Giải phương trình bậc 1: 
ax + b = 0 
Input: a, b 
Output: x, PTVN, 
PTVSN 
Giải thuật (algorithm) 
20 
Nhập vào số nguyên n bất 
kỳ. Tính tổng từ 1 đến n rồi 
in ra màn hình. 
Input: n 
Output: s=1+2+.+n 
Giải thuật (algorithm) 
21 
CÁC VÍ DỤ 
1. Cho số nguyên n. Tính trị tuyệt đối của n 
2. Nhập và số nguyên k (k>0), Xuất ra màn hình k 
dòng chữ “Xin chao” 
3. Tính tổng: ,với n>=0 
4. Tính tổng: ,với n>0 
5. Nhập vào ba cạnh a, b, c của tam giác. Xuất ra 
màn hình tam giác đó thuộc loại tam giác gì? 
(Thường, cân, vuông, đều hay vuông cân). 
)12(531  nS 
nnS n 1)1(4321)(  
22 
Các bước lập trình 
Yes 
Bài toán 
Phân 
tích 
Dữ liệu 
Giải thuật 
Dùng 
Editor 
NNLT 
Chương 
trình 
 ngôn 
ngữ 
Dịch 
Chạy 
Lỗi 
? 
No 
Yes 
Lỗi cú pháp 
Kq 
đúng 
? 
Start 
End 
Chương trình 
 mã máy 
No 
giải thuật sai 
23 
Công cụ vẽ lưu đồ giải thuật 
Microsoft Visio 
Crocodile 6.05 
24 
Tổng quan về ngôn ngữ C 
Ngôn ngữ C do Dennis Ritchie xây dựng từ năm 1972 
tại phòng thí nghiệm Bell Telephone với mục đích tạo 
ngôn ngữ để viết HĐH UNIX. 
C dựa trên các ngôn ngữ đã có: 
 ALGOL 60 (1960), 
 CPL (Cambridge, 1963), 
 BCPL (Martin Richard, 1967), 
 B (Ken Thompson, 1970) 
C là ngôn ngữ lập trình cấp cao, được sử dụng rất phổ 
biến để lập trình hệ thống cùng với Assembler và phát 
triển các ứng dụng 
Năm 1978, xuất bản quyển sách “The C programming 
language” do Kernighan và Ritchie viết. 
 25 
Những đặc điểm của C 
Tính cô đọng (compact): 
 C chỉ có 32 từ khóa chuẩn và 
 40 toán tử chuẩn. 
Tính cấu trúc (structured): 
 C có một tập hợp những chỉ thị lập trình: cấu trúc lựa 
chọn, lặp,  
 Đơn giản dễ hiểu. 
Tính tương thích (compatible): 
 C có bộ tiền xử lý và 
 Các thư viện chuẩn vô cùng phong phú 
 Nên khi chuyển từ máy tính này sang máy tính khác các 
chương trình viết bằng C vẫn hoàn toàn tương thích. 
26 
Những đặc điểm của C (tt) 
Tính linh động (flexible): 
 Cú pháp rất uyển chuyển, chấp nhận nhiều cách thể hiện 
 Có thể thu gọn kích thước của mã lệnh 
 Làm chương trình chạy nhanh hơn 
Biên dịch (compile): 
 C cho phép biên dịch nhiều tập tin chương trình riêng rẽ 
thành các tập tin đối tượng (object) và 
 Liên kết (link) các đối tượng đó lại với nhau thành một 
chương trình có thể thực thi được (executable) thống nhất 
27 
Môi trường lập trình Borland C++ 3.1 
Ta có thể khởi động Borland C++ 3.1 từ Windows hoặc MS-DOS chạy tập tin 
BC.EXE 
28 
Môi trường lập trình Borland C++ 5.2 
Ta có thể khởi động Borland C++ 5.2 từ Windows bằng cách chạy tập tin 
bcw.exe từ C:\BC5\BIN\bcw.exe 
29 
Môi trường lập trình Dev-C++ 4.9.9.2 
Khi cài đặt mặc định C:\Dev-Cpp\devcpp.exe 
30 
Môi trường lập trình Visual Studio 2010 
31 
Môi trường lập trình Borland C++ 
Các phím chức năng cơ bản cần biết trong Borland C++ 5.02 
Phím tắt Ý nghĩa 
Alt + F9 Dịch chương trình 
F9 Make all command - Project 
Ctrl + F9 Dịch và chạy chương trình. 
Ctrl + Delete Clear command - Edit 
32 
Môi trường Visual Studio 
Các phím chức năng cơ bản cần biết: 
 Phím tắt Ý nghĩa 
F6 Biên dịch chương trình 
F5 Chạy chương trình 
Ctrl+F5 Chạy chương trình (chế độ dừng CT sau khi chạy xong) 
Shift+F5 Dừng chương trình 
F9 Tạo/Hủy một điểm dừng (breakpoint) để chạy debug 
F10 Chạy từng dòng lệnh (lướt qua hàm) 
F11 Chạy từng dòng lệnh (đi vào qua hàm) 
33 
Ví dụ chương trình C 
Xuất ra màn hình dòng chữ: “Xin chao” 
#include 
#include 
void main() 
{ 
 printf("Xin chao "); 
 getch(); 
} 
34 
#include 
#include 
int main() 
{ 
 printf("Xin chao "); 
 getch(); 
 return 0; 
} 
Hoặc 
Tập ký tự trong C 
Tập ký tự trong ngôn ngữ C bao gồm các ký tự 
sau: 
 26 chữ cái latinh lớn A,B,C...Z 
 26 chữ cái latinh nhỏ a,b,c ...z. 
 10 chữ số thập phân 0,1,2...9. 
 Các ký hiệu toán học: +, -, *, /, =, , (, ) 
 Các ký hiệu đặc biệt: :. , ; " ' _ @ # $ ! ^ [ ] { } ... 
 Dấu cách hay khoảng trống. 
Phân biệt chữ in hoa và in thường 
Không được dùng các ký hiệu như: α, φ, Ω 
35 
Các từ khóa trong C 
Từ khóa là các từ dành riêng của C. 
Ta không được dùng từ khóa để đặt cho các 
tên riêng. 
C¸c tõ kho¸ th«ng dông: int, char, float, 
long, double, if, else, switch, case, while, do, 
for, return, break, struct, unsigned, void,... 
36 
Tên và cách đặt tên 
Tên (identifier): dùng để xác định các đại lượng khác 
nhau trong một chương trình. Chúng ta có tên hằng, 
tên biến, tên mảng, tên hàm, tên con trỏ... 
Tªn lµ c¸c kÝ tù ®øng liÒn nhau, gåm: 
+ C¸c ch÷ c¸i: A,.., Z, a,.. ., z 
+ C¸c ch÷ sè: 0,.. ., 9 
+ DÊu g¹ch dưới: _ 
Có 2 loại: 
• Tên chuẩn: là tên do C đặt sẵn như tên kiểu: 
int, char, float,; tên hàm: sin, cos... 
• Tên do người lập trình tự đặt. 
37 
Tên và cách đặt tên (tt) 
Quy t¾c ®Æt tªn: 
+ Kh«ng b¾t ®Çu b»ng sè. 
+ Kh«ng chøa dÊu c¸ch tr¾ng, dÊu chÊm c©u. 
+ Kh«ng trïng víi tõ kho¸. 
+ §é dµi tèi ®a 32 kÝ tù 
Ví dụ đặt tên đúng: a_1 , delta , x1 , _step , 
GAMA 
Đặt tên sai: 3MN, m#2, f(x), do 
38 
Cặp dấu chú thích (comment) 
Khi biên dịch các phần chú thích bị bỏ qua 
Dùng /* và */: chú thích dài nhiều dòng 
Dùng //: chú thích chỉ 1 dòng 
#include 
#include 
int main () { 
 char ten[50]; /* khai bao bien ten 
 kieu char 50 ky tu */ 
 printf(“Xin cho biet ten cua ban !”); 
 scanf(“%s”,ten); /*Doc vao 1 chuoi la ten ban*/ 
 printf(“Xin chao ban %s\n ”,ten); 
 //Dung chuong trinh, cho go phim 
 getch(); 
 return 0; 
} 
39 
Câu lệnh, khối lệnh và dấu chấm 
câu 
Lệnh: Thực hiện một chức năng nào đó (khai 
báo, gán, xuất, nhập,) và được kết thúc bằng 
dấu chấm phẩy (;) 
 Ví dụ: int x =5; 
 Khối lệnh: Gồm nhiều lệnh và được đặt trong 
cặp dấu ngoặc { } 
Trong chương trình có nhiều chỗ không dùng 
đến dấu ; vì đó không phải câu lệnh 
 Ví dụ: #include 
 40 
Cấu trúc chương trình 
Lưu ý: 
 Dấu chấm phẩy 
 Thứ tự lệnh 
 Dấu bao chuỗi 
#include 
#include 
void main() 
{ 
 printf("Xin chao "); 
 getch(); 
}
//Khai báo thư viện 
//Khai báo thư viện 
//Hàm chính bắt buộc 
//Bắt đầu 
//In ra màn hình 
//Dừng và chờ 
//Kết thúc 
41 
Các thành phần của chương trình 
C đơn giản 
(1)#include 
hay #include “Tên đường dẫn” 
 Yêu cầu trình biên dịch đọc tập tin thư viện 
mà chương trình dùng. 
VD: #include 
 #include “math.h” 
 #include “C:\\BC5\\BIN\\math.h” 
42 
Các tập tin thư viện thông dụng 
stdio.h: Tập tin định nghĩa các hàm vào/ra chuẩn 
(standard input/output). Gồm các hàm in dữ liệu 
printf(), nhập giá trị cho biến scanf(), xóa vùng đệm 
bàn phím fflush(). 
conio.h : Tập tin định nghĩa các hàm vào ra trong chế 
độ DOS (DOS console). Gồm các hàm xóa màn hình 
clrscr(), dừng màn hình nhập ký tự getch() 
math.h: Tập tin định nghĩa các hàm tính toán gồm các 
hàm abs(), sqrt(), pow(),  
alloc.h: Tập tin định nghĩa các hàm liên quan đến việc 
quản lý bộ nhớ. Gồm các hàm calloc(), realloc(), 
malloc(), free() 43 
Các thành phần của chương trình 
C đơn giản (tt) 
 (2) Hàm chính, là thành phần buộc phải 
có trong mọi chương trình C. 
 Dạng đơn giản: 
 void main(){ } 
 int main(){ return 0; } 
 main(){ return 0; } 
44 
(3) Định nghĩa dữ liệu và các phát biểu. 
- Các là phần thực thi của chương trình. 
- Các phát biểu được đặt giữa cặp ngoặc { và } 
của hàm (main), tạo nên “thân hàm”. 
- Mỗi phát biểu (câu lệnh) được kết thúc bởi ‘;’ 
- Các phát biểu cùng được đặt giữa { và } tạo 
thành phát biểu ghép (còn gọi khối lệnh). 
Các thành phần của chương trình 
C đơn giản (tt) 
45 
Các bước để thực thi một 
chương trình 
Gõ và đặt tên tập tin: hello.cpp 
Chạy chương trình với BC++ 
Phân biệt: F9 và Ctrl+F9 
#include 
#include 
void main() 
{ 
 printf("Xin chao cac ban"); 
 getch(); 
} 
46 
Một số qui tắc khi viết chương trình 
Mỗi câu lệnh có thể viết trên một hay nhiều dòng 
nhưng phải kết thúc bằng dấu “;” 
Chú thích có thể được viết trên một dòng, nhiều dòng 
hoặc trên phần còn lại của câu lệnh. 
Trước khi sử dụng một hàm chuẩn cần biết nó nằm 
trong thư viện nào và dùng toán tử #include để gắn 
tập tin đó vào đầu chương trình. 
Ví dụ: #include 
Một chương trình có thể chỉ có một hàm chính 
(main) hoặc có thể có thêm vài hàm khác. 
47 
Ví dụ 
Nhập vào 2 số, in ra tổng của chúng 
#include 
#include 
void main() 
{ 
 int a, b, tong; //khai bao bien a, b, tong kieu so nguyen 
 printf("Nhap so a: "); //xuat ra man hinh 
 scanf("%d",&a) ; //nhap du lieu cho bien a 
 printf("Nhap so b: "); //xuat ra man hinh 
 scanf("%d",&b) ; //nhap du lieu cho bien b 
 tong = a + b; //tinh tong a va b 
 printf("Tong a+b=%d " ,tong); //xuat ra ket qua tong 
 getch(); //dung man hinh xem ket qua 
} 
48 

File đính kèm:

  • pdfnhap_mon_lap_trinh_chuong_1_gioi_thieu_chung_huynh_nguyen_th.pdf