Chương 2:
Nền tảng ngôn ngữ C#
Giảng viên: Ths. Nguyễn Thị Khiêm Hòa
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Nội dung
Nền tảng lập trình trên C#
Dữ liệu trong ngôn ngữ C#
Xây dựng các biểu thức
Câu lệnh điều kiện
Câu lệnh lặp
Namespace
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Nền tảng ngôn ngữ C#
Cấu trúc chương trình C#
Cách viết code trên C#
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Cấu trúc chương trình C#
Chương trình thực thi bắt đầu bởi hàm Main( )
Từ khóa using để sử dụng thư viện lớp .NET
(Framework class library_FCL)
Câu lệnh
Câu lệnh kết thúc bởi dấu chấm phẩy.
Dùng ngoặc móc để nhóm các câu lệnh lại với nhau
using System;
class HelloWorld
{
static void Main()
{
Console.WriteLine ("Hello, World");
}
}
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Cách viết code trong C#
Các câu lệnh cùng nhóm được canh lề với nhau
C# phân biệt chữ hoa và chữ thường
Dùng dấu // để ghi chú trên 1 dòng
Dùng /* và */ để ghi chú trên nhiều dòng
using System;
class HelloWorld
{
static void Main()
{
Console.WriteLine ("Hello, World");
}
}
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Dữ liệu trong C#
Khai báo biến
Khai báo hằng
Kiểu Enum
Chuyển kiểu
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Các kiểu dữ liệu cơ bản
Kiểu C#
Số
Byte
Kiểu
.NET
Mô tả
Ví dụ
object
Kiểu dữ liệu đối tượng
object o = null;
string
Chuỗi ký tự
string s = “hello”;
short
2
Int16
Số nguyên có dấu giá trị từ -32768 đến
32767.
ushort
2
Uint16
Số nguyên không dấu 0 – 65.535
int
4
Int32
Số nguyên có dấu –2.147.483.647 đến
2.147.483.647
uint
4
Uint32
Số nguyên không dấu 0 –
4.294.967.295
sbyte
1
Sbyte
Số nguyên có dấu ( từ -128 đến 127)
byte
1
Byte
Số nguyên không dấu từ 0 - 255
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
int val = 12;
byte val = 12;
Các kiểu dữ liệu cơ bản
Kiểu C#
Số
Byte
Kiểu .NET
Mô tả
float
4
Single
Kiểu dấu chấm động, giá trị xấp xỉ từ 3,4E- 38 đến
3,4E+38, với 7 chữ số có nghĩa. Có thêm hậu tố F sau giá
trị
double
8
Double
Kiểu dấu chấm động có độ chính xác gấp đôi, giá trị xấp
xỉ 1.7E-308 -1.7E+308, với 15,16 chữ số có nghĩa
Ví dụ
float val = 1.23F;
decimal
8
Decimal
Chính xác đến 28 con số và giá trị thập phân, được dùng
trong tính toán tài chính, đòi hỏi hậu tố “m” hay “M” theo
sau giá trị
bool
1
Boolean
Giá trị logic true/ false
bool val1 = true;
bool val2 = false;
char
2
Char
Ký tự Unicode
char val = 'h';
long
8
Int64
Kiểu số nguyên có dấu có giá trị trong khoảng: 9.223.370.036.854.775.808 đến
9.223.372.036.854.775.807
ulong
8
Uint64
Số nguyên không dấu từ 0 đến 0xFFFFFFFFFFFFFFFF
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Khai báo biến
Biến dùng để lưu nhiều kiểu dữ liệu khác nhau
Các kiểu dữ liệu được cung cấp từ ngôn ngữ C#
và .NET Framework
Cũng có thể định nghĩa kiểu dữ liệu riêng
Biến phải được khai báo trước khi sử dụng
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Khai báo biến
Khai báo biến
Kiểu dữ liệu
2 Tên
3 Kết thúc bởi ;
1
int numberOfVisitors;
string bear;
Khởi tạo
1
2
3
Toán tử =
Gán giá trị
Kết thúc bởi ;
string bear = "Grizzly";
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Khai báo hằng
Dùng từ khóa const và kiểu dữ liệu để khai báo
Phải gán giá trị ngay khi khai báo
const int earthRadius = 6378;//km
const long meanDistanceToSun = 149600000;//km
const double Pi = 3.14;
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Kiểu liệt kê
Khai báo
enum Planet
{
Mercury,
Venus,
Earth,
Mars
}
Sử dụng
Planet aPlanet = Planet.Mars;
Hiển thị giá trị
Console.WriteLine("{0}", aPlanet); //Displays Mars
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Chuyển đổi kiểu dữ liệu
Chuyển đổi ngầm định
Thực hiện bởi trình biên dịch và đảm bảo không làm
mất thông tin.
int x = 123456;
long y = x;
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Chuyển đổi kiểu dữ liệu
Chuyển đổi tường minh
Cách ép kiểu này có thể gây ra mất thông tin
int x = 65532;
short z = (short) x;
Cũng có thể dùng hàm chuyển đổi
int x = 5;
double z = 3.2;
x = System.Convert.ToInt32(z);
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Xây dựng biểu thức
Biểu thức và toán tử
Toán tử ưu tiên
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Biểu thức và toán tử
Các toán tử dùng trong biểu thức
Các toán tử thông thường
•
•
•
•
•
•
Tăng / giảm
Số học
Quan hệ
Bình đẳng
Điều kiện
Gán
Ví dụ
++ -* / % + < > <= >=
== !=
&& || ?:
= *= /= %= += -=
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Thứ tự ưu tiên của toán tử
Nhân chia trước, cộng trừ sau
10 + 20 / 5
=> 14
Trong ngoặc đơn được tính trước
(10 + 20) / 5 => 6
10 + (20 / 5) => 14
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Câu lệnh điều kiện
Câu lệnh if
Câu lệnh switch
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Câu lệnh if
if
if ( sales > 10000 )
{
bonus += .05 * sales;
}
if else
if ( sales > 10000 )
{
bonus += .05 * sales;
}
else
{
bonus = 0;
}
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Câu lệnh if
if else if
if ( sales > 10000 )
{
bonus += .05 * sales;
}
else if ( sales > 5000 )
{
bonus = .01 * sales;
}
else
{
bonus = 0;
if ( priorBonus == 0 )
{
//ScheduleMeeting;
}
}
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Câu lệnh switch
int moons;
switch (aPlanet)
{
case Planet.Mercury:
moons = 0;
break;
case Planet.Venus:
moons = 0;
break;
case Planet.Earth:
moons = 1;
break;
}
Default case
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Câu lệnh break, goto
int moons;
switch (aPlanet)
{
case Planet.Mercury:
moons = 0;
break;
case Planet.Venus:
moons = 0;
break;
case Planet.Earth:
moons = 1;
break;
}
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Câu lệnh lặp
Vòng lặp for
Vòng lặp while
Vòng lặp do
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Vòng lặp for
Dùng khi biết trước số lần lặp
for (giá trị đầu; điều kiện; bước nhảy)
{
câu lệnh;
}
Ví dụ
for (int i = 0; i < 10; i++)
{
Console.WriteLine("i = {0}",i);
}
for ( int j = 100; j > 0; j -= 10 )
{
Console.WriteLine("j = {0}", j);
}
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM
Vòng lặp while
Kiểm tra điều kiện rồi mới lặp
Lặp đến khi điều kiện = false
i = 0;
while ( i < 10 )
{
Console.WriteLine(“ i: {0} ”,i);
i++;
}
continue, break
Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM