&

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  #include  int main() {       cout << "Hello World! ";

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 #include /*Ngày thực hiện Tên sinh viên: */ void main() {

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 ” <

}

&

VC

BB

ư ệ Th  vi n C

ề ứ

ượ

ệ t  b i  l p  trình  viên  ư c  đ t  trong  th   vi n  và

 T t c  trình biên d ch C đ u ch a m t  ộ ị ẩ th  vi n hàm chu n  ế ở ậ c  vi ặ ầ

ế t

ấ ả ư ệ  M t  hàm  đ ộ ể ượ có  th   đ ượ đ ộ ố c dùng khi c n thi ị

 M t  s   trình  biên  d ch  cho  phép  thêm

ư ệ ẩ hàm vào th  vi n chu n

ầ ạ

 M t s  trình biên d ch yêu c u t o m t  ộ ị

1919

ộ ố ư ệ th  vi n riêng

&

VC

Các tập tin th  viư ện thông dụng

BB

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(), ...

&

VC

Các tập tin th  viư ện thông dụng

BB

 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(), …

&

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.

2222

ữ ậ

NMLT ­ Gi

i thi u ngôn ng  l p trình C