Chuong 1 : On lai vé ng6n ngir C theo chuan ANSI
1.1. Cau trie co ban cia mét chuong trinh C
Trude tién ta xet vi du: Viét chuong trinh C hién dong théng bao “ Chao cdc ban
én véi chirong trinh C” ra man hinh.
Cu thé chong
* Chutong trinh thi du*/
my first program in C
‘include
#inelude
void main()
clrser();/* Cau Ignh xoa man hinh*/
printit
getch();
thio céc ban dén véi churong trinh CP
Khai bao tép tigu d3
‘Trong ngén ngit lap trinh C khi sir dung cae ham chuan trong ede thu vign chudn
cchiing ta phai khai béo tp tigu d&(header file) chia ede ham nguyén mau twong ting,
céc him 46, cde Iénh duge bit dau bing #include theo sau la tép tiéu dé
C6 hai cach viét nhu sau:
Céich 1: include <[duéng dint] tentep>
Vi dy: include
include
Cach 2: #inchide “[duing dn\jtentep”
‘Vi dy: #include “a:\Baitap\Bai2,C”
include
(Céch 1 tyedéng tim tentep trong thu mye INCLUDE
(Caich 2 tu déng tim tentep trong thur muc hign thi néu khéng cé thi tim trong thu
‘mye INCLUDE
‘Trong thi dy trén chiing ta e6 sir dung him printf...) la ham chudin durge khai bao
trong tép tigu dé stdio.h va ham getch(), elrser() dug khai bao trong tép tiéu déconio.h, Do 46 trong chuong trinh ¢6 hai ding khai béo sau 6 diu chyong trink
include
‘include
Chi thich va du két thite eau Kenh
Trong ngén ngit lap trinh C nhimg phan durge viét trong /*...*/ duge goi la phan
chi thich. Moi ky tw nim trong /*.../ khi dich chong trinh dich bo qua, ta duge phép
ding ching dé minh hoa cho eéc thanh phn chwong trinh Lam cho chuong trinh d&
higu, mach lac. Loi chu thich e6 thé xudt hign bat ky dau trong chong trinh va ¢6 thé
trai trén nhiéu dong khdc nhau trong chuong trinh,
‘Trong chuong trinh viét bing ngén ng C mai cau Iénh cé thé viét trén mot hay.
nhiéu dong va phai két thie bing du chm phiy()
1.2. Cae yéu t6 co bin cia ngén ngir C - ANSI
1.2.1 BO chit viet
[Ngon ngit C duge xay dyng trén 66 ky ty sau
Cie chit efi hoa: ABC ....Z
Céc chit edi thuonga be
Céc chit s6:0 12...9
Cie du chim céu: ,.;:/ 2] (} @#8%**&()+-=<> 5%
(Cée du ngan edch khong nhin thay nhur dau edch, déu nhay céch tab, déu xudng.
dong
Du gach néi duéi_
1.2.2 Tir khoa
La nhiing tir 6 m6ty nghia hodn toan xée dinh trong chwrong trink:
Vidu: void struet class while
Khong durge ding ttr khos dé dat tén cho cdc hing, bién, mang, ham...
Tit khod phai viét bang chit thuimg
Vi du tir khoa viét din
Vi du tir khoa viét sai; Struct
struct1.23 Ten
La mot day ky tr duge ding dé chi tén hing, tén bién, tén mang, tén him...Tén
due tao thanh tir cée chit cdi a..z, A..Z, chit s6 0..9, déu gach duéi, Tén khong duge:
bat dau bang chit s6, chita céc ki ty dc bigt nhw dau céch, dau phép toan..
‘Tén khong durge dt tring véi tr khoa
\Vidu: Giai_Phuong_Trinh_Bac2
abel23
Chi y:
~Trong ngén ngtt lgp trinh C tén duge phan bigt chit hoa va chit throng
Thong thudng chit hoa thurdng duuge diing dé dat tén cho céc hing, con cc dai hrong,
hdc thi ding cht thudng,
4 MOt sé kiéu dit ligu co bain
- Kiéu ky ty (Char)
M6t gid tri kiéu char chiém m9t byte va biéu dign duge mot ky ty trong bang ma
ASCTL
= Kiéu s6 nguyén
(M6t gid tri kigu sé nguyén 18 mot phan tir cia mot tap cdc sO nguyén ma may tinh ¢6
thé bigu dign. Trong ngén ngtt lép trinh C cé nhidu kigu dit ligu s8 nguyén véi dai gid
trj kha nhau ey thé:
Kigu Pham vi biéu dign Kich thurderbyte)
Char “128 > 127 1
Unsigned char 05255 i
Int “32768-32767 2
Unsigned int 0565535 2
‘Short int “32768->32767 2
Unsigigned Short 0 32767 2
Long Int “2I4TAR3648->-214 7483647 4
Unsigigned Long. 70> 4294967295 4
- Kiéu s6 thye
Mot gi tri kigu 6 the: 1a mét phan tir ciia mét tép ede 56 thre ma may tinh c6 thé