newbie.11o2
New Member
Download miễn phí Giáo trình Lập trình C căn bản
MỤC LỤC
BÀI 1 : NGÔN NGỮLẬP TRÌNH & PHƯƠNG PHÁP LẬP TRÌNH .7
1.1 Mục tiêu .7
1.2 Lý thuyết.7
1.2.1 Ngôn ngữlập trình (Programming Language) .7
1.2.1.1 Thuật giải (Algorithm) .7
1.2.1.2 Chương trình (Program) .7
1.2.1.3 Ngôn ngữlập trình (Programming language) .8
1.2.2 Các bước lập trình .8
1.2.3 Kỹthuật lập trình .8
1.2.3.1 I-P-O Cycle (Input-Pprocess-Output Cycle) (Quy trình nhập-xửlý-xuất) .8
1.2.3.2 Sửdụng lưu đồ(Flowchart).9
BÀI 2 : LÀM QUEN LẬP TRÌNH C QUA CÁC VÍ DỤ ĐƠN GIẢN .12
2.1 Mục tiêu .12
2.2 Nội dung.12
2.2.1 Khởi động và thoát BorlandC.12
2.2.1.1 Khởi động .12
2.2.1.2 Thoát .13
2.2.2 Các ví dụ đơn giản .13
2.2.2.1 Ví dụ1.13
2.2.2.2 Ví dụ2.15
2.2.2.3 Ví dụ3.16
2.2.2.4 Ví dụ4.16
BÀI 3 : CÁC THÀNH PHẦN TRONG NGÔN NGỮC .18
3.1 Mục tiêu .18
3.2 Nội dung.18
3.2.1 Từkhóa .18
3.2.2 Tên .18
3.2.3 Kiểu dữliệu .18
3.2.4 Ghi chú.19
3.2.5 Khai báo biến .19
3.2.5.1 Tên biến .19
3.2.5.2 Khai báo biến .19
3.2.5.3 Vừa khai báo vừa khởi gán.20
3.2.5.4 Phạm vi của biến.20
BÀI 4 : NHẬP / XUẤT DỮLIỆU .21
4.1 Mục tiêu .21
4.2 Nội dung.21
4.2.1 Hàm printf .21
4.2.2 Hàm scanf .24
4.3 Bài tập .25
BÀI 5 : CẤU TRÚC RẼNHÁNH CÓ ĐIỀU KIỆN .26
5.1 Mục tiêu .26
5.2 Nội dung.26
5.2.1 Lệnh và khối lệnh.26
5.2.1.1 Lệnh .26
5.2.1.2 Khối lệnh .26
5.2.2 Lệnh if .26
5.2.2.1 Dạng 1 (if thiếu) .26
5.2.2.2 Dạng 2 (if đ ủ) .30
5.2.2.3 Cấu trúc else if .33
5.2.2.4 Cấu trúc if lồng .37
5.2.3 Lệnh switch.41
5.2.3.1 Cấu trúc switch case (switch thiếu).41
5.2.3.2 Cấu trúc switch case default (switch đủ).44
5.2.3.3 Cấu trúc switch lồng.46
5.3 Bài tập .47
5.3.1 Sửdụng lệnh if .47
5.3.2 Sửdụng lệnh switch .48
5.4 Bài tập làm thêm.49
BÀI 6 : CẤU TRÚC VÒNG LẶP .50
6.1 Mục tiêu .50
6.2 Nội dung.50
6.2.1 Lệnh for.50
6.2.2 Lệnh break.55
6.2.3 Lệnh continue .55
6.2.4 Lệnh while.55
6.2.5 Lệnh do while .57
6.2.6 Vòng lặp lồng nhau .59
6.2.7 So sánh sựkhác nhau của các vòng lặp .60
6.3 Bài tập .60
BÀI 7 : HÀM.63
7.1 Mục tiêu .63
7.2 Nội dung.63
7.2.1 Các ví dụvềhàm .63
7.2.2 Tham sốdạng tham biến và tham trị.66
7.2.3 Sửdụng biến toàn cục .67
7.2.4 Dùng dẫn hướng #define .69
7.3 Bài tập .69
BÀI 8 : MẢNG VÀ CHUỖI .70
8.1 Mục tiêu .70
8.2 Nội dung.70
8.2.1 Mảng.70
8.2.1.1 Cách khai báo mảng.70
8.2.1.2 Tham chiếu đến từng phần tửmảng .70
8.2.1.3 Nhập dữliệu cho mảng .71
8.2.1.4 Đọc dữliệu từmảng .71
8.2.1.5 Sửdụng biến kiểu khác.72
8.2.1.6 Kỹthuật Sentinal.72
8.2.1.7 Khởi tạo mảng.73
8.2.1.8 Khởi tạo mảng không bao hàm kích thước.74
8.2.1.9 Mảng nhiều chiều .74
8.2.1.10 Tham chiếu đến từng phần tửmảng 2 chiều .74
8.2.1.11 Nhập dữliệu cho mảng 2 chiều .75
8.2.1.12 Đọc dữliệu từmảng 2 chiều .75
8.2.1.13 Sửdụng biến kiểu khác trong mảng 2 chiều.76
8.2.1.14 Khởi tạo mảng 2 chiều .76
8.2.1.15 Dùng mảng 1 chiều làm tham sốcho hàm .77
8.2.1.16 Dùng mảng 2 chiều làm tham sốcho hàm .80
8.2.2 Chuỗi .82
8.2.2.1 Cách khai báo chuỗi .82
8.2.2.2 Hàm nhập (gets), xuất (puts) chuỗi.83
8.2.2.3 Khởi tạo chuỗi.84
8.2.2.4 Mảng chuỗi.84
8.3 Bài tập .85
BÀI 9 : CON TRỎ.87
9.1 Mục tiêu .87
9.2 Nội dung.87
9.2.1 Con trỏ? .87
9.2.2 Khái báo biến con trỏ.87
9.2.3 Truyền địa chỉsang hàm .88
9.2.4 Con trỏvà mảng.89
9.2.5 Con trỏtrỏ đến mảng trong hàm .89
9.2.6 Con trỏvà chuỗi .90
9.2.7 Khởi tạo mảng con trỏtrỏ đến chuỗi .91
9.2.8 Xửlý con trỏtrỏ đến chuỗi .92
9.2.9 Con trỏtrỏ đến con trỏ.94
9.3 Bài tập .95
BÀI 10 : CÁC KIỂU DỮLIỆU TỰTẠO .96
10.1 Mục tiêu .96
10.2 Nội dung.96
10.2.1 Structure .96
10.2.1.1 Khai báo kiểu structure .96
10.2.1.2 Cách khai báo biến có kiểu structure .96
10.2.1.3 Tham chiếu các phần tửtrong structure.96
10.2.1.4 Khởi tạo structure .98
10.2.1.5 Structure lồng nhau.99
10.2.1.6 Truyền structure sang hàm .100
10.2.2 Enum .102
10.2.2.1 Định nghĩa kiểu enum .102
10.2.2.2 Cách khai báo biến có kiểu enum .102
10.2.2.3 Sửdụng enum trong chương trình .103
10.3 Bài tập .104
BÀI 11 : TẬP TIN .106
11.1 Mục tiêu .106
11.2 Nội dung.106
11.2.1 Ví dụghi, đọc sốnguyên.106
11.2.2 Ghi, đọc mảng .107
11.2.3 Ghi, đọc structure .108
11.2.4 Các mode khác đểmởtập tin .109
11.2.5 Một sốhàm thao tác trên file khác.109
11.3 Bài tập .109
BÀI 12 : ĐỆQUY .110
12.1 Mục tiêu .110
12.2 Nội dung.110
12.3 Bài tập .113
BÀI 13 : TRÌNH SOẠN THẢO CỦA BORLAND C .114
13.1 Mởtập tin soạn thảo mới .114
13.2 Lưu tập tin.114
13.2.1 Nếu là tập tin soạn thảo mới chưa lưu .114
13.2.2 Nếu là tập tin đã lưu ít nhất 1 lần hay được mởbằng lệnh Open: .114
13.3 Mởtập tin .115
13.4 Các phím, tổhợp phím thường dùng.115
13.4.1 Các phím di chuyển con trỏ.115
13.4.2 Các phím thao tác trên khối.116
13.4.3 Các thao tác xóa .116
13.4.4 Các thao tác copy, di chuyển.116
13.4.5 Các thao tác khác .116
13.5 Ghi một khối ra đĩa .117
13.6 Chèn nội dung file từ đĩa vào vịtrí con trỏ.117
13.7 Tìm kiếm văn bản trong nội dung soạn thảo .117
13.8 Tìm và thay thếvăn bản trong nội dung soạn thảo.117
13.9 Sửa lỗi cú pháp.118
13.10 Chạy từng bước .118
13.11 Sửdụng Giúp (Giúp đỡ).118
BÀI 14 : CÁC HỆ ĐẾM .120
14.1 Khái niệm .120
14.2 Quy tắc.120
14.3 Chuyển đổi giữa các hệ.121
14.3.1 Chuyển đổi giữa hệ2 và hệ10 .121
14.3.2 Chuyển đổi giữa hệ8 và hệ10 .122
14.3.3 Chuyển đổi giữa hệ16 và hệ10 .122
14.3.4 Chuyển đổi giữa hệ2 và hệ16 .123
BÀI 15 : BIỂU THỨC VÀ PHÉP TOÁN .124
15.1 Biểu thức.124
15.2 Phép toán .124
15.2.1 Phép toán sốhọc.124
15.2.2 Phép quan hệ.124
15.2.3 Phép toán luận lý.125
15.2.4 Phép toán trên bit (bitwise).125
15.2.5 Các phép toán khác.126
15.2.6 Độ ưu tiên của các phép toán .126
15.3 Bài tập .126
BÀI 16 : MỘT SỐHÀM CHUẨN THƯỜNG DÙNG.128
16.1 Các hàm chuyển đổi dữliệu .128
16.1.1 atof .128
16.1.2 atoi .128
16.1.3 itoa .128
16.1.4 tolower.128
16.1.5 toupper .128
16.2 Các hàm xửlý chuỗi ký tự.129
16.2.1 strcat.129
16.2.2 strcpy .129
16.2.3 strcmp.129
16.2.4 strcmpi .129
16.2.5 strlwr .129
16.2.6 strupr.129
16.2.7 strlen.130
16.3 Các hàm toán học .130
16.3.1 abs.130
16.3.2 labs.130
16.3.3 rand .130
16.3.4 random .130
16.3.5 pow .130
16.3.6 sqrt.130
16.4 Các hàm xửlý file .131
16.4.1 rewind.131
16.4.2 ftell .131
16.4.3 fseek .131
http://cloud.liketly.com/flash/edoc/jh2i1fkjb33wa7b577g9lou48iyvfkz6-swf-2014-01-13-giao_trinh_lap_trinh_c_can_ban.eHmPZZOSmz.swf /tai-lieu/de-tai-ung-dung-tren-liketly-54523/
Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí
Tóm tắt nội dung tài liệu:
phím. Kết thúc khi gặp dấu chấm '.' .Dòng File Edit Search Run Compile Debug Project Option Window Giúp
1
2
3
4
5
6
7
8
9
10
11
12
/* Doc vao 1 loat ktu tren ban phim. Ket thuc khi gap dau cham */
#include
#define DAU_CHAM '.'
void main(void)
{
char c;
for(; (c = getchar()) != DAU_CHAM; )
putchar(c);
}
F1 Giúp Alt-F8 Next Msg Alt-F7 Prev Msg Alt - F9 Compile F9 Make F10 Menu
) Kết quả in ra màn hình
a
a
4
4
.
_
Bạn thay các dòng từ 10 đến 11 bằng câu lệnh:
for(; (c = getchar()) != DAU_CHAM; putchar(c));
Chạy lại chương trình, quan sát và nhận xét kết quả.
) Vòng lặp for vắng mặt biểu thức 1 và 3.
Ví dụ 6: Đọc vào một loạt kí tự trên bàn phím, đếm số kí tự nhập vào. Kết thúc khi gặp dấu chấm '.' .
Dòng File Edit Search Run Cmpile Debug Project Option Window Giúp
1
2
3
4
5
6
7
8
9
10
11
12
13
/* Doc vao 1 loat ktu tren ban phim, dem so ktu nhap vao. Ket thuc khi gap dau cham */
#include
#include
#define DAU_CHAM '.'
void main(void)
{
char c;
int idem;
for(idem = 0; (c = getchar()) != DAU_CHAM; )
idem++;
Giáo trình Lập trình C căn bản Trang 54
Trường THẾ GIỚI TIN HỌC – 39 Nguyễn Sơn Hà, P5, Q3 – ĐT: 8.344.480 – Website: www.infoworldschool.com
14
15
16
printf("So ki tu: %d.\n", idem);
getch();
}
F1 Giúp Alt-F8 Next Msg Alt-F7 Prev Msg Alt - F9 Compile F9 Make F10 Menu
) Kết quả in ra màn hình
afser.
So ki tu: 5.
_
Bạn thay các dòng từ 12 đến 13 bằng câu lệnh:
for(idem = 0; (c = getchar()) != DAU_CHAM; idem++);
Chạy lại chương trình, quan sát và nhận xét kết quả.
) Vòng lặp for vắng mặt biểu thức 3.
Ví dụ 7: Đọc vào một loạt kí tự trên bàn phím, đếm số kí tự nhập vào. Kết thúc khi gặp dấu
chấm '.' .
Dòng File Edit Search Run Compile Debug Project Option Window Giúp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* Doc vao 1 loat ktu tren ban phim, dem so ktu nhap vao. Ket thuc khi gap dau cham */
#include
#include
#define DAU_CHAM '.'
void main(void)
{
char c;
int idem = 0;
for(;
{
c = getchar();
if (c == DAU_CHAM) //nhap vao dau cham
break; //thoat vong laptop
idem++;
}
printf("So ki tu: %d.\n", idem);
getch();
}
F1 Giúp Alt-F8 Next Msg Alt-F7 Prev Msg Alt - F9 Compile F9 Make F10 Menu
) Kết quả in ra màn hình
afser.
So ki tu: 5.
_
Chạy lại chương trình, quan sát và nhận xét kết quả.
) Vòng lặp for vắng mặt cả ba biểu thức.
Ví dụ 8: Nhập vào 1 dãy số nguyên từ bàn phím đến khi gặp số 0 thì dừng. In ra tổng các số
nguyên dương.
Dòng File Edit Search Run Compile Debug Project Option Window Giúp
1
2
3
4
5
/* Nhap vao 1 day so nguyen tu ban phim den khi gap so 0 thi dung. In ra tong cac so
nguyen duong */
#include
#include
Giáo trình Lập trình C căn bản Trang 55
Trường THẾ GIỚI TIN HỌC – 39 Nguyễn Sơn Hà, P5, Q3 – ĐT: 8.344.480 – Website: www.infoworldschool.com
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void main(void)
{
int in, itong = 0;
for(;
{
printf("Nhap vao 1 so nguyen: ");
scanf("%d", &in);
if (in < 0)
continue; //in < 0 quay nguoc len dau vong laptop
if (in == 0)
break; //in = 0 thoat vong laptop
itong += in;
}
printf("Tong: %d.\n", itong);
getch();
}
F1 Giúp Alt-F8 Next Msg Alt-F7 Prev Msg Alt - F9 Compile F9 Make F10 Menu
) Kết quả in ra màn hình
Nhap vao 1 so nguyen: -8
Nhap vao 1 so nguyen: 9
Nhap vao 1 so nguyen: -7
Nhap vao 1 so nguyen: 3
Nhap vao 1 so nguyen: 0
Tong: 12
_
Chạy lại chương trình với số liệu khác
Quan sát và nhận xét kết quả.
6.2.2 Lệnh break
Thông thường lệnh break dùng để thoát khỏi vòng lặp không xác định điều kiện dừng
hay bạn muốn dừng vòng lặp theo điều kiện do bạn chỉ định. Việc dùng lệnh break để thoát khỏi
vòng lặp thường sử dụng phối hợp với lệnh if. Lệnh break dùng trong for, while, do…while,
switch. Lệnh break thoát khỏi vòng lặp chứa nó.
Ví dụ 9 : Như ví dụ 7, 8
Sử dụng lệnh break trong switch để nhảy bỏ các câu lệnh kế tiếp còn lại.
6.2.3 Lệnh continue
Được dùng trong vòng lặp for, while, do…while. Khi lệnh continue thi hành quyền điều
khiển sẽ trao qua cho biểu thức điều kiện của vòng lặp gần nhất. Nghĩa là lộn ngược lên đầu vòng
lặp, tất cả những lệnh đi sau trong vòng lặp chứa continue sẽ bị bỏ qua không thi hành.
Ví dụ 10 : Như ví dụ 8
6.2.4 Lệnh while
Vòng lặp thực hiện lặp lại trong khi biểu thức còn đúng.
• Cú pháp lệnh
while (biểu thức)
khối lệnh;
) từ khóa while phải viết bằng chữ thường
# Nếu khối lệnh bao gồm từ 2 lệnh trở lên thì phải đặt trong dấu { }
Giáo trình Lập trình C căn bản Trang 56
Trường THẾ GIỚI TIN HỌC – 39 Nguyễn Sơn Hà, P5, Q3 – ĐT: 8.344.480 – Website: www.infoworldschool.com
• Lưu đồ
) Trước tiên biểu thức được kiểm tra
nếu sai thì
kết thúc vòng lặp while
(khối lệnh không được thi hành 1 lần nào)
nếu đúng
thực hiện khối lệnh;
lặp lại kiểm tra biểu thức
+ Biểu thức: có thể là một biểu thức hay nhiều biểu thức con. Nếu là nhiều biểu thức
con thì cách nhau bởi dấu phẩy (,) và tính đúng sai của biểu thức được quyết định bởi biểu thức
con cuối cùng.
+ Trong thân while (khối lệnh) có thể chứa một hay nhiều cấu trúc điều khiển khác.
+ Trong thân while có thể sử dụng lệnh continue để chuyển đến đầu vòng lặp (bỏ qua các
câu lệnh còn lại trong thân).
+ Muốn thoát khỏi vòng lặp while tùy ý có thể dùng các lệnh break, goto, return như
lệnh for.
Ví dụ 11: Viết chương trình in ra câu "Vi du su dung vong laptop while" 3 lần.
Dòng File Edit Search Run Compile Debug Project Option Window Giúp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/* Chuong trinh in ra cau "Vi du su dung vong laptop while" 3 lan */
#include
#include
#define MSG "Vi du su dung vong laptop while.\n"
void main(void)
{
int i = 0;
while (i++ < 3)
printf("%s", MSG);
getch();
}
F1 Giúp Alt-F8 Next Msg Alt-F7 Prev Msg Alt - F9 Compile F9 Make F10 Menu
) Kết quả in ra màn hình
Vi du su dung vong laptop while.
Vi du su dung vong laptop while.
Vi du su dung vong laptop while.
_
Bạn thay 2 dòng 11 và 12 bằng câu lệnh
while(printf("%s", MSG), ++i < 3);
Chạy lại chương trình và quan sát kết quả.
Ví dụ 12: Viết chương trình tính tổng các số nguyên từ 1 đến n, với n được nhập vào từ bàn phím.
Dòng File Edit Search Run Compile Debug Project Option Window Giúp
1
2
3
4
5
/* Chuong trinh tính tong cac so nguyen tu 1 den n */
#include
#include
biểu thức
khối lệnh
Đúng
Sai
Vào
Ra
Giáo trình Lập trình C căn bản Trang 57
Trường THẾ GIỚI TIN HỌC – 39 Nguyễn Sơn Hà, P5, Q3 – ĐT: 8.344.480 – Website: www.infoworldschool.com
6
7
8
9
10
11
12
13
14
15
void main(void)
{
int i = 0, in, is = 0;
printf("Nhap vao so n: ");
scanf("%d", &in);
while (i++ < in)
is = is + i; //hoac is += i;
printf("Tong: %d", is);
getch();
}
F1 Giúp Alt-F8 Next Msg Alt-F7 Prev Msg Alt - F9 Compile F9 Make F10 Menu
) Kết quả in ra màn hình
Nhap vao so n : 5
Tong: 15.
_
Bạn thay các dòng từ 11 đến 12 bằng câu lệnh:
while(is = is+i, i++ < in);
Chạy lại chương trình, quan sát và nhận xét kết quả.
Ví dụ 13: Thay dòng for(; (c = getchar()) != DAU_CHAM; ) ở ví dụ 5 thành dòng while
((c = getchar()) != DAU_CHAM)
) Chạy lại chương trình, quan sát và nhận xét kết quả.
Ví dụ 14: Ở ví dụ 6, thay dòng int dem; thành dòng int dem = 0; , thay dòng for(idem=0;
(c = getchar()) != DAU_CHAM; ) thành dòng while ((c = getchar()) != DAU_CHAM)
) Chạy lại chương trình, quan sát và nhận xét kết quả.
Ví dụ 15: Ở ví dụ 7 và 8, thay dòng for( ; ; ) thành dòng wh...