SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
Trường Đại học Sư phạm
Khoa Tin	
  học
Bài giảng 2.1
Biến và kiểu
Nội dung
• Biến
• Tên biến
• Khai báo biến
• Hằng	
  (const)
• Biểu thức
• Phép gán
• Các kiểu cơ bản
• Xuất qua	
  hàm printf()
• Nhập bằng hàm scanf()
• Định dạng kiểu dữ liệu cơ bản và chuỗi
2014 Nguyễn	
  Thanh	
  Tuấn 2
Biến
• Được sử dụng để lưu một mảnh dữ liệu.
• Được gọi là biến vì có thể thay đổi giá trị lưu trữ.
• Biến có tên,	
  kiểu và giá trị lưu trữ.
– Tên biến:	
  tên cần đơn nhất để xác định giá trị và lấy lại
giá trị lưu trữ.
– Kiểu:
• Int:	
  cho số nguyên
• double:	
  cho số thực.
• Mỗi biến chỉ lưu giá trị của một kiểu duy nhất.
2014 Nguyễn	
  Thanh	
  Tuấn 3
Biến
2014 Nguyễn	
  Thanh	
  Tuấn 4
Tên biến
• Là một chuỗi ký tự có độ độ dài xác định (tùy vào
trình biên dịch,	
  chừng 255	
  ký tự).
• Gồm chữ hoa,	
  chữ thường (a-­‐z,	
  A-­‐Z),	
  số (0-­‐9)	
  và
dấu gạch dưới (“_”).
• Không có khoảng trắng và các ký tự đặt biệt khác.
• Phải bắt đầu bằng một chữ hoặc dấu gạch dưới
(“_”).
• Không được trùng với từ khóa của chương trình.
• Phân biệt chữ hoa,	
  chữ thường.
2014 Nguyễn	
  Thanh	
  Tuấn 5
Quy định đặt tên biến
• Là danh từ hoặc đoạn danh từ.
• Từ đầu tiên viết thường,	
  từ còn lại viết hoa
chữ cái đầu.
• Không sử dụng khoảng trắng giữa các từ.
• Ví dụ:	
  theFontSize,	
  roomNumber,	
  xMax,	
  yMin,	
  
xTopLeft và thisIsAVeryLongVariableName
2014 Nguyễn	
  Thanh	
  Tuấn 6
Các lưu ý	
  khi đặt tên
• Chọn tên có ý	
  nghĩa với vai trò của biến.	
  Vd:	
  
numberOfStudentshay	
  numStudents.
• Không dùng các tên vô nghĩa như:	
  a,	
  b,	
  c,	
  d,	
  i,	
  j,	
  k,	
  i1,	
  
j99…
• Tránh dùng tên là một chữ đơn trừ khi dùng các tên
như x,	
  y,	
  z	
  cho tọa độ,	
  i cho đếm.
• Có thể dùng tên dài hơn 30	
  ký tự miễn có nghĩa.
• Thận trọng khi dùng danh từ số nhiều,	
  số ít khi đặt
tên biến.	
  Vd:	
  row	
  để chỉ một hàng đơn,	
  rows	
  để chr
nhiều hàng (dùng đặt tên mảng của các hàng).
2014 Nguyễn	
  Thanh	
  Tuấn 7
Khai báo biến
2014 Nguyễn	
  Thanh	
  Tuấn 8
//  Khai báo một biến với kiểu dữ liệu
type  identifier;
//  Khai báo nhiều biến cùng kiểu,  cách nhau bởi dấu phẩy
type  identifier-­‐1, identifier-­‐2, ..., identifier-­‐n;
//  Khai báo và gán cho một giá trị ban  đầu
type  identifier = value;
//  Khai bái nhiều biến và khởi tạo giá trị
type  identifier-­‐1 = value-­‐1, ..., identifier-­‐n = value-­‐n;
int option;
double  sum,  difference,  product,  quotient;
int magicNumber =  88;
double  sum  =  0.0,  product  =  1.0;
Lưu ý
• Cần khai báo biến trước khi dùng
• Mỗi biến chỉ có một kiểu duy nhất.
• Mỗi biến chỉ khai báo một lần
• Có thể khai báo biến bất kỳ đâu trong chương
trình và trước khi dùng (Nên khai báo ngay khi
dùng lần đầu).
• Kiểu của biến không thể thay đổi trong
chương trình.
2014 Nguyễn	
  Thanh	
  Tuấn 9
