Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 307 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
307
Dung lượng
2,81 MB
Nội dung
LậptrìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 1
TỔNG QUAN
1
1. MỞ ĐẦU:
1.1. Lập trình: (Programming) là một quá trình viết chương trình bằng một ngôn ngữ
nào đó mà máy tính có thể thực hiện và những người lậptrình khác có thể hiểu.
1.2. Các bước trong giai đoạn lập trình:
Bước 1 : GIẢI THUẬT
(i) Nghó ra cách giải ( giải thuật) .
(ii) Làm rõ ràng giải thuật : bằng cách phân đoạn giải thuật thông qua các hình
vẽ, sơ đồ. Thông thường, người ta dùng lưu đồ (Flow Chart) để trình bày
giải thuật.
Bước 2 : VIẾT CHƯƠNG TRÌNH
(i) Viết phần lõi của thân chương trình.
(ii) Thêm các phần nhập và xuất.
(iii) Thêm các phần khai báo.
Bước 3 : CHẠY THỬ, SỬA CHỮA
(i) Chạy thử chương trìnhtrình nhiều lần, sửa chữa những lỗi nhỏ.
(ii) Sửa chữa, cải tiến chương trình.
Bước 4 : TỔNG KẾT
(i) Thêm những ghi chú cho chương trình như :
Mục đích của cả chương trình.
Mục đích của 1 đoạn chương trình hay 1 phát biểu.
1.3. Thuật toán (Algorithm):
1.3.1. Thuật toán: là một dãy các bước chặt chẽ và rõ ràng, xác đònh một trình tự
các thao tác trên một số đối tượng nào đó sao cho một số hữu hạn lần
thực hiện ta thu được kết quả như mong đợi.
1.3.2.
Các đặc trưng của thuật toán
:
Tính dừng (tính kết thúc): Một thuật toán bao giờ cũng phải dừng sau một
số hữu hạn các bước thực hiện .
• Phân biệt được giữa giải thuật, thuật toán, lưu đồ, mã giả và
chương trình.
• Từ cùng 1 chương trình, học sinh có thể lần lượt lập giải thuật,
thuật toán, lưu đồ, mã giả và viết chương trình.
• Làm quan với các khái niệm về biến, hằng số, kiểu dữ liệu, toán
tử, lệnh gán, các đối tượng nhập xuất trong C.
MỤC TIÊU
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 2
Tính phổ dụng (tính chính xác): thuật toán có thể giải bất kỳ bài toán nào
trong một lớp các bài toán. Cụ thể là thuật toán có thể làm việc với các dữ
liệu khác nhau và luôn dẫn đến một kết quả mong muốn.
Ví dụ : chương trình Giải phương trình bậc hai phải cho kết quả luôn đúng với các dữ
liệu số nhập vào cho a,b,c là bất kỳ (số nguyên, số thực, số dương, số âm. . .)
Tính duy nhất : nghóa là với nhiều lần chạy chương trình trên cùng moat tập
dữ liệu đàu vào phải cho ra cùng một kết quả.
Tính rõ ràng: giải thuật phải được thể hiện bằng các câu lệnh minh bạch;
các câu lệnh được sắp xếp theo thứ tự nhất đònh.
Tính khách quan: Một giải thuật dù được viết bởi nhiều người trên nhiều
máy tính vẫn phải cho kết quả như nhau.
1.3.3. Một thuật toán không phải là một chương trình, thuật toán có thể được mô
tả bởi một trong ba cách:
Mã tự nhiên
Mã giả (pseudocode).
Dùng các biểu tượng được quy đònh để biểu diễn giải thuật (flowchart).
1.4. Giải thuật:
Trong khi tìm kiếm lời giải cho các bài toán trong thực tế, người ta nhận ra
rằng:
(i) Có những bài toán đến nay vẫn chưa xác đònh được liệu có tồn tại một
thuật toán để giải quyết hay không?
(ii) Có những bài toán đã có thuật toán đễ giải nhưng, nhưng không chấp
nhận được do:
Thời gian để giải bài toán theo thuật toán đó quá lớn.
Các điều kiện kỹ thuật cho thuật toán khó đáp ứng.
(iii) Có những bài toán có thể giải được một cách hữu hiệu bằng một lời giải
nào đó, nhưng lời giải này lại vi phạm một số tính chất của thuật toán.
Trong thực tiễn, có rất nhiều trường hợp người ta chấp nhận các cách giải
thường cho kết quả tốt (tất nhiên không phải lúc nào cũng tốt) nhưng ít
phức tạp, hiệu quả và khả thi.
Do đó, người ta mở rộng khái niệm thuật toán (giúp cho thuật toán bớt
“cứng nhắc”) bằng một khái niệm mới là giải thuật. Giải thuật là những cách
giải không hoàn toàn đáp ứng đầy đủ các tính chất của một thuật toán nhưng
vẫn cho kết quả gần đúng. Hiện nay đã có những giải thuật đệ quy, giải thuật
ngẫu nhiên, giải thuật Heuristic, .
Để thuận tiện, trong tài liệu này sẽ sử dụng khái niệm giải thuật để chỉ
chung cho thuật toán và giải thuật.
Tóm lại, Giải thuật là một tập hợp hữu hạn của các chỉ thò hay phương
cách được đònh nghóa rõ ràng cho việc hoàn tất một số sự việc từ một trạng
thái ban đầu cho trước; khi các chỉ thò này được áp dụng triệt để thì sẽ dẫn đến
kết quả sau cùng như đã dự đoán.
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 3
1.4.1. Mã tự nhiên:
1.4.1.1. Khái niệm:
Là viết nội dung chương trình bằng ngôn ngữ tự nhiên giản lược.
1.4.1.2. Quy ước :
Phải dễ hiểu, dễ nhớ, nhất quán và không có sự hiểu lầm.
1.4.1.3. Ví dụ : viết chương trình cho người dùng nhập 1 số nguyên dương
(n). Tính tổng các số từ 1 đến n.
B1: Nhập số n
B2: Tổng=0
B3: Số đang xét=1
B4: Thực hiện khi Số đang xét <=n
Cộng dồn Số đang xét vào biến Tổng
Tăng số đang xét lên 1 đơn vò.
Quay lại B4
B5: Xuất giá trò của Tổng
1.4.2. Mã giả (
pseudocode
):
1.4.2.1. Khái niệm:
Dùng ngôn ngữ đã được quy ước trước để diễn đạt thuật toán.
1.4.2.2. Quy ước :
• Phải dễ hiểu, không cần mô tả chi tiết đến các kỹ thuật dùng trong lập
trình.
• Có thể dùng các từ khóa của ngôn ngữ đang dùng, hoặc có thể sử dụng
một số từ khóa đã được quy ước trước như:
IF <Điều kiện> THEN …ENDIF
IF < Điều kiện > THEN ELSE ENDIF
WHILE < Điều kiện > DO … ENDWHILE
DO … UNTIL < Điều kiện >
WRITE …
RETURN …
1.4.2.3. Ví dụ : viết chương trình cho người dùng nhập 1 số nguyên dương
(n). Tính tổng các số từ 1 đến n.
Input: n
Process:
Tong=0
SoDangXet=1
WHILE (SoDangXet <=n) DO
Tong = Tong + SoDangXet
SoDangXet = SoDangXet +1.
ENDWHILE
Output: Tong
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 4
1.4.3. Lưu đồ chương trình:
1.4.3.1. Khái niệm : Còn được gọi là sơ đồ khối. Là sơ đồ thể hiện các bước
của giải thuật liên quan đến một vấn đề nào đó được đưa vào giải
quyết bằng máy tính.
1.4.3.2. Các ký hiệu dùng trong lưu đồ:
KÝ HIỆ
U
Ý NGHĨA
nhập
xuất
Chức năng của công việc vào ra dữ liệu.
xử lý Nhóm lệnh để thự hiện một chức năng nào đó của
chương trình
chương
trình con
chương trình con đã đònh nghóa.
quyết
đònh
Quyết đònh rẽ nhánh nào căn cứ vào điều kiện chỉ
đònh được ghi trong khối. Trong một số trường hợp,
hình thoi được mở rộng thành 1 hình đa giác có
nhiều đường ra, ứng với các giá trò của biểu thức
bên trong.
Hướng xử lý của lưu đồ.
nối trang Điểm vào hay điểm ra của từng trang trong lưu đồ
chương trình.
điểm
cuối
Điểm đầu hay điểm cuối của lưu đồ.
Nối Điểm vào hay điểm ra của từng phần trong lưu đồ
chương trình.
1.4.3.3. Một số ví dụ biểu diễn thuật toán bằng lưu đồ:
1.4.3.3.1 Thuật toán không phân nhánh:
Ví dụ: Tính a=b
2
+c
2
. Với b và c được nhập vào
từ bàn phím. (hình 1)
Begin
b, c
A=b
2
+c
2
A
End
(Hình 1)
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 5
1.4.3.3.2 Thuật toán có phân nhánh:
Ví dụ 1: Cho nhập 3 số, in ra giá trò lớn nhất trong 3 số.
Có thể thực hiện bằng nhiều cách, trong phần này nêu lên 2
trong các cách:
Cách 1: hình 2 (dùng biến trung gian)
Cách 2: hình 3 (dùng phép AND/OR/NOT trong điều kiện.
Ví dụ 2: Giải phương trình bậc 1 ax+b=0. Với a,b được nhập vào(hình 4)
Ví dụ 3: Giải phương trình bậc 2 ax
2
+ bx + c =0. Với a, b, c được nhập
vào. (hình 5)
Begin
a, b, c
Max
End
a > b
Max = b
Max = a
Max < c
Max = c
S
S
Đ
Đ
(Hình 2)
Begin
a, b, c
a>=b
AND
a>=c
S
Đ
(Hình 3
)
Số lớn nhất là a
b>=a
AND
b>=c
Số lớn nhất là b
S
Đ
Số lớn nhất là c
End
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 6
1.4.3.3.3 Thuật toán lặp có chu trình:
Ví dụ 4: Nhập n. Tính tổng các số từ 1 đến n. Minh họa sau nêu lên 2
cách
Cách 1: xét điều kiện (i<=n) trước khi tính tổng S.
Cách 2: tính tổng S trước, xét đìều kiện (i<n) sau.
Begin
Nhập a, b
Xuất “PTVĐ”
End
a != 0
b = 0
S
S
Đ
Đ
(Hình 4)
–b/a
“PTVN”
Begin
Nhập a, b, c
x
1
= -b+sqrt(delta)/2*a
x
2
= -b-sqrt(delta)/2*a
End
a= 0
delta < 0
S
S
Đ
(Hình 5)
Giải
PTB1
(
b,c
)
“PTVN”
delta=b*b -4ac
delta = 0
S
–b/2a
Đ
Đ
Begin
n
i=1; S=0
End
S
Đ
(Hình 5
)
S i <=n
S = S+i
Begin
n
I=1; S=0
End
S
Đ
(Hình
6
)
S
i <=n
S = S+i
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 7
2. NGÔN NGỮ LẬPTRÌNH C:
2.1. Ngôn ngữ lập trình:
Là tập hợp các chỉ thò, dữliệu và các nguyên tắc dùng để xây dựng một
chương trình.
Ngôn ngữ lậptrình có thể phân loại theo hai cách:
(i) Ngôn ngữ bậc cao, ngôn ngữ bậc trung, ngôn ngữ bậc thấp.
(ii) Ngôn ngữ hướng thủ tục – ngôn ngữ hướng đối tượng.
C là một ngôn ngữ bậc trung có chứa các đặc trưng của cả hai loại ngôn
ngữ hướng thủ tục – ngôn ngữ hướng đối tượng.
2.2. Cấutrúc đơn giản của chương trình C:
// Các chỉ thò tiền xử lý
#include <tên tập tin .h>
#define
// Hàm chính của chương trình
void main()
{
}
2.2.1. Các chỉ thò tiền xử lý:
#include <tên tập tin .h>: dùng để chèn nội dung của một file khác vào
chương trình nguồn tại đúng vò trí mà chỉ thò include xuất hiện. Khi lậptrình
trên môi trường .NET, một số tập tin loại này đã được đưa vào thư viện của
.NET nên không có phần .h đi sau, VD: include <iostream>
#define: dùng để đònh nghóa các tên hằng số (constant) và các macro có
phạm vi sử dụng trong toàn chương trình hoặc cho đến khi được đònh nghóa
lại sau chỉ thò #undef.
2.2.2. Hàm main():
Các dạng của hàm main:
Dạng 1: Dạng 2: Dạng 3:
void main()
{{ /* Các khai báo*/
/* Các lệnh*/
}
Kiểu_trả_về main(void)
{ /* Các khai báo*/
/* Các lệnh*/
return Giá_trò_trả_về;
}
Kiểu_trả_về main(int i, char *str[])
{ /* Các khai báo*/
/* Các lệnh*/
return Giá_trò_trả_về;
}
Ví dụ:
Dạng 1: Dạng 2: Dạng 3:
void main()
{ printf “Hello”};
}
int main()
{ printf “Hello”};
return 0;
}
int main(int k, char *sts[])
{ printf “Hello”};
return 0;
}
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 8
2.3. Viết chương trình với C:
Mỗi chương trình trong C phải có một và duy nhất một hàm main. Hàm này
được xem như hàm điều khiển, bởi vì nó điểu khiển (gọi thực hiện) các
module khác.
Các lệnh của một hàm phải đặt giữa cặp dấu {}.
Cuối mỗi lệnh trong hàm phải có dấu chấm phẩy (;).
Trong ngôn ngữ C, có phân biệt ký tự hoa/thường đối với các hằng chuỗi,
danh đònh, và từ khóa.
Trên một dòng có thể chứa nhiều lệnh.
Một lệnh có thể viết trên nhiều dòng, ngoại trừ các hằng chuỗi, danh đònh, và
từ khóa.
Tuy nhiên ta nên trình bày chương trình một cách rõ ràng để dễ đọc và
sửa chữa, ví dụ sau đây cũng là một chương trình có thể thực hiện được nhưng
nó là điển hình cho một cách trình bày chương trình vô cùng kém:
VD: Thay vì Nên sửa lại là
#include <stdlib.h
>
int main()
{printf(
“Hello” );
printf(“World”);return 0;}
#include <stdlib.h
>
int main()
{ printf(“Hello” );
printf(“World”);
return 0;
}
3. BIẾN VÀ KHAI BÁO BIẾN:
3.1. Khái niệm về biến:
Biến là tên do người lậptrình đặt ra dùng để tham khảo tới một vùng nhớ trong
máy tính.
Một biến có thể chứa một giá trò phù hợp với kiểu dữliệu mà ta đã khai báo
cho nó.
Giá trò trong biến có thể thay đổi được trong chương trình.
Tên biến gồm chữ cái, ký số, dấu nối (_) và không được bắt đầu bằng ký số.
Biến khai báo trong một khối được gọi là biến cục bộ, biến không thuộc khối
nào gọi là biến toàn cục.
Biến có tác dụng trong toàn khối kể từ lúc được khai báo.
3.2. Cú pháp:
<data type> variable_name1, variable_name2;
Ví dụ: int sum;
long int datenum;
foat a,b,c;
Ta cũng có thể gán giá trò cho biến ngay tại thời điểm khai báo (phép gán ký
hiệu bởi dấu bằng =).
int a=3,b=5;
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 9
Vò trí khai báo biến trong chương trình:
#include <stdio.h>
void main()
{ //Các khai báo biến
// Các phát biểu (lệnh) của chương trình
}
Ví dụ:
#include <stdio.h>
void main()
{ float dmon1, dmon2, d_tb;
dmon1=9.5;
dmon2=8.0;
d_tb=(dmon1+dmon2)/2;
printf(“diem tb la:” <<d_tb;
}
3.3. Các lỗi thường gặp khi viết chương trình:
3.3.1. Lỗi về cú pháp:
Bỏ sót cặp ngoặc đơn -( )- sau từ khóa main.
Bỏ sót hoặc đánh không chính xác dấu { ở tại vò trí bắt đầu thân của một
hàm.
Bỏ sót hoặc đánh không chính xác dấu } ở tại vò trí kết thúc của một hàm.
Không đặt hằng chuỗi vào cặp dấu nháy kép “”.
Thiếu dấu chấm phẩy (;) sau mỗi câu lệnh.
Dư dấu chấm phẩy (;) sau từ khóa main “main();”
3.3.2. Lỗi khác:
Quên khai báo biến sử dụng trong chương trình.
VD: int a=5;
a = a + b; // chưa khai báo biến b
Lưu một giá trò vào một biến nhưng không cùng kiểu dữliệu với biến.
VD: int a;
a = 1.257; //gán số thực vào biến nguyên
Sử dụng biến trong một biểu thức khi biến chưa được gán giá trò. Lỗi này
không được phát hiện bởi trình biên dòch). Khi đó kết quả của biểu thức có
thể là một giá trò bất kỳ do đó kết quả của biểu thức là vô nghóa.
VD: int a=5, b;
a = a + b; // biến b chưa được gán giá trò
Sử dụng giá trò của phép chia không chính xác. Lỗi này thường xuất hiện
trong các biểu thức có nhiều toán hạng và lỗi này rất khó phát hiện.
VD: cần tính biểu thức 3.2 + 2/3 + 1.5
cho kết quả sẽ bằng 4.7 (=3.2 + 0 +1.5)
thay vì kết quả đúng phải bằng 5.36666666666667
(=3.2+0.6666666666667+1.5)
Lập trìnhC-CấutrúcdữLiệu giải thuật
Lê Văn Hạnh Oct11 10
Sử dụng một biểu thức mà trong đó chứa nhiều loại dữliệu nhưng lại
không biết chắc chắn kiểu dữliệu của kết quả.
VD: int a=5;
float b=2.4;
Khi đó a=a+b // sau lệnh này, giá trò của a là 7 thay vì 7.15
b=a+b // sau lệnh này, giá trò của b vẫn là 7.15
4. XUẤT/ NHẬP DỮ LIỆU:
4.1. Xuất dữ liệu:
4.1.1. Công dụng: xuất dữliệu được đònh dạng ra màn hình.
4.1.2. Cú pháp:
printf ("chuỗi đònh dạng"[, đối mục 1, đối mục 2,…]);
4.1.3. Giải thích:
Khi sử dụng hàm phải khai báo tiền xử lý #include <stdio.h>
printf: tên hàm, phải viết bằng chữ thường.
đối mục 1,…: là các mục dữ kiện cần in ra màn hình. Các đối mục này có
thể là biến, hằng hoặc biểu thức phải được đònh trò trước khi in ra.
chuỗi đònh dạng: được đặt trong cặp nháy kép (" "), gồm 3 loại:
(i) Đối với chuỗi ký tự ghi như thế nào in ra giống như vậy.
(ii) Đối với những ký tự chuyển đổi dạng thức cho phép kết xuất giá trò của
các đối mục ra màn hình tạm gọi là mã đònh dạng. Sau đây là các dấu
mô tả đònh dạng:
Ký t
ư
ï nghó
a
Ký t
ư
ï nghó
a
%c K
y
ù tự đơn %
g
Số chấm độn
g
(%f ha
y
%
g
)
%s Chuỗi %x Số n
g
u
y
ên thậ
p
p
hân khôn
g
dấu
%d Số n
g
u
y
ên thậ
p
p
hân có dấu %u Số n
g
u
y
ên hex khôn
g
dấu
%
f
Số chấm độn
g
(k
y
ù hiệu thậ
p
p
hân) %o Số n
g
u
y
ên bát
p
hân khôn
g
dấu
%e Số chấm độn
g
(k
y
ù hiệu có số mũ)
(iii) Các ký tự điều khiển và ký tự đặc biệt
Ký t
ư
ï nghó
a
\a Alert (bell) Tiếng kêu bip
\b Backspace Tương tự như phím Backspace
\f Next page
\n Newline Xuống dòng và chuyển con nháy về đầu dòng
\r Carriage return Nhảy về đầu dòng (không xuống dòng)
\t Horizontal tab Canh cột tab ngang
\' Single quotation mark In ra dấu '
\" Double quotation mark In ra dấu "
\\ Backslash In ra dấu \
\0 Null character
%% percent In ra dấu %
[...]... ho c một biểu th c Ví dụ: Lê Văn Hạnh #include #include void main() { int x=5, x=2; printf(“x luy thua y= %d”,pow(x,y)); } Oct11 20 LậptrìnhC-C u tr cdữLiệu giải thuật 2 CCCẤU TR C ĐIỀU KHIỂN M C TIÊU • Hiểu và vận dụng đưccccấu tr c điều khiển để giải quyết cc yêu c u c a chương trìnhc n th c hiện • Từ c ng 1 chương trìnhc n dùng cc lệnh lặp, h c sinh c thể chương... nhóm ch c năng: Nhập / xuất dữliệu , thống kê, sắp xếp, liệt kê void Tên_hàm (danh sách cc tham số) { Khai báo cc biến cc bộ Cccâu lệnh / khối lệnh hay lời gọi đến hàm kh c } Lê Văn Hạnh Jan2011 34 Lập trìnhC - C u tr cdữLiệu giải thuật • Kiểu dữliệuc bản (rời r c/ liên t c) hay kiểu dữliệucc u tr c: Kiểu dữliệu tùy theo m c đích c a hàm c n trả về giá trò gì thông qua vi c phân tích... trong chương trình Hàm con (c c nguyên mẫu hàm - prototype) Cc hàm con (nếu c ) Cc biến toàn ccCc kiểu dữliệu tự đònh nghóa 1.4.2 Hàm chính (main()) Chứa cc biến, cc lệnh và cc lời gọi hàm c n thiết trong chương trình 1.4.3 Cc hàm con: • Đưc sắp xếp riêng rẽ, mỗi hàm nằm trên 1 đoạn riêng • Cc hàm nằm rời nhau Không đặt nội dung c a hàm này chứa trong hàm kh c, ho c nội dung c a 2 hàm c phần... Quên dấu chấm phẩy sau while (BTĐK) c a do - while Lê Văn Hạnh Jan2011 30 LậptrìnhC-C u tr cdữLiệu giải thuật 3 HÀM ( Function ) M C TIÊU • Hiểu và tổ ch cđưc chương trình thành cc hàm ch c năng • Phân biệt đưccc loại tham số: tham số hình th c trò và tham số hình th c biến • Hiểu và xây dựng đưccc hàm c kiểu trả về c a hàm do người lậptrình quyết đònh 1 TỔ CH C CHƯƠNG TRÌNHC NHIỀU... thường sử dụng cc lệnh gán c dạng như sau: tong=tong+10; tich=tich*3; a=a-3; c= c%k; Lê Văn Hạnh Oct11 17 Lập trìnhC - C u tr cdữLiệu giải thuật Trong cc trường hợp trên ta c thể sử dụng cc toán tử gán +=; -= ; *=; /=; %= đưc cung c p bởi C (gọi là shortcut assignment operators) Ví dụ: tong=tong+10; ⇔ tong +=10; tich=tich*3; ⇔ tich *=3; a=a-3; ⇔ a -= 3; c= c%k; ⇔ c %=k; Về ý nghóa thì cc lệnh gán... / /c c lệnh kh c; } 8 CC HÀM TOÁN H C TRONG C: M cdùc cung c p cc toán tử số h c như + - * / nhưng vẫn không đủ để dùng; ví dụ như không c toán tử để tính lũy thừa hay c n c a một số Thay vào đó C cung c p một số hàm toán h c để c thể sử dụng trong chương trình Trư c khi dùng một hàm ta c n phải biết: • Tên c a hàm muốn sử dụng • C ng dụng c a hàm • Loại dữliệu sẽ cung c p cho hàm • Kiểu dữ liệu. .. hợp trên cc ng m c đích nhưng c ch dùng shortcut assignment operators sẽ giúp chương trình chạy nhanh hơn 7.2 Cc phép biến đổi kiểu (cast): C hai trường hợp chuyển đổi kiểu dữ liệu: • Trong một biểu th c chứa nhiều loại dữliệu • Chuyển đổi dữliệu trong biểu th c gán Hai trường hợp chuyển đổi trên tự động diễn ra một c ch ngấm ngầm bên trong Ngoài ra C cũng cung c p cho người lập trìnhcc toán... giá trò c a BTDK Giá trò c a BTĐK bằng 0 (sai) Kết th c vòng lặp hil Giá trò c a BTĐK kh c 0 (đúng) Th c hiện NhómLệnh c a while Jan2011 25 Lập trìnhC - C u tr cdữLiệu giải thuật 3.1.4 C u tr c while thường đưc dùng khi: C n th c hiện nhiều lần (lặp đò, lặp lại) một nhóm lệnh Trư c khi cho nhóm lệnh th c hiện, c n kiểm tra một số điều kiện 3.2 C u tr c for : 3.2.1 C ng dụng: C ng c ch c năng giống... tr c switch thì cc lệnh thu c default sẽ đưc th c hiện : • Lệnh break: cc ng dụng thoát khỏi một c u tr c tại thời điểm nó đưc gọi Trong trường hợp này nó đưc dùng để thoát khỏi switch sau khi đã th c hiện một nhóm lệnh thu c về một nhãn nào đó Nếu không c lệnh này thì Lê Văn Hạnh Oct11 23 Lập trìnhC - C u tr cdữLiệu giải thuật sau khi th c hiện xong cc lệnh c n thiết nó sẽ th c hiện tiếp c c. .. điều kiện kiểm tra) 3.4 Cccấu tr c lồng nhau: Toàn bộ một c u tr c while, for, do-while đưc xen như một c u lệnh vì vậy ta c thể lồng ghép cccấu tr c này vào nhau Ví dụ: in cc bảng c u chương 2,3,4 lên màn hình • C ch 1: void main() { int i, bcc; for (i=1;i .
Lập trình C - C u tr c dữ Liệu giải thuật
Lê Văn Hạnh Oct11 7
2. NGÔN NGỮ LẬP TRÌNH C:
2.1. Ngôn ngữ lập trình:
Là tập hợp c c chỉ thò, dữ liệu. dụng một biểu th c mà trong đó chứa nhiều loại dữ liệu nhưng lại không
biết ch c chắn kiểu dữ liệu c a kết quả
Lập trình C - C u tr c dữ Liệu giải thuật