GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH C
Chào các bạn, chúng ta lại quay trở lại với loạt bài
hướng dẫn cơ bản ngôn ngữ lập trình C. Trong bài cuối này tôi sẽ giới thiệu đến
các bạn các vấn đề còn lại của ngôn ngữ lập trình C : Hàm, cấu trúc chương trình cơ bản trong C
và việc chuyển đổi các hệ thống sốtrong C (thập
phân, nhị phân, thập lục phân …v…v..).
VII. Hàm trong C
v Định
nghĩa :
·
Là một đơn vị độc lập
của chương trình, có tên, đầu vào và đầu ra.
·
Có chức năng giải quyết một số vấn đề chuyên biệt cho chương trình chính.
·
Được gọi nhiều lần
với các tham số khác nhau.
·
Được sử dụng khi
có nhu cầu
·
Các hàm có vai
trò ngang nhau, do đó không cho phép xây
dựng hàm bên trong hàm khác.
· Cấu trúc hàm chia làm
2 phần chính :
·
Tiêu đề hàm
·
Thân hàm
· Cú pháp khai báo hàm
:
Trong đó
:
·
<kiểu trả về> : Kiểu bất kì của C (Char, int, long, float, …). Nếu
không trả về thì là kiểu void.
·
<tên hàm>: Theo quy tắc đặt tên
trong C. Chú ý cần đặt tên hàm mang tính gợi nhớ vơi chức năng mà hàm thực hiện.
·
<danh sách tham số>
: Tham số hình thức đầu vào. Nếu có nhiều tham số đầu vào ta có thể phân cách bằng
dấu “ ,”
·
Trong trường hợp hàm có giá trị trả về
ta có câu lệnh [return <giá trị>;]. Chú ý với lệnh return có
thể trả giá trị tùy ý có thể là 0, 1, …v..v… hoặc giá trị tính toán trong hàm.
Việc lựa chọn cho giá trị trả về do ta lựa chọn.
7.1. Tham số của hàm
· Tham số hình thức
Là tham số
mà ta ghi trong nguyên mẫu hay khai báo hàm và không phải là một biểu thức. tham số
hình thức có thể là biến thường, con trỏ hoặc với lập trình C ta còn có thể khai báo dưới
dạng tham biến.
VD: void tinh (int KQ)void tinh (int *KQ)
{}{}
· Tham số thực
Là giá trịmà
ta ghi sau khi gọi hàm và
đó có thể là một biểu thức. Tham số thực được chia 2 loại.
·
Tham chiếu : Là tham số thực ta truyền dạng con trỏ hay địa
chỉ, tham chiếu có thể ghi nhận lại những kết quả vừa tính toán
trong khi hàm kết thúc.
·
Tham trị : Là tham số thựcmà ta truyền vào cho hàm dạng biến, tham
trị không bảo lưu lại những thay đổi giá trị của nó được tính toán
trong hàm. Sau khi hàm kết thúc
7.2. Phạm vi biến, mảng
v Biến :
·
Biến toàn cục:
Là biến được khai báo bên ngoài hàm,
là biến được sử dụng mọi nơi trong chương trình. Biến toàn cục khá đặc biệt vì
nó cos theer nhận các giá trị thay đổi trên hàm, có thể tác dụng với các chương
trình theo sau nó.
·
Biến cục bộ :
Là biến được khai báo bên trong thân hàm
hay tại tham số của hàm và nó chỉ tồn tại khi hàm hoạt động, khi hàm kết thuc
biến sẽ được giải phóng và không tồn tại nữa.
Các biến cục bộ
của các hàm riêng biệt có thể đặt tên giống nhau
tùy ý, nhưng các biến cục bộ của các hàmkhông được trùng tên với biến toàn cục.
v Mảng :
Ta
có các đặc điểm của mảng cục bộ và mảng toàn cục tương tự với biến.
7.3. Lời gọi hàm
Thường việc gọi hàm bao gồm : Gọi tên
của hàm đồng thời truyền các đối số (hằng, biến, biểu thức)
cho các tham số theo đúng thứ tự đã được khai báo trong hàm.
Do có 2 dạng hàm: đó là hàm có giá trị trả về và hàm không có
giá trị trả về nên ta có lời gọi hàm cho 2 loại hàm này cũng có khác
nhau chút xíu.
v Hàm có giá trị trả về:
int tinh (unsigned char x) {}
Cần
có một biến tạo trước để nhận giá trị trả về từ hàm.
Cú pháp gọi
hàm: intx; x= <tên hàm>(<đối số>);=> x=tinh (10);
v Hàm không có giá trị
trả về: void tinh (unsigned char x) {}
Cú pháp gọi hàm: <tên hàm>(<đối số>);=>tinh
(10);
7.4. Cấu trúc chương trình trong C
7.4.1. Cách khai báo thư viện, lệnh dịch trong C
v Để chèn tệp, các thư
viện vào chương trình nguồn ta sử dụng cú pháp :
·
#include<tên thư viện.h> // ý nghĩa: Tìm tới thư viện nguồn trong
CS1/INC ổ cài đặt.
·
#include“tên thư viện.h” // ý nghĩa: Tìm thư viện ngay tại forder
khởi tạo trước, sau đó mới tìm đến nguồn.
v Định nghĩa Macro, xóa
bỏ định nghĩa macro
Cú
pháp định nghĩa: #define
VD
: #defineMAX
100
Cú
pháp hủy định nghĩa:#undef
VD: #defineSIX6
#undefSIX
6
#defineSIX 6
v Các lệnh chỉ thị biên
dịch trong các thư viên.
·
Lệnh IF , endif :
o
#ifbiểu thức hằng
đoạn
chương trình
#endif
o
#ifbiểu thức hằng
đoạn
chương trình 1
#else
đoạn
chương trình 2
#endif
o
#ifbiểu thức hằng 1
đoạn chương trình 1
#elifbiểu thức hằng 2
đoạn chương trình 2
#elifbiểu thức hằng n
đoạn chương trình n
[
#else
Đoạn chương trình n+1
]
=> Nếu có
#endif
·
Lệnh :
#ifdef - #endif=> Biên dịch nếu đã được định nghĩa
#ifndef-
#endif=>
Biên dịch nếu chưa được định nghĩa
VD:
#ifdeften_macro
đoạn chương trình
#endif
Nếu ten_macrođã được định nghĩa bởi #define thì trình biên dịch C sẽ dịch đoạn chương
trình nằm giữa #ifdefvà #endif. Ngược
lại bỏ qua. Các trường hợp của if cũng tương tự.
v Cấu trúc
1 chương trình trong C
1. Khai
báo thư viện
2. Định
nghĩa biến,
hằng
(nếu có)
3. Có
hai cách viết chương trình đến bước 3 này :
v Cách 1 :
· Khai
báo nguyên mẫu
hàm con
· Khai
báo hàm chính
· Khai
báo hàm con đầy
đủ
v Cách 2 :
· Khai
báo hàm con đầy
đủ
· Khai
báo hàm chính
VIII. Các hệ đếm trong C.
Tôi sẽ giới thiệu khái
quát qua về một số các hệ thống số dùng phổ biến trong C:
8.1. Hệ thập phân :
Là hệ cơ số 10
gồm 10
chữ số :
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Hệ thập phân là 1 hệ thống theo vị trí
vì giá trị 1 chữ số phụ thuộc vị trí của nó
VD: 345
3
: Biểu thị hằng trăm mang giá trị lớn nhất (MSD)
4
: Biểu thị hàng chục
5
: Biểu thị hàng đơn vị, mang giá trị nhỏ nhất (LSD)
Với 1 số thập phân lẻ, ta dùng dấu
chấm thập phân để chia phần nguyên và phần phân số.
VD : 435.35
=
4.102
+ 3.101 + 5.100 + 3.10-1 + 5.10-2
= > 1 số thập phân là tổng của
các tíchgiữa
các giá trị
của chữ sốvới giá trị vị trí tương ứng số đó.
8.2. Hệ nhị phân
Trong hệ thống số, hệ nhị phân
chỉ có 2 giá trị số 0 và 1. Nhưng có thể biểu diễn bất kì đại lượng nào mà hệ thập phânvà
các hệ thống số khác có thể biểu diễn được.
Tuy nhiên nhiên có nhược điểm đó là hệ nhị phânlà
ngôn ngữ máy nên để hiểu được ý nghĩa của nó cần có những quy tắc nhất định, việc biểu diễn một đại lượng nhất
định cũng cồng kềnh gây khó khăn cho người sử dụng.
Hệ nhị phân cũng là hệ
thống sô theo vị trí. Mỗi nhị phânđều có giá trị riêng, tức dạng số, là lũy thừa của 2.
Với số nhị
phân lẻ ta cũng dùng dấu chấm thập phân để
cách phần nguyên và phần
lẻ.
1 con số
trong số nhị
phân được gọi là 1 bit, bít đầu hàng tận
cùng bên trái có giá trị cao nhất, bít cuối hàng tận cùng bên phải có giá trị nhỏ nhất
VD:
1100 = 1.23 + 1.22 + 0.21 + 0.20
11.01= 1.21 + 1.20 + 0.2-1 +
1.2-2
8.3. Hệ thập lục phân
Là hệ sử dụng cơ số 16,
nghĩa là có 16 chữ, số tổng hợp: Gồm: 0->9 và 6 chữ cái :A, B, C, D, E, F.
Một số trong hệ cơ số 16
biểu diễn 1 nhóm 4 số nhị phân.
Mọi thắc mắc vui lòng liên hệ qua:
Facebook: Rid HaUI
Gmail: dienturid@gmail.com
0 nhận xét:
Đăng nhận xét