Tải bản đầy đủ (.pdf) (46 trang)

Ngôn Ngữ Lập Trình C Một Số Khái Niệm Cơ Bản

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (375.74 KB, 46 trang )

NGÔN NGỮ LẬP TRÌNH C

Một số khái niệm cơ bản
Ninh Thị Thanh Tâm
Khoa CNTT – HV Quản lý Giáo dục


Mục đích
Làm quen với các kiểu dữ liệu cơ sở
 Biết cách khai báo biến, hằng
 Làm quen với các toán tử


 toán

tử gán
 toán tử điều kiện


Biết cách sử dụng hàm vào/ra


Nội dung


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












Bộ kí tự
Tên
Từ khóa
Hằng
Biến

Các kiểu dữ liệu cơ sở
Biểu thức
Các phép toán
Hàm vào/ra



printf()
scanf()


Bộ kí tự
26 chữ cái hoa, 26 chữ cái thường
 10 chữ số thập phân
 Kí hiệu toán học: + - * / = < >
 Dấu cách: . ; , : space
 Dấu ngoặc ( ) [ ] { }
 Kí hiệu đặc biệt: _ ? % # & ^ \ !...




Tên


Là một dãy các kí tự (chữ cái, chữ số, dấu
gạch dưới)
đầu bằng chữ cái hoặc dấu gạch dưới
 Phân biệt chữ hoa và chữ thường
 Độ dài mặc định 32
 Ví dụ: ab, _hoa, a_1…
 Bắt


Từ khóa


Là tên được định nghĩa trước với ý nghĩa
xác định, không thể thay đổi
 Không

được dùng vào việc khác
 Không được đặt tên mới trùng với từ khóa
 Ví dụ: char, const, do while, struct…


Các kiểu dữ liệu cơ sở (tiếp)





Số float có độ chính xác là 6 chữ số sau dấu
chấm thập phân
Số double có độ chính xác là 15 chữ số sau dấu
chấm thập phân
Một số tiền tố đi kèm kiểu dữ liệu cơ sở
 short
 long

(ngầm định với char, int)
 unsigned
 signed


Các kiểu dữ liệu cơ sở
Tên
char
int
float

Ý nghĩa

Phạm vi

Kích thước

Kí tự

-128 ÷ 127


1 byte

Số nguyên

-32768 ÷ 32767

2 byte

±3.4E-38 ÷ ±3.4E+38

4 byte

±1.7E-308 ÷ ±1.7E+308

8 byte

Số thực dấu
phẩy động, độ
chính xác đơn
double Số thực dấu
phẩy động, độ
chính xác đơn


Hằng



Là những giá trị có đại lượng không đổi khi thực

hiện chương trình (CT)
Định nghĩa hằng tượng trưng
 Toán

tử #define
 Cú pháp: #define <tên> <giá trị>
 CT, CT dịch thay thế mọi xuất hiện của <tên> bằng
<giá trị>


Định nghĩa biến hằng
 Từ

khóa: const
 Cú pháp: const <tên kiểu> <tên biến hằng>=<giá trị>;
 CT dịch cấp phát vùng nhớ tương ứng với kiểu của
hằng và gán giá trị


Hằng (tiếp)


Ví dụ
#define MAX 80
#define newline ‘\n’
cont int MAX = 100;
const char newline = ‘\n’;


Biến



Cú pháp khai báo biến:
<Kiểu> <tên biến>;
báo biến sau kí hiệu bắt đầu khối lệnh
hay thân hàm
 Khởi đầu giá trị cho biến: Vừa khai báo, vừa
gán giá trị
 Khai


Biến (tiếp)


Ví dụ:
 int

x, y, z;
 float a, b, c;
 char ch1, ch2;
 int i = 1, j = 5, k;
 char c1 =‘A’, c2 = ‘\n’;


Biểu thức



Định nghĩa: là kết quả của việc ghép nối các
toán tử và các toán hạng

Sử dụng:
 Vế

phải của lệnh gán
 Làm tham số thực của các hàm
 Làm chỉ số
 Trong các câu lệnh if, for, while, do while


Biểu thức trong C:
 Biểu

thức gán
 Biểu thức điều kiện


