CÁC THÀNH PHẦN
CƠ BẢN CỦA C#
05/10/21
Danh hiệu
Là tên do NSD đặt ra để gọi tên các lớp,
hàm/phương thức, biến/thuộc tính, hằng,….
Có thể tìm hiểu thêm trong các giáo trình, taì
liệu
Lưu ý : C/C++/C#/Java phân biệt chữ thường/hoa
05/10/21
Từ khóa
Khơng nhiều từ khóa
Các từ khóa đều ở dạng chữ thường
Tương tự như Pascal, các từ khóa thường là
các phát biểu điều khiển, kiểu dữ liệu,…..
Ví dụ if else do while int long
try catch checked ………...
05/10/21
Khai báo biến !!!
Nếu khai báo trong 1 hàm : biến
Nếu khai báo ngoài hàm nhưng nằm trong 1
lớp : không phải là biến
Cú pháp khai báo
<kiểu dữ liệu> <tên biến> ;
Thường thì nên kết hợp khai báo với khởi động
giá trị ban đầu cho biến
<kiểu dữ liệu> <tên biến>=<giá trị>;
05/10/21
Khai báo biến !!!
int k ;
int j = 1, k;
float f = 12.3f;
double d =23.777;
char c = ‘Y’;
bool b = true;
string s1, s2=“Hello”,s3=“World”;
05/10/21
Khai báo biến !!!
Trong giai đoạn đầu, luôn khai báo các biến
trong hàm Main
Có thể khai báo biến ở vị trí bất kỳ trong hàm
Phạm vi và tầm vực ảnh hưởng của biến : nằm
trong khối chứa nó
Tốt nhất : khai báo các biến ngay phần đầu hàm
Main()
05/10/21
Khai báo biến !!!
Không khai báo biến ở đây !!!!
class <Tên lớp>
{ Khai báo biến ở đây sẽ có ý nghĩa khác !!!!
static public void Main( )
{
Khai báo biến trong đây !!
}
}
05/10/21
Khai
báo
biến
!!!
static public void Main(String[ ] s)
{ int i= 0;
………..
// i
int k = 2;
………. // i và k
If ( ….) ………….{
int i = 1;
………… // i và k
int j = 2;
……….. // i và k, j
}
…………. // i và k
}
Tham khảo thêm trong C/C++/C#
05/10/21
Khai báo hằng !!!
Tương tự như biến : có ý nghĩa khác nhau nếu
khai báo ở các vị trí khác nhau
Không khai báo hằng ở đây !!!!
class <Tên lớp>
{ Khai báo hằng ở đây sẽ có ý nghĩa khác !!!!
static public void Main( )
{
Khai báo hằng trong đây !!
}
}
05/10/21
Khai báo hằng !!!
Cú pháp
const <kiểu dữ liệu> <tên hằng> = <giá trị>;
Ví dụ
const int THISYEAR = 2006;
const float LAISUAT = 0.0085f;
const double GIATOC = 9.81;
const char YES = ‘Y’;
const string Hello = “Hello”;
05/10/21
Các kiểu dữ liệu chuẩn
05/10/21
Các kiểu dữ liệu cần nhớ!!!
Kiểu nguyên int và lớp tương đương Int32
Kiểu nguyên long và lớp tương đương Int64
Kiểu thực float và lớp tương đương Single
Kiểu thực double và lớp tương đương Double
Kiểu ký tự char và lớp tương đương Char
Kiểu logic bool và lớp tương đương Boolean
Kiểu chuỗi string và lớp tương đương String
05/10/21
Khai báo
Nên khai báo và khởi tạo giá trị ban đầu
int i, j=2, k = 2*j; // i???
float f=11.56 ; // lỗi!ngầm hiểu double
float g = 23.72f;
char yes=‘Y’; //dùng nháy đơn
bool male=true;
string hello=“Hello!”;//nháy kép
05/10/21
Các phép toán cơ bản
Các phép toán số học
Cộng
Trừ
Nhân
Chia
Chia lấy phần dư
+
*
/
%
Lưu ý : Phép chia (/) 2 số nguyên sẽ
“chặt” bỏ phần dư
05/10/21
Các phép tốn cơ bản
Ví dụ
int a = 17 , b= 3;
int c = a / b ;
// c = 5
int d = a % b ;
// d = 2
float e = (float)a / b ; // e = 5.6667
float f = a /(float)b ; // f = 5.6667
Ép kiểu (Type Casting)
float f ; int i ; ……; f=i; i= (int)f;
05/10/21
Các phép toán cơ bản
Các phép toán so sánh số học
Bằng
Khác nhau
Lớn hơn, lớn hơn hay bằng
Nhỏ hơn, nhỏ hơn hay bằng
Lưu ý
Thường hay quên và lầm lẫn giữa = và ==
05/10/21
==
!=
> >=
< <=
Các phép toán cơ bản
Các phép toán trên kiểu chuỗi
Ghép chuỗi
So sánh bằng nhau
So sánh khác nhau
+
==
!=
Lưu ý : không thể dùng các phép so sánh >, >=,
<, <= trên 2 chuỗi
05/10/21
Các phép toán cơ bản
Các phép toán logic
Và
Hoặc
Phủ định
05/10/21
&&
||
!
Các phép toán cơ bản
Một số phép toán khác (đặc biệt!!!)
Tự tăng
Tự giảm
++
--
Ví dụ
Thay vì ghi i = i+1; thì ghi i++;
Thay vì ghi j = j - 1; thì ghi j --;
Nếu khơng quen thuộc thì hạn chế sử dụng!!!
05/10/21
Các phép toán cơ bản
Lưu ý thêm
++ <biến> : Tăng thêm 1, sau đó sử
dụng giá trị
<biến> ++ : Sử dụng giá trị, sau đó
tăng thêm 1
Ví dụ
int a=0, b=5; a = b++; // a=5 và b=6
int a=0, b=5; a=++b ; // a=6 va b=6
Tương tự cho --
05/10/21
Các phép toán cơ bản
Các phép toán rút gọn !!!!
Thay vì a = a + b ; thì viết a += b;
Thay vì a = a - b ; thì viết a -= b;
Thay vì a = a * b ; thì viết a *= b;
Thay vì a = a / b ; thì viết a /= b;
Thay vì a = a % b ; thì viết a %= b;
Nếu khơng quen thuộc thì hạn chế sử dụng!!!
05/10/21
Các phép toán cơ bản
Phép toán điều kiện: hiệu quả, tiện lợi, tương tự
hàm IF(Excel), IIF(Fox)
<điều kiện>?<kết quả Đ>:<kết quả SAI>;
Ví dụ
a = b<=5&&c>=10? b + 1 : c-2 ;
String s1= s=="abc"?"zyz":"123";
Console.WriteLine(“Kq={0}”,a>b?a:b);
z=a>b?(a>c?a:c):(b>c?b:c);
Nên sử dụng tối đa !!!!
05/10/21
Một số phương thức thường dùng
Trong thời gian đầu, ln khai báo
using System;
ở dịng đầu tiên của chương trình
Các phương thức thường dùng và cần sử dụng
thành thạo :
05/10/21
Một số phương thức thường dùng
In dữ liệu ra màn hình : dùng Console.Write và
Console.WriteLine
Có khoảng 18 cách sử dụng khác nhau!!
Console.Write( chuỗi );
Console.Write(chuỗi định dạng , dstham số);
Ví dụ
int i=5; String s=“abcd”;
Console.WriteLine(i);
Console.Write( s + s + i );
Console.Write( “{0} {1} {2}”,s,s,i);
05/10/21
Một số phương thức thường dùng
Nhập dữ liệu từ bàn phím: dùng
Console.ReadLine()
Lưu ý là kết quả nhận được là 1 chuỗi,
do vậy cần phải chuyển đổi nếu cần
thiết
Ví dụ
String hoten=“”; wnamsinh=“”;
hoten = Console.ReadLine();
wnamsinh=Console.ReadLine();
//sau đó chuyển sang số nguyên !!!
05/10/21