CSLT abcdefgjdksandvvwew_Bai 2_2018.pptx

khoiminh3005 0 views 50 slides Oct 01, 2025
Slide 1
Slide 1 of 50
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50

About This Presentation

nice


Slide Content

BÀI 2: GIỚI THIỆU NNLT C#

Nội dung: Danh hiệu / Tên Từ khóa Kiểu dữ liệu Biến Hằng Các toán tử Một số phương thức thường dùng

Danh hiệu Là tên do NSD đặt ra để gọi tên các biến , hằng , lớp , hàm / phương thức , …. Qui tắc đặt tên : Bao gồm chữ cái , chữ số , dấu gạch dưới , bắt đầu là chữ cái hoặc dấu gạch dưới . Không có khoảng trắng Phân biệt chữ hoa , chữ thường Không trùng từ khóa (keyword)

Từ khóa (Key word) Không nhiều từ khóa Các từ khóa đều ở dạng chữ thường 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, for, int , long, float, string, ...

Biến Dữ liệu được lưu trữ trong bộ nhớ máy tính trong các biến (variable) Biến là một đại lượng có thể thay đổi giá trị trong chương trình Biến có tên , kiểu dữ liệu và giá trị Ví dụ khai báo và gán giá trị cho biến trong C# int count = 5; Kiểu DL Tên biến Giá trị của biến 5

Khai báo biến Cú pháp khai báo < kiểu dữ liệu > < tên biến > ; Gán giá trị cho biến < tên biến > = < biểu thức > ; 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ị >;

Kiểu dữ liệu (Data Type) là gì ? Kiểu DL: Là tập hợp / miền các giá trị có tính chất tương tự Xác định kiểu của thông tin được lưu trong bộ nhớ ( trong các biến - variable) Mỗi kiểu DL có một tên (name), kích thước (size) và giá trị mặc nhiên (default value) Ví dụ : Số nguyên dương : 1 , 2 , 3 , … Ký tự : a , b , c , … Kiểu số nguyên trong C# có tên là int , size là 32 bits (4 bytes ) và Default value là 7

Kiểu nguyên Kiểu nguyên (Integer) bao gồm : sbyte (-128 to 127): có dấu , 8-bit byte (0 to 255): không dấu , 8-bit short (-32,768 to 32,767): có dấu , 16-bit ushort (0 to 65,535): không dấu , 16-bit int (-2,147,483,648 to 2,147,483,647): có dấu , 32-bit uint (0 to 4,294,967,295): không dấu , 32-bit long (-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807): có dấu , 64-bit ulong (0 to 18,446,744,073,709,551,615): kg dấu , 64-bit 8

Ví dụ về số nguyên Tùy thuộc vào giá trị của các biến ta có thể sử dụng các kiểu sau đây : byte TheKy = 20; // Thường là số nhỏ ushort SoNam = 2000; uint SoNgay = 730480; ulong SoGio = 17531520; // Có thể số rất lớn Console.WriteLine("{0} thế kỷ là { 1 } năm , hoặc {2} ngày , hoặc { 3} giờ .", TheKy , SoNam , SoNgay , SoGio ); 9

Kiểu số thực (Floating-Point, Decimal F-P) Kiểu số thực bao gồm : float (±1.5 × 10 −45 to ±3.4 × 10 38 ): 32-bits, độ chính xác 7 ký số double (±5.0 × 10 −324 to ±1.7 × 10 308 ): 64-bits, độ chính xác 15-16 ký số decimal (± 1.0  × 10 -28 to ± 7.9  × 10 28 ): 128-bits, độ chính xác 28-29 ký số Giá trị mặc nhiên : Là 0.0F đối với kiểu float Là 0.0D đối với kiểu double Là 0.0M đối với kiểu decimal 10

Ví dụ : Xem độ chính xác khi dùng kiểu float và double : Chú ý: Chữ “ f ” ở cuối số trong phát biểu đầu tiên ! Số thực mặc nhiên là double ! Thêm chữ “ f ” để chuyển sang kiểu float float floatPI = 3.141592653589793238f; double doublePI = 3.141592653589793238; Console.WriteLine("Float PI is: {0}", floatPI); Console.WriteLine("Double PI is: {0}", doublePI); 11

Bất thường trong tính toán số thực (Floating-Point) Đôi khi một số bất thường có thể thấy khi dùng số thực (floating-point) Ví dụ : double a = 1.0f; double b = 0.33f; double sum = 1.33f; bool equal = (a+b == sum); // False!!! Console.WriteLine("a+b={0} sum={1} equal={2}", a+b, sum, equal); 12

Kiểu dữ liệu luận lý (Boolean) Kiểu luận lý : Được mô tả bởi từ khóa : bool Có 2 giá trị : true and false Được sử dụng trong các biểu thức luận lý Giá trị mặc nhiên : false 13

Ví dụ Ví dụ biến boolean nhận giá trị true hoặc false : int a = 1 ; int b = 10; bool AlonhonB = (a > b); Console.WriteLine(AlonhonB ); // False bool Abang1 = (a == 1); Console.WriteLine(Abang1 ); // True 14

Kiểu dữ liệu ký tự (Character) Kiểu ký tự : Mô tả thông tin dạng ký hiệu (symbol) Khai báo bởi từ khóa : char Mỗi ký hiệu tương ứng với một số nguyên Giá trị mặc nhiên : '\ ' Đặt trong dấu nháy đơn ‘ ‘ Kích thước : 16 bits ( từ U+0000 đến U+FFFF ) 15

Ví dụ Hiện ký hiệu và mã Unicode duy nhất của nó : char symbol = 'a'; Console.WriteLine (“Mã của '{0}' là: {1}", symbol, (int) symbol); symbol = 'b'; Console.WriteLine ("Mã của '{0}' là: {1}", symbol, (int) symbol); symbol = 'A'; Console.WriteLine ("Mã của '{0}' là: {1}", symbol, (int) symbol); 16

Kiểu dữ liệu chuỗi (String) Kiểu chuỗi : Mô tả một dãy các ký tự Được khai báo bởi từ khóa : string Giá trị mặc nhiên : null (no value) Chuỗi được đặt trong cặp ngoặc kép ( “…” ): Chuỗi có thể nối lại , dùng toán tử + string s = "Khoa Cong Nghe Thong Tin KDoanh"; 17

Ví dụ Nối họ và tên thành chuỗi họ tên : Chú ý: thêm một khoảng trống giữa Họ và Tên !!! string Ho = "Do "; string Ten = "Bich Le"; Console.WriteLine("Xin chao, {0}!\n", T en); string HoTen = Ho + " " + Ten; Console.WriteLine("Ho ten cua ban la {0 }.",HoTen); 18

Ví dụ - Khai báo biến int k ; int j = 1, k; float f = 12.3f; float x=123.45; // bị lỗi double d =23.777; char c = ‘Y’; bool b = true; string s1, s2= " Hello " ,s3= " World " ;

Khai báo biến ( tt ) 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()

Khai báo biến ( tt ) class < Tên lớp > { static public void Main( ) { } } Khai báo biến trong đây !! Không khai báo biến ở đây !!!! Khai báo biến ở đây sẽ có ý nghĩa khác !!!!

Tầm vực của 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 }

Hằng Hằng : là một đại lượng không thay đổi giá trị trong chương trình Cú pháp const < kiểu dữ liệu > < tên hằng > = < giá trị >; Ví dụ const int THISYEAR = 2018; const float LAISUAT = 0.0085f; const double GIATOC = 9.81; const char YES = ‘Y’; const string s = " Hello " ;

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 class <Tên lớp> { static public void Main( ) { } } Khai báo hằng trong đây !! Không khai báo hằng ở đây !!!! Khai báo hằng ở đây sẽ có ý nghĩa khác !!!!

Các kiểu dữ liệu chuẩn

Các kiểu dữ liệu cần nhớ !!! Kiểu nguyên int ( tương tự như integer trong Pascal) và lớp tương đương Int32 Kiểu nguyên long lớp tương đương Int64 Kiểu thực float ( tương tự như real trong Pascal) và lớp tương đương Float Kiểu thực double (8 byte) Kiểu ký tự char ( tương tự như char trong Pascal) và lớp tương đương Char Kiểu logic bool ( tương tự như boolean trong Pascal) và lớp tương đương Boolean Kiểu chuỗi string ( tương tự như string trong Pascal) và lớp tương đương String

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ư

Các phép toán cơ bản ( tt ) 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;

Các phép toán cơ bản ( tt ) Các phép toán so sánh so sánh 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à ==

Các phép toán cơ bản ( tt ) 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

19/03/2018 Các phép toán cơ bản ( tt ) Các phép toán logic Và && Hoặc || Phủ định !

19/03/2018 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 --;

19/03/2018 Các phép toán cơ bản ( tt ) 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 --

Các phép toán cơ bản ( tt ) 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 !!!

Các phép toán cơ bản ( tt ) 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 !!!!

Một số phương thức Trong thời gian đầu , luôn 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 :

Một số phương thức ( tt ) 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 );//abcdabcd5 Console.Write ( " { 0} {1} {2 } " , s,s,i );

Một số phương thức ( tt ) 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 !!!

Một số phương thức ( tt ) Một số phương thức toán học Math.Abs ( biểu thức số ) Math.Sqrt ( biểu thức số ) Math.Ceiling ( biểu thức số ) Math.Floor ( biểu thức số ) Math.Max (bts1,bts2) Math.Min (bts1,bts2) Math.Round ( biểu thức số ) Math.Pow ( x,y ) hằng số Math.PI và Math.E

Một số phương thức ( tt ) Ví dụ float R=12.6f; float S = R*R* Math.PI ;// báo lỗi int a,b,c,d ; // Nhập 4 số a,b,c và d Console.Write ( Math.Max ( a,Math.Max ( b,Math.Max ( c,d ))));

Một số phương thức ( tt ) Chuyển đổi kiểu chuỗi sang các kiểu dữ liệu khác Từ chuỗi sang số thực ( dạng float) Single.Parse ( chuỗi ) Ví dụ string s; s="123.45"; float f = Single.Parse ( s); float f2 = float.Parse ( s); Từ chuỗi sang số thực ( dạng double) Ví dụ string s="3.45"; double d = Double.Parse (s);

Một số phương thức ( tt ) Từ chuỗi sang số nguyên String s="45"; short i = Int16.Parse(s); int j = Int32.Parse(s); int m = int.Parse (s); long k = Int64.Parse(s); Console.Write ( " Nhap nam sinh : " ); String nsinh = Console.ReadLine (); int ns = Int32.Parse( nsinh ); // hay int ns=Int32.Parse( Console.ReadLine ()); // hay int ns= int.Parse ( Console.ReadLine ());

Một số phương thức ( tt ) Chuyển đổi kiểu dữ liệu số sang kiểu chuỗi Nguyên tắc < tên biến >. ToString ( ) ; Ví dụ i nt i = 231 ; float j = 34.56f ; // ngầm định là double !!! String kq ; kq = " i = "+ i.ToString () + " va j = "+ j.ToString (); Console.WriteLine ( kq );

Một số phương thức ( tt ) int i = 231 ; float j = 34.56f ; // ngầm định là double !!! Console.WriteLine ( " i = " + i + " va j = " + j); Chuyển đổi tương tự cho các kiểu bool và char bool b= true; char yes=‘ Y’; string s1 = b.ToString ( ) ; // s1 = " True " string s2 = yes.ToString ( ); // s2 = " Y " ; Console.Write ( b + yes ); // lỗi !!! Console.Write (b + "" + yes);

Một số phương thức ( tt ) Một số phương thức của kiểu chuỗi < biến chuỗi >. ToLower ( ); < biến chuỗi >. ToUpper ( ); < biến chuỗi >.Substring( vị trí , số ký tự ); < biến chuỗi >.Length ; // không có ( và ) < biến chuỗi >[ vị trí ] < biến chuỗi >.Contains( chuỗi ); Ví dụ string S = " hello woRld " ; string u = S.ToUpper (); char c = S[1]; // c = ‘e’ int l = S.Substring (0,4).Length ; // thay vì ghi ( S.Substring (0,4)).Length

Điều khiển màn hình Lớp System.Console Có 1 số thuộc tính sau Console.ForegroundColor = < màu >; Console.BackgroundColor =< màu >; Console.CursorVisible = <true/false>; Console.CursorSize =< bt nguyên >; Console.CapsLock =<true/false>; Console.NumberLock =<true/false>; Console.Title = < chuỗi > ; Màu : ConsoleColor .< tên màu >

Điều khiển màn hình ( tt )

Điều khiển màn hình ( tt ) Các phương thức Console.Clear ( ); Console.Beep ( ); Console.Beep ( tần số , thời gian-ms ) ; Console.SetCursorPosition ( cột , hàng ); Console.SetWindowSize ( rộng , cao ); Console.ResetColor ( ); Console.ReadKey ( ) ; Lưu ý Console.ReadKey ( ) trả về 1 giá trị kiểu ConsoleKeyInfo Trừ Console.ReadKey ( ), tất cả các phương thức trên có dạng “ thủ tục ” (void)

Điều khiển màn hình ( tt ) Console.Title = " Xin chao cac ban ! " ; Console.CursorSize = 80; Console.Clear ( ); bool a= Console.CapsLock ; string kq = a ? "bat" : "tat"; Console.SetCursorPosition (15,5); Console.WriteLine("Phim Capslock dang "+kq); Console.Beep (1000,2000); Console.WriteLine ( " An 1 phim di !! " ); ConsoleKeyInfo cik = Console.ReadKey ( );

Q&A
Tags