Phép toán số học
Toán tử

Ý nghĩa

-

Đổi dấu (thực, nguyên)

+

Cộng 2 số (thực, nguyên)

-


Trừ (thực, nguyên)

*

Nhân (thực, nguyên)

/

Chia (thực, nguyên)

%

Chia lấy số dư


Phép toán quan hệ
Toán tử

Ý nghĩa

>

So sánh lớn hơn

>=

So sánh lớn hơn hoặc bằng

<


So sánh nhỏ hơn

<=

So sánh nhỏ hơn hoặc bằng

==

So sánh bằng nhau

!=

So sánh không bằng nhau


Phép toán lô-gic
Liên từ
&&
||
!

Ý nghĩa

Hoặc

Ví dụ
3<7 && 8>6 có
giá trị 1


n <=0 || n>=100
Với n=5, BT = 0
Phủ định !12 có giá trị 0
!0 có giá trị 1


Phép toán thao tác trên bit


Cho phép xử lý đến Phép toán
từng bit của một số &
nguyên
|
 Không

dùng cho float
^
hoặc double

Ý nghĩa
VÀ nhị phân
HOẶC nhị phân
HOẶC có loại trừ

<<

Dịch trái

>>


Dịch phải

~

Bù 1


Phép toán thao tác trên bit (tiếp)
1&1=1

1|1=1

1^1=0

~1=0

1&0=0

1|0=1

1^0=1

~0=1

0&1=0

0|1=1

0^1=1


a << n = a*2n

0&0=0

0|0=0

0^0=0

a >> n = a/2n



C phân biệt
Phép dịch chuyển số học trên giá trị nguyên, bảo toàn bit dấu
 Phép dịch chuyển lô-gic, thực hiện trên giá trị unsigned.



Ví dụ
0xa1b6

&

0xff

=

0xb6

0xa1b6


|

0xff

=

0xa1ff

0xa1b6

^

0xffff

=

0x5e49

0xa1b6

<<

8

=

0xb600

0xa1b6


>>

8

=

0xa1

=

0x5e49

~0xa1b6


Biểu thức gán


<Biến> = <Biểu thức>
 Nếu

thêm dấu ; ta thu được câu lệnh gán

Dạng thông thường

Dạng thu gọn

Ý nghĩa


i=i+k

i += k

Tự cộng

i=i–k

i -= k

Tự trừ

i=i*k

i *= k

Tự nhân

i=i/k

i /= k

Tự chia

i=i%k

i %= k

Tự chia dư


i=i&k

i &= k

Tự và

i=i|k

i |= k

Tự hoặc

i=i^k

i ^= k

Tự bù

i = i >> k

i >>= k

Tự dịch bit phải

i = i <
i <<= k

Tự dịch bit trái



Biểu thức điều kiện


BT1? BT2 : BT3
 BT1,

BT2, BT3: biểu thức
 BT1 != 0, biểu thức điều kiện nhận giá trị cho
bởi BT2
 BT1 = 0, biểu thức điều kiện nhận giá trị cho
bởi BT3


Biểu thức điều kiện (tiếp)


Ví dụ
lệnh xác định giá trị lớn nhất giữa hai số
a và b
max2= (a>b)? a : b;
 Câu lệnh xác định giá trị lớn nhất giữa ba số
a, b và c
max3= (a>b)? (a>c?a:c) : (b>c?b:c);
 Câu


Phép toán tăng giảm một đơn vị
Toán tử
Tăng một đơn vị

Giảm một đơn vị


Dạng tiền tố
++n
--n

Dạng hậu tố
n++
n--

Khi phép toán nằm trong một biểu thức khác
tố: thay đổi giá trị của biến trước khi sử dụng
 Hậu tố: giá trị cũ của biến được sử dụng, thay đổi giá
trị
 Tiền


Ví dụ
Phép toán

Tương đương

i = j++;
i = ++j;

i = j; j = j + 1;
j = j + 1; i = j;

i = j--;

i = --j;

i = j; j = j - 1;
j = j - 1; i = j;


Lấy địa chỉ biến
Toán tử: &
 Cú pháp: &<tên biến>


 Không

sử dụng toán tử cho hằng, biểu thức


×