&
VC
ộ
N i dung
BB
Giới thiệu
1
Bộ từ vựng của C
2
Cấu trúc chương trình C
3
Một số ví dụ minh họa
11
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
4
&
VC
ớ
ệ
Gi
i thi u
BB
Giới thiệu
Dennis Ritchie tại Bell Telephone năm
1972.
Tiền thân của ngôn ngữ B,
KenThompson, cũng tại Bell Telephone. Là ngôn ngữ lập trình có cấu trúc và phân biệt chữ Hoa - thường (case sensitive)
ANSI C.
22
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
&
VC
ớ
ệ
Gi
i thi u
BB
Ưu điểm của C/C++
Rất mạnh và linh động, có khả năng thể
hiện bất cứ ý tưởng nào.
Được sử dụng rộng rãi bởi các nhà lập
trình chuyên nghiệp.
Có tính khả chuyển, ít thay đổi trên các hệ
thống máy tính khác nhau.
Rõ ràng, cô đọng. Lập trình đơn thể, tái sử dụng thông qua
hàm.
33
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
&
VC
ớ
ệ
Gi
i thi u
BB
Môi trường phát triển tích hợp IDE (Integrated
Development Environment) Biên tập chương trình nguồn (Trình EDIT). Biên dịch chương trình (Trình COMPILE). Chạy chương trình nguồn (Trình RUNTIME). Sửa lỗi chương trình nguồn (Trình DEBUG).
44
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
.C/.CPP .OBJ .EXE
&
VC
ớ
Gi
ệ i thi u
BB
ướ
ể
ươ
Các b
c trong chu trình phát tri n ch
ng trình
55
&
VC
ớ
ệ
Gi
i thi u
BB
Môi trường lập trình
Borland C++ 3.1 for DOS. C Free
C++ 6.0, Win32 Console Application.
66
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
&
VC
ớ
Gi
ệ i thi u
BB
ườ
ệ ủ
Môi tr
ng làm vi c c a C++
1. Khởi động - Thoát khỏi C++
lên biểu
nhấp
Khởi động C++ : nhấp đúp chuột tượng của chương trình C++. Giả sử dùng borlandc, vào thư mục đúp BorLandC\Bin, chuột vào file BC.exe
Thoát khỏi C++: nhấn tổ hợp
phím Alt-X.a
77
&
VC
ớ
Gi
ệ i thi u
BB 2. Một số các phím nóng hay dùng Các phím kích hoạt menu: Alt+chữ cái đại diện cho nhóm menu đó. Ví dụ Alt-F-O mở menu File để chọn Open mở file F1: mở cửa sổ trợ giúp. F2: ghi tệp lên đĩa. F3: mở tệp cũ ra sửa chữa hoặc soạn thảo tệp mới. F4: chạy chương trình đến vị trí con trỏ. F5: Thu hẹp/mở rộng cửa sổ soạn thảo. F6: Chuyển đổi giữa các cửa sổ soạn thảo. F7: Chạy chương trình theo từng lệnh, kể cả các
lệnh trong hàm con.
88
F8: Chạy chương trình theo từng lệnh trong hàm
chính.
&
VC
ớ
Gi
ệ i thi u
BB
2. Một số các phím nóng hay dùng F9: Dịch và liên kết chương trình. Ctrl-F9: Chạy chương trình. Ctrl-Insert: Lưu khối văn bản được đánh dấu vào
bộ nhớ đệm.
Shift-Insert: Dán khối văn bản trong bộ nhớ đệm
vào văn bản tại vị trí con trỏ.
Shift-Delete: Xoá khối văn bản được đánh dấu, lưu
nó vào bộ nhớ đệm.
Ctrl-Delete: Xoá khối văn bản được đánh dấu
(không lưu vào bộ nhớ đệm).
99
Alt-F5: Chuyển sang cửa sổ xem kết quả của
chương trình vừa chạy xong. Alt-X: thoát C++ về lại Windows.
&
VC
ộ ừ ự
ủ
B t
v ng c a C
BB
Các ký tự được sử dụng
Bộ chữ cái 26 ký tự Latinh A, B, C, …, Z,
a, b, c, …, z
Bộ chữ số thập phân : 0, 1, 2, …, 9 Các ký hiệu toán học : + – * / = < > ( ) Các ký tự đặc biệt : . , : ; [ ] % \ # $ ‘ Ký tự gạch nối _ và khoảng trắng ‘ ’
1010
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
&
VC
ộ ừ ự
ủ
B t
v ng c a C
BB
Từ khóa (keyword)
Các từ dành riêng trong ngôn ngữ. Không thể sử dụng từ khóa để đặt tên cho biến,
1111
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
hàm, tên chương trình con.
&
VC
ộ ừ ự
ủ
B t
v ng c a C
BB
Tên/Định danh (Identifier)
Một dãy ký tự dùng để chỉ tên một hằng số, hằng ký tự, tên một biến, một kiểu dữ liệu, một hàm một hay thủ tục.
Không được trùng với các từ khóa và được tạo thành từ các chữ cái và các chữ số nhưng bắt buộc chữ đầu phải là chữ cái hoặc _.
1212
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
Số ký tự tối đa trong một tên là 255 ký tự và được dùng ký tự _ chen trong tên nhưng không cho phép chen giữa các khoảng trắng.
&
VC
ộ ừ ự
ủ
B t
v ng c a C
BB
Ví dụ Tên/Định danh (Identifier)
Các tên hợp lệ: GiaiPhuongTrinh, Bai_Tap1 Các tên không hợp lệ: 1A, Giai Phuong Trinh Phân biệt chữ hoa chữ thường, do đó các tên sau
đây khác nhau:
1313
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
• A, a • BaiTap, baitap, BAITAP, bAItaP, …
&
VC
ộ ừ ự
ủ
B t
v ng c a C
BB
Dấu chấm phẩy ;
Dùng để phân cách các câu lệnh. Ví dụ:cout<<“Hello World!”; cout<<“\n”;
Câu chú thích
Đặt giữa cặp dấu /* */ hoặc // (C++) Ví dụ: /*Ho & Ten: NVA*/, // MSSV: 0712078
1414
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
Hằng ký tự và hằng chuỗi Hằng ký tự: ‘A’, ‘a’, … Hằng chuỗi: “Hello World!”, “Nguyen Van A” Chú ý: ‘A’ khác “A”
&
VC
ấ
C u trúc ch
ương trình C
BB
#include “…”; // Khai báo file tiêu đề
int x; void Nhap(); // Khai báo biến hàm // Khai báo hàm
// Hàm chính
void main() {
// Các lệnh và thủ tục
1515
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
}
&
VC
ấ
C u trúc ch
ương trình C
BB
/* My second program in C/C++ with more comments
Author: Novice programmer
Date: 01/01/2008
*/
#include
getch();
return 0; }
1616
Chú thích
&
VC
ấ
C u trúc ch
ương trình C
BB
Hàm main() Chương trình C được chia nhỏ thành những đơn
vị gọi là hàm
Không kể có bao nhiêu hàm trong chương trình, Hệ điều hành luôn trao quyền điều khiển cho hàm main() khi một chương trình C được thực thi.
Theo sau tên hàm là dấu ngoặc đơn Dấu ngoặc đơn có thể có chứa hay không chứa
1717
những tham số
&
VC
Ví dụ
BB
#include
1818
ớ
ữ ậ
ệ
NMLT Gi
i thi u ngôn ng l p trình C
int x, y, tong;//khai báo biến
cout<<“Nhap hai so nguyen: ”;
cin>>x>>y;
tong = x + y;
cout<<“Tong hai so la ” < } ề ứ ượ ệ t b i l p trình viên
ư
c đ t trong th vi n và ế
t ấ ả
ư ệ
M t hàm đ
ộ
ể ượ
có th đ
ượ
đ
ộ ố c dùng khi c n thi
ị ư ệ ẩ
hàm vào th vi n chu n ầ ạ 1919 ộ ố
ư ệ th vi n riêng 2020 stdio.h(C), iostream.h(C++): Tập tin định nghĩa
các hàm vào/ra chuẩn (standard input/output)
gồm các hàm:
Xuất dữ liệu (printf())/cout).
Nhập giá trị cho biến (scanf())/cin).
Nhận kí tự từ bàn phím (getc()).
In kí tự ra màn hình (putc()).
Nhập một chuỗi kí tự từ bàn phím (gets()).
Xuất chuỗi kí tự ra màn hình (puts()).
Xóa vùng đệm bàn phím (fflush()), fopen(),
fclose(), fread(), fwrite(), getchar(), putchar(), ... 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 clrscr(),
getch(), getche(), getpass(), cgets(), cputs(),
putch(), clreol(), … math.h: Tập tin định nghĩa các hàm toán học gồm
các hàm abs(), sqrt(), log(), log10(), sin(), cos(),
tan(), acos(), asin(), atan(), pow(), exp(), … 2121 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(), farmalloc(), farcalloc(),
farfree(), … io.h: Tập tin định nghĩa các hàm vào ra cấp thấp
gồm các hàm open(), _open(), read(), _read(),
close(), _close(), creat(), _creat(), creatnew(),
eof(), filelength(), lock(), … 2222 ớ ữ ậ ệ NMLT Gi i thi u ngôn ng l p trình C&
VC
BB
ư ệ
Th vi n C
T t c trình biên d ch C đ u ch a m t
ộ
ị
ẩ
th vi n hàm chu n
ế ở ậ
c vi
ặ
ầ
M t s trình biên d ch cho phép thêm
M t s trình biên d ch yêu c u t o m t
ộ
ị
&
VC
Các tập tin th viư ện thông dụng
BB
&
VC
Các tập tin th viư ện thông dụng
BB
&
VC
ậ
ế
Bài t p lý thuy t
BB
1. Tên (định danh) nào sau đây đặt không hợp
lệ, tại sao?
Tin hoc co SO A, 1BaiTapKHO
THucHaNH, NhapMon_L@pTrinH
1. Câu ghi chú dùng để làm gì? Cách sử dụng
ra sao? Cho ví dụ minh họa.
2. Trình bày cấu trúc của một chương trình C.
Giải thích ý nghĩa của từng phần trong cấu
trúc.