Biến không khởi tạo
1
2
3
4
5
6
7
8
#include  <stdio.h>
int main()  {
int number;                     //  Khai báo không khởi tạo
printf("%dn",  number);   //  Sử dụng trước khi khởi tạo
//  Không cảnh báo/lỗi,  nhưng kết quả sai
return  0;
}
2014 Nguyễn	
  Thanh	
  Tuấn 10
Hằng
• Là biến không thể thay đổi.
• Khai báo với từ khóa const.
• Giá trị không đổi khi chương trình thực thi.
• Phải được khởi tạo khi khai báo.
• Vd
const double	
  PI	
  =	
  3.1415926
• Đặt tên hằng:	
  Sử dụng từ in	
  hoa,	
  kết hợp với
nhau bởi dấu gạch dưới.	
  Vd:	
  MIN_VALUE,	
  
MAX_SIZE.
2014 Nguyễn	
  Thanh	
  Tuấn 11
Biểu thức
• Biểu thức là tổ hợp các phép toán (+,	
  -­‐,	
  *,	
  /	
  …)	
  
và toán hạng (biến hoặc giá trị)	
  và cho ra một
giá trị duy nhất của một kiểu xác định.
• Vd:
2014 Nguyễn	
  Thanh	
  Tuấn 12
1 + 2 * 3 // cho int 7
int sum, number;
sum + number // xác định một giá trị int
double principal, interestRate;
principal * (1 + interestRate) // xác định một giá trị double
Phép gán
• Một lệnh gán:
– Dùng để truyền giá trị cho một biến
– Định giá trị của một biến cho một biểu thức.
• Ví dụ:
2014 Nguyễn	
  Thanh	
  Tuấn 13
variable = literal-­‐value;
variable = expression;
Các kiểu cơ bản
• Kiểu số nguyên:	
  
– C	
  hỗ trợ các kiểu:	
  char,	
  short,	
  int,	
  long,	
  long	
  long.	
  
Là các kiểu có dấu (trừ char)
– Sử dụng từ khóa unsigned	
  [char	
  |	
  short	
  |	
  int |	
  
long	
  |	
  long	
  long]	
  để khai báo số nguyên không
dấu.
– Tổng cộng có 10	
  kiểu số nguyên.
2014 Nguyễn	
  Thanh	
  Tuấn 14
Các kiểu cơ bản
• Kiểu ký tự:
– Các ký tự (vd:	
  ‘a’,	
  ‘Z’,	
  ‘0’,	
  ‘9’)	
  là mã nguyên trong
bảng mã ASCII	
  – Kiểu char.
– Char	
  có thể là có dấu hoặc không dấu,	
  sử dụng với
từ khóa signed	
  hoặc unsighed.
2014 Nguyễn	
  Thanh	
  Tuấn 15
Các kiểu cơ bản
• Số con	
  trỏ động
– Có 3	
  kiểu con	
  trỏ động:	
  float,	
  double	
  và long	
  
double.
• float:	
  	
  ±1.40239846×10^-­‐45	
  :	
  ±3.40282347×10^38.	
  
• double:	
  ±4.94065645841246544×10^-­‐324	
  :	
  	
  
±1.79769313486231570×10^308
2014 Nguyễn	
  Thanh	
  Tuấn 16
Toán tử sizeof
2014 Nguyễn	
  Thanh	
  Tuấn 17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/*
*  In  khich thuoc cua cac kieu co  ban  (SizeofTypes.cpp).
*/
#include  <stdio.h>
int main()  {
printf("sizeof(char)  is  %d  bytes.n",  sizeof(char));
printf("sizeof(short)  is  %d  bytes.n",  sizeof(short));
printf("sizeof(int)  is  %d  bytes.n",  sizeof(int));
printf("sizeof(long)  is  %d  bytes.n",  sizeof(long));
printf("sizeof(long  long)  is  %d  bytes.n",  sizeof(long  long));
printf("sizeof(float)  is  %d  bytes.n",  sizeof(float));
printf("sizeof(double)  is  %d  bytes.n",  sizeof(double));
printf("sizeof(long  double)  is  %d  bytes.n",  sizeof(long  double));
return  0;
}
Xuất qua	
  hàm printf
• Nằm trong thư viện stdio (#include	
  <stdio.h>
• Sử dụng để in	
  output	
  ra console
printf(“Hello	
  worldn”);
• n:	
  ký tự newline,	
  chuyển con	
  trỏ sang	
  dòng
tiếp theo.
2014 Nguyễn	
  Thanh	
  Tuấn 18
Xuất qua	
  hàm printf
• Định dạng output	
  bằng printf():
printf(chuỗi được định dạng,	
  biến 1,	
  biến 2,	
  …);
2014 Nguyễn	
  Thanh	
  Tuấn 19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/*
*  Định dạng cho kiểu int (TestPrintfInt.c)
*/
#include  <stdio.h>
int main()  {
int number1  =  12345,  number2  =  678;
printf("Hello,  number1  is  %d.n",  number1);                               //  Định dạng một biến
printf("number1=%d,  number2=%d.n",  number1,  number2);         //  Định dạng 2  biến
printf("number1=%8d,  number2=%5d.n",  number1,  number2);     //  Chiều rộng trường
printf("number1=%08d,  number2=%05d.n",  number1,  number2); //  Điền đầy số 0
printf("number1=%-­‐8d,  number2=%-­‐5d.n",  number1,  number2); //  Canh trái
return  0;
}
Nhập bằng hàm scanf()
• Nằm trong thư viện stdio (#include	
  <stdio.h>
• Sử dụng để đưa input	
  từ console	
  vào chương
trình.
• Sử dụng như hàm printf()
2014 Nguyễn	
  Thanh	
  Tuấn 20

Más contenido relacionado

La actualidad más candente

Co so du lieu t sql
Co so du lieu t sqlCo so du lieu t sql
Co so du lieu t sql
ANHMATTROI
 
Kieu xau tiet 2 da soan
Kieu xau tiet 2 da soanKieu xau tiet 2 da soan
Kieu xau tiet 2 da soan
Sunkute
 
Giao an tin hoc 11 - Tuan 07 - Bai thuc hanh so 5 - vtq ngoc
Giao an tin hoc 11 - Tuan 07 - Bai thuc hanh so 5 - vtq ngocGiao an tin hoc 11 - Tuan 07 - Bai thuc hanh so 5 - vtq ngoc
Giao an tin hoc 11 - Tuan 07 - Bai thuc hanh so 5 - vtq ngoc
Ngoc Vu Thi Quynh
 
Bài tập nhập môn lập trình
Bài tập nhập môn lập trìnhBài tập nhập môn lập trình
Bài tập nhập môn lập trình
Huy Rùa
 

La actualidad más candente (12)

Co so du lieu t sql
Co so du lieu t sqlCo so du lieu t sql
Co so du lieu t sql
 
Class và object (lớp và đối tượng
Class và object (lớp và đối tượngClass và object (lớp và đối tượng
Class và object (lớp và đối tượng
 
Giao an trinh_pascal_bai_tap_co_dap_an_huong_dan
Giao an trinh_pascal_bai_tap_co_dap_an_huong_danGiao an trinh_pascal_bai_tap_co_dap_an_huong_dan
Giao an trinh_pascal_bai_tap_co_dap_an_huong_dan
 
Bài 2 : Các đối tượng trong CSDL - SQL server
Bài 2 : Các đối tượng trong CSDL - SQL serverBài 2 : Các đối tượng trong CSDL - SQL server
Bài 2 : Các đối tượng trong CSDL - SQL server
 
Lớp 11 --chương 4 -- bài 11 --Kiểu mảng
Lớp 11 --chương 4 -- bài 11 --Kiểu mảngLớp 11 --chương 4 -- bài 11 --Kiểu mảng
Lớp 11 --chương 4 -- bài 11 --Kiểu mảng
 
Ctdl c1
Ctdl c1Ctdl c1
Ctdl c1
 
Kieu xau tiet 2 da soan
Kieu xau tiet 2 da soanKieu xau tiet 2 da soan
Kieu xau tiet 2 da soan
 
Dữ liệu mảng (array)
Dữ liệu mảng (array)Dữ liệu mảng (array)
Dữ liệu mảng (array)
 
Giao an tin hoc 11 - Tuan 07 - Bai thuc hanh so 5 - vtq ngoc
Giao an tin hoc 11 - Tuan 07 - Bai thuc hanh so 5 - vtq ngocGiao an tin hoc 11 - Tuan 07 - Bai thuc hanh so 5 - vtq ngoc
Giao an tin hoc 11 - Tuan 07 - Bai thuc hanh so 5 - vtq ngoc
 
Hàm (function)
Hàm (function)Hàm (function)
Hàm (function)
 
Bài tập nhập môn lập trình
Bài tập nhập môn lập trìnhBài tập nhập môn lập trình
Bài tập nhập môn lập trình
 
Tin học lớp 8
Tin học lớp 8Tin học lớp 8
Tin học lớp 8
 

Destacado (20)

PP SD no 8 Evaluation plan
PP SD no 8 Evaluation planPP SD no 8 Evaluation plan
PP SD no 8 Evaluation plan
 
Hugo sales, diogo, luis, miguel
Hugo sales, diogo, luis, miguelHugo sales, diogo, luis, miguel
Hugo sales, diogo, luis, miguel
 
Sacolinhas
SacolinhasSacolinhas
Sacolinhas
 
ipsum.pdf
ipsum.pdfipsum.pdf
ipsum.pdf
 
Jorge Vilches - Intérprete Simultáneo World Class
Jorge Vilches - Intérprete Simultáneo World ClassJorge Vilches - Intérprete Simultáneo World Class
Jorge Vilches - Intérprete Simultáneo World Class
 
EGS Testimonial - CSR
EGS Testimonial - CSREGS Testimonial - CSR
EGS Testimonial - CSR
 
Mecanismos de control social
Mecanismos de control socialMecanismos de control social
Mecanismos de control social
 
Raw images
Raw imagesRaw images
Raw images
 
Grafica grupal
Grafica grupalGrafica grupal
Grafica grupal
 
Pike
PikePike
Pike
 
Nouveau microsoft power point presentation
Nouveau microsoft power point presentationNouveau microsoft power point presentation
Nouveau microsoft power point presentation
 
014
014014
014
 
Prentsa irizpideak
Prentsa irizpideakPrentsa irizpideak
Prentsa irizpideak
 
Inicio web inpackt
Inicio web inpacktInicio web inpackt
Inicio web inpackt
 
2013 nkomazi 400 prologue results
2013 nkomazi 400   prologue results2013 nkomazi 400   prologue results
2013 nkomazi 400 prologue results
 
Fashion Show Pictures
Fashion Show PicturesFashion Show Pictures
Fashion Show Pictures
 
2 Ingreso 2010
2 Ingreso 20102 Ingreso 2010
2 Ingreso 2010
 
HCSS 2014
HCSS 2014HCSS 2014
HCSS 2014
 
Beach Bodies! Photos - ABC News
Beach Bodies! Photos - ABC NewsBeach Bodies! Photos - ABC News
Beach Bodies! Photos - ABC News
 
Deborah Wuethrick Rec Letter
Deborah Wuethrick Rec LetterDeborah Wuethrick Rec Letter
Deborah Wuethrick Rec Letter
 

Similar a Baigiang022 bien va kieu

Giao an tin hoc 11 - Tuan 08 - On tap chuong 04 - vtq ngoc
Giao an tin hoc 11 - Tuan 08 - On tap chuong 04 - vtq ngocGiao an tin hoc 11 - Tuan 08 - On tap chuong 04 - vtq ngoc
Giao an tin hoc 11 - Tuan 08 - On tap chuong 04 - vtq ngoc
Ngoc Vu Thi Quynh
 
Bai giangtrenlop
Bai giangtrenlopBai giangtrenlop
Bai giangtrenlop
Hồ Lợi
 
Giáo trình pascal cho gv hs thpt
Giáo trình pascal cho gv hs thptGiáo trình pascal cho gv hs thpt
Giáo trình pascal cho gv hs thpt
Tâm Phan
 

Similar a Baigiang022 bien va kieu (20)

Giới thiệu ngôn ngữ lập trình C++
Giới thiệu ngôn ngữ lập trình C++Giới thiệu ngôn ngữ lập trình C++
Giới thiệu ngôn ngữ lập trình C++
 
LAP TRINH C - SESSION 2
LAP TRINH C - SESSION 2LAP TRINH C - SESSION 2
LAP TRINH C - SESSION 2
 
Thdc3 Lap Trinh C
Thdc3 Lap Trinh CThdc3 Lap Trinh C
Thdc3 Lap Trinh C
 
Ngon ngu c theo chuan ansi
Ngon ngu c theo chuan ansiNgon ngu c theo chuan ansi
Ngon ngu c theo chuan ansi
 
Session 02
Session 02Session 02
Session 02
 
Session 02
Session 02Session 02
Session 02
 
Giao an tin hoc 11 - Tuan 08 - On tap chuong 04 - vtq ngoc
Giao an tin hoc 11 - Tuan 08 - On tap chuong 04 - vtq ngocGiao an tin hoc 11 - Tuan 08 - On tap chuong 04 - vtq ngoc
Giao an tin hoc 11 - Tuan 08 - On tap chuong 04 - vtq ngoc
 
Book
BookBook
Book
 
Book
BookBook
Book
 
Baigiang021 cu phap co ban
Baigiang021 cu phap co banBaigiang021 cu phap co ban
Baigiang021 cu phap co ban
 
Pointer
PointerPointer
Pointer
 
Bai giangtrenlop
Bai giangtrenlopBai giangtrenlop
Bai giangtrenlop
 
Giáo trình pascal cho gv hs thpt
Giáo trình pascal cho gv hs thptGiáo trình pascal cho gv hs thpt
Giáo trình pascal cho gv hs thpt
 
Ngôn ngữ lập trình pascal (bổ trợ tin 11)
Ngôn ngữ lập trình pascal (bổ trợ tin 11)Ngôn ngữ lập trình pascal (bổ trợ tin 11)
Ngôn ngữ lập trình pascal (bổ trợ tin 11)
 
Pointer vn
Pointer vnPointer vn
Pointer vn
 
Con trỏ trong C
Con trỏ trong CCon trỏ trong C
Con trỏ trong C
 
Oop unit 02 java cơ bản
Oop unit 02 java cơ bảnOop unit 02 java cơ bản
Oop unit 02 java cơ bản
 
Bài 2 : Các khái niệm và nguyên tắc cơ bản của NET Framework - NỀN TẢNG LẬP T...
Bài 2 : Các khái niệm và nguyên tắc cơ bản của NET Framework - NỀN TẢNG LẬP T...Bài 2 : Các khái niệm và nguyên tắc cơ bản của NET Framework - NỀN TẢNG LẬP T...
Bài 2 : Các khái niệm và nguyên tắc cơ bản của NET Framework - NỀN TẢNG LẬP T...
 
Chuong 2@ngon ngu c
Chuong 2@ngon ngu cChuong 2@ngon ngu c
Chuong 2@ngon ngu c
 
Baigiang041 mang
Baigiang041 mangBaigiang041 mang
Baigiang041 mang
 

Último

SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfSLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
hoangtuansinh1
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hành
dangdinhkien2k4
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
Xem Số Mệnh
 

Último (20)

Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfSLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
 
Access: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptAccess: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.ppt
 
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdfxemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
 
Kiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietKiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net Viet
 
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hành
 
Bài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiệnBài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiện
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
 
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
 
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
 
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
 
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiTrắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
 
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfxemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
 
Giáo trình xây dựng thực đơn. Ths Hoang Ngoc Hien.pdf
Giáo trình xây dựng thực đơn. Ths Hoang Ngoc Hien.pdfGiáo trình xây dựng thực đơn. Ths Hoang Ngoc Hien.pdf
Giáo trình xây dựng thực đơn. Ths Hoang Ngoc Hien.pdf
 
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
 

Baigiang022 bien va kieu

  • 1. Trường Đại học Sư phạm Khoa Tin  học Bài giảng 2.1 Biến và kiểu
  • 2. Nội dung • Biến • Tên biến • Khai báo biến • Hằng  (const) • Biểu thức • Phép gán • Các kiểu cơ bản • Xuất qua  hàm printf() • Nhập bằng hàm scanf() • Định dạng kiểu dữ liệu cơ bản và chuỗi 2014 Nguyễn  Thanh  Tuấn 2
  • 3. Biến • Được sử dụng để lưu một mảnh dữ liệu. • Được gọi là biến vì có thể thay đổi giá trị lưu trữ. • Biến có tên,  kiểu và giá trị lưu trữ. – Tên biến:  tên cần đơn nhất để xác định giá trị và lấy lại giá trị lưu trữ. – Kiểu: • Int:  cho số nguyên • double:  cho số thực. • Mỗi biến chỉ lưu giá trị của một kiểu duy nhất. 2014 Nguyễn  Thanh  Tuấn 3
  • 5. Tên biến • Là một chuỗi ký tự có độ độ dài xác định (tùy vào trình biên dịch,  chừng 255  ký tự). • Gồm chữ hoa,  chữ thường (a-­‐z,  A-­‐Z),  số (0-­‐9)  và dấu gạch dưới (“_”). • Không có khoảng trắng và các ký tự đặt biệt khác. • Phải bắt đầu bằng một chữ hoặc dấu gạch dưới (“_”). • Không được trùng với từ khóa của chương trình. • Phân biệt chữ hoa,  chữ thường. 2014 Nguyễn  Thanh  Tuấn 5
  • 6. Quy định đặt tên biến • Là danh từ hoặc đoạn danh từ. • Từ đầu tiên viết thường,  từ còn lại viết hoa chữ cái đầu. • Không sử dụng khoảng trắng giữa các từ. • Ví dụ:  theFontSize,  roomNumber,  xMax,  yMin,   xTopLeft và thisIsAVeryLongVariableName 2014 Nguyễn  Thanh  Tuấn 6
  • 7. Các lưu ý  khi đặt tên • Chọn tên có ý  nghĩa với vai trò của biến.  Vd:   numberOfStudentshay  numStudents. • Không dùng các tên vô nghĩa như:  a,  b,  c,  d,  i,  j,  k,  i1,   j99… • Tránh dùng tên là một chữ đơn trừ khi dùng các tên như x,  y,  z  cho tọa độ,  i cho đếm. • Có thể dùng tên dài hơn 30  ký tự miễn có nghĩa. • Thận trọng khi dùng danh từ số nhiều,  số ít khi đặt tên biến.  Vd:  row  để chỉ một hàng đơn,  rows  để chr nhiều hàng (dùng đặt tên mảng của các hàng). 2014 Nguyễn  Thanh  Tuấn 7
  • 8. Khai báo biến 2014 Nguyễn  Thanh  Tuấn 8 //  Khai báo một biến với kiểu dữ liệu type  identifier; //  Khai báo nhiều biến cùng kiểu,  cách nhau bởi dấu phẩy type  identifier-­‐1, identifier-­‐2, ..., identifier-­‐n; //  Khai báo và gán cho một giá trị ban  đầu type  identifier = value; //  Khai bái nhiều biến và khởi tạo giá trị type  identifier-­‐1 = value-­‐1, ..., identifier-­‐n = value-­‐n; int option; double  sum,  difference,  product,  quotient; int magicNumber =  88; double  sum  =  0.0,  product  =  1.0;
  • 9. Lưu ý • Cần khai báo biến trước khi dùng • Mỗi biến chỉ có một kiểu duy nhất. • Mỗi biến chỉ khai báo một lần • Có thể khai báo biến bất kỳ đâu trong chương trình và trước khi dùng (Nên khai báo ngay khi dùng lần đầu). • Kiểu của biến không thể thay đổi trong chương trình. 2014 Nguyễn  Thanh  Tuấn 9
  • 10. Biến không khởi tạo 1 2 3 4 5 6 7 8 #include  <stdio.h> int main()  { int number;                     //  Khai báo không khởi tạo printf("%dn",  number);   //  Sử dụng trước khi khởi tạo //  Không cảnh báo/lỗi,  nhưng kết quả sai return  0; } 2014 Nguyễn  Thanh  Tuấn 10
  • 11. Hằng • Là biến không thể thay đổi. • Khai báo với từ khóa const. • Giá trị không đổi khi chương trình thực thi. • Phải được khởi tạo khi khai báo. • Vd const double  PI  =  3.1415926 • Đặt tên hằng:  Sử dụng từ in  hoa,  kết hợp với nhau bởi dấu gạch dưới.  Vd:  MIN_VALUE,   MAX_SIZE. 2014 Nguyễn  Thanh  Tuấn 11
  • 12. Biểu thức • Biểu thức là tổ hợp các phép toán (+,  -­‐,  *,  /  …)   và toán hạng (biến hoặc giá trị)  và cho ra một giá trị duy nhất của một kiểu xác định. • Vd: 2014 Nguyễn  Thanh  Tuấn 12 1 + 2 * 3 // cho int 7 int sum, number; sum + number // xác định một giá trị int double principal, interestRate; principal * (1 + interestRate) // xác định một giá trị double
  • 13. Phép gán • Một lệnh gán: – Dùng để truyền giá trị cho một biến – Định giá trị của một biến cho một biểu thức. • Ví dụ: 2014 Nguyễn  Thanh  Tuấn 13 variable = literal-­‐value; variable = expression;
  • 14. Các kiểu cơ bản • Kiểu số nguyên:   – C  hỗ trợ các kiểu:  char,  short,  int,  long,  long  long.   Là các kiểu có dấu (trừ char) – Sử dụng từ khóa unsigned  [char  |  short  |  int |   long  |  long  long]  để khai báo số nguyên không dấu. – Tổng cộng có 10  kiểu số nguyên. 2014 Nguyễn  Thanh  Tuấn 14
  • 15. Các kiểu cơ bản • Kiểu ký tự: – Các ký tự (vd:  ‘a’,  ‘Z’,  ‘0’,  ‘9’)  là mã nguyên trong bảng mã ASCII  – Kiểu char. – Char  có thể là có dấu hoặc không dấu,  sử dụng với từ khóa signed  hoặc unsighed. 2014 Nguyễn  Thanh  Tuấn 15
  • 16. Các kiểu cơ bản • Số con  trỏ động – Có 3  kiểu con  trỏ động:  float,  double  và long   double. • float:    ±1.40239846×10^-­‐45  :  ±3.40282347×10^38.   • double:  ±4.94065645841246544×10^-­‐324  :     ±1.79769313486231570×10^308 2014 Nguyễn  Thanh  Tuấn 16
  • 17. Toán tử sizeof 2014 Nguyễn  Thanh  Tuấn 17 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 /* *  In  khich thuoc cua cac kieu co  ban  (SizeofTypes.cpp). */ #include  <stdio.h> int main()  { printf("sizeof(char)  is  %d  bytes.n",  sizeof(char)); printf("sizeof(short)  is  %d  bytes.n",  sizeof(short)); printf("sizeof(int)  is  %d  bytes.n",  sizeof(int)); printf("sizeof(long)  is  %d  bytes.n",  sizeof(long)); printf("sizeof(long  long)  is  %d  bytes.n",  sizeof(long  long)); printf("sizeof(float)  is  %d  bytes.n",  sizeof(float)); printf("sizeof(double)  is  %d  bytes.n",  sizeof(double)); printf("sizeof(long  double)  is  %d  bytes.n",  sizeof(long  double)); return  0; }
  • 18. Xuất qua  hàm printf • Nằm trong thư viện stdio (#include  <stdio.h> • Sử dụng để in  output  ra console printf(“Hello  worldn”); • n:  ký tự newline,  chuyển con  trỏ sang  dòng tiếp theo. 2014 Nguyễn  Thanh  Tuấn 18
  • 19. Xuất qua  hàm printf • Định dạng output  bằng printf(): printf(chuỗi được định dạng,  biến 1,  biến 2,  …); 2014 Nguyễn  Thanh  Tuấn 19 1 2 3 4 5 6 7 8 9 10 11 12 13 14 /* *  Định dạng cho kiểu int (TestPrintfInt.c) */ #include  <stdio.h> int main()  { int number1  =  12345,  number2  =  678; printf("Hello,  number1  is  %d.n",  number1);                               //  Định dạng một biến printf("number1=%d,  number2=%d.n",  number1,  number2);         //  Định dạng 2  biến printf("number1=%8d,  number2=%5d.n",  number1,  number2);     //  Chiều rộng trường printf("number1=%08d,  number2=%05d.n",  number1,  number2); //  Điền đầy số 0 printf("number1=%-­‐8d,  number2=%-­‐5d.n",  number1,  number2); //  Canh trái return  0; }
  • 20. Nhập bằng hàm scanf() • Nằm trong thư viện stdio (#include  <stdio.h> • Sử dụng để đưa input  từ console  vào chương trình. • Sử dụng như hàm printf() 2014 Nguyễn  Thanh  Tuấn 20