Lập trình c# luôn là 1 ngôn ngữ phù hợp với mọi đối tượng, ngôn ngữ lập trình tường minh, giúp bạn nhanh đạt được ước muốn lập trình 1 phần mềm quản lý?
- Giới thiệu về c#
- Lộ trình học C#
- Kênh video về học lập trình c#
- Chia sẽ kiến thức về C#

1. Giới thiệu về c#
Ngôn ngữ c# là ngôn ngữ do Microsoft sáng lập, được rất nhiều lập trình viên trên thế giới đang sử dụng hằng ngày để lập trình ra các phần mềm ứng dụng từ hệ thống đến phần mềm quản lý dữ liệu như phần mềm bán hàng, kho, công nợ ...
Ngôn ngữ C# có cấu trúc rõ ràng nên rất dễ học cho người mới bắt đầu.
Có 2 hướng để học lập trình c#, thứ 1 là học lập trình liên quan đến hệ thống phần cứng, thứ 2 là học lập trình để xây dựng phần mềm quản lý.
Nếu bạn đang cần học để xây dựng một phần mềm quản lý thì tôi là Nhật, đã 12 kinh nghiệm làm phần mềm trong và ngoài nước, tôi vừa có kiến thức về lập trình chuyên sâu ngôn ngữ C# và vừa có kiến thức về nghiệp vụ kinh tê, tôi sẽ giúp bạn học lập trình c# và ứng dụng vào công việc hiệu quả nhất.
Khoá học này sẽ mang đến toàn bộ những kiến thức cơ bản về C#. Chào mừng các bạn đã đến với khoá học LẬP TRÌNH C# CƠ BẢN của iif.
2. Lộ trình lập trình C#
- Học cơ bản về C#: biến, class, namespace
- Vòng lặp
- Xử lý file text C#
- Các phép toán trong c#: làm một số bài toán tư duy về lập trình c#
- Kinh nghiệp triển khai từ ý tưởng đến phần mềm bằng C#
- Lập trình C# với biến DataTable để dữ lý dữ liệu
- Lập trình C# kết nối SQL Server: máy chủ và máy con, chạy phần mềm truy cập dữ liệu qua internet
- Đóng gói file cài đặt & thương mại phần mềm c#
Bạn được học các kiến thức nền tảng của lập trình, giúp bạn có thể nghiên cứu các ngôn ngữ lập trình khác nhanh hơn.
Sau khi kết thúc khóa học: bạn đủ kiến thức để xây dựng một phần mềm quản lý tương tác với hệ cơ sỡ dữ liệu SQL Server, từ đó bạn có thể lập trình ra các phần mềm C# chuyên nghiệp để phục vụ công ty của bạn.
- Bạn hãy liên hệ số zalo để được hỗ trợ nhé
3. Xem kênh youtube học lập trình C#
Kênh video học C# cơ bản: https://www.youtube.com/playlist?list=PLcb0DtvgBEVUUOgw7vmvSNI1x_jFGk5ey

Kênh video học winform c#
https://www.youtube.com/playlist?list=PLcb0DtvgBEVWgNthP9QUzpJxYY8Hgp4Wh

4. Tài liệu học CSharp cơ bản
Mục lục:
- Viết 1 ứng dụng in ra dòng chữ Hello World
- Cách comments (ghi chú) trong C#
- Biến và kiểu dữ liệu trong C#
- Toán tử số học trong C#
- Sử dụng thư viện Math trong C#
- Chuổi trong C#
- Kiểu Boolean trong C#
- Toán tử so sánh trong C#
- Luồng điều khiển (Control Flow)
- Câu lệnh If (nếu-thì) trong C#
- Toán tử điều kiện ?:
- Lệnh switch trong C#
- Phương thức trong C#
- Mảng trong C#
- Vòng lặp trong C#
- Lớp và đối tượng (Class & Object
(1) Viết 1 ứng dụng in ra dòng chữ Hello World trong C#
Write Line, Read Line
Console.WriteLine("Hello, world!");
// Prints: Hello, world!
Cú pháp Console.WriteLine() được sử dụng in ra màn hình 1 đoạn văn bản.
Read Line
Console.WriteLine("Enter your name: ");
name = Console.ReadLine();
Cú pháp Console.ReadLine() dùng để dừng chương chờ người dùng nhập liệu vào từ bán phím, sẽ được tiếp tục sau khi nhấn enter.
(2) Cách comments (ghi chú) trong C#
Comments
// Ghi chú 1 dòng
/* Ghi chú nhiều dòng
được sử dụng trong trường hợp ghi chú nhiều */`
Tại sao lại cần ghi chú trong C# ?, bởi vì khi bạn viết code cần ghi chú lại để biết dòng code đó làm việc gì thì chính là Comment
Có 2 cách comment
Ghi chú dòng đơn được tạo với hai dấu gạch chéo về phía trước //.
Ghi chú nhiều dòng được tạo bắt đầu với /* và kết thúc với */. Nó rất hữu ích cho việc ghi chú các khối mã lớn
(3) Biến và kiểu dữ liệu trong C#
Biến trong c# là gì ? Biến trong c# là một vùng bộ nhớ được khởi tạo khi phần mềm khởi chạy.
/* Chương trình này khởi tạo 2 biến a và b, sau đó tính toán
tong bằng a cộng b, sau đó in ra màn hình */`
// khai báo biến ten
string ten = "Nhật";
int a=10;
int b=2;
int tong=a+b; //Tính tổng a+b
Console.WriteLine(tong);
(4) Toán tử số học trong C#
Làm phần mềm mà không có sử dụng được các phép tính cộng trừ nhân chia thì phần mềm không ứng dụng được !
Ví dụ code C# về các phép tính cơ bản trong toán học
int ketqua;
ketqua= 10 + 5; // 15 * cộng
ketqua= 10 - 5; // 5 * trừ
ketqua= 10 * 5; // 50 * nhân
ketqua= 10 / 5; // 2 * chia
ketqua= 10 % 5; // 0 , chia lấy số dư
Toán tử số học được sử dụng để tính toán cho ra kết quả khi làm phần mềm:
+ cộng toán tử
- trừ toán tử
* nhân toán tử
/ chia toán tử
% toán tử modulo (trả lại phần còn lại)
int a = 10;
a=a+1;
Console.WriteLine(a); // kết quả: 11
a=a+2;
Console.WriteLine(a); // kết quả: 13
a=a-1;
Console.WriteLine(a); // kết quả: 12
Kết hợp toán tử (++)
int a = 10;
a++;
Console.WriteLine(a); // kết quả: 11
int b=10;
b=b+1;
Console.WriteLine(b); // kết quả: 11
Bạn hãy cho nhận xét về 2 phép toán trên và rút ra điều gì trong lập trình c# ?
Bài tập:
int a = 2;
a++;
a++;
Console.WriteLine(a); // kết quả bao nhiêu ?
Bài tập:
int a = 2;
Console.WriteLine(++a); // kết quả bao nhiêu ?
int b= 2;
Console.WriteLine(b++); // kết quả bao nhiêu ?
Qua ví dụ C# trên bạn rút ra điều gì ?
(5) Sử dụng thư viện Math trong C#
Tìm căn bậc 2 trong C#
int a = 4;
Console.Write(Math.Sqrt(a )); // kết quả: 2
//khai báo biến a, b, c là các số cần làm trong
double a, b, c;
//yêu cầu người dùng nhập vào số cần làm tròn
Console.Write("Nhap vao so thu nhat: ");
a = Convert.ToDouble(Console.ReadLine());
Console.Write("Nhap vao so thu hai: ");
b = Convert.ToDouble(Console.ReadLine());
Console.Write("Nhap vao so thu ba: ");
c = Convert.ToDouble(Console.ReadLine());
//hiển thị các số sau khi đã làm tròn
Console.WriteLine("\n So {0} sau khi lam tron hai chu so thap phan la: {1}",a , Math.Round(a,2));
Console.WriteLine("\n So {0} sau khi lam tron ba chu so thap phan la: {1}", b , Math.Round(b,3));
Console.WriteLine("\n So {0} sau khi lam tron bon chu so thap phan la: {1}", c , Math.Round(c,4));
Console.WriteLine("\n-----Xin cảm ơn ---");
* Nếu không sử dụng làm tròn thì phần mềm in ra các con số rất dài, làm người dụng khó nhin.
* Hãy cho mình biết là trong làm phần mềm thực tế ứng dụng hàm Round để làm việc gì ?
(6) Chuổi trong C#
Trong C# việc ứng dụng các hàm xử lý chuổi được code rất nhiều bởi một phần mềm luôn luôn có những hàm xử lý chuổi.
Nối chuỗi ký tự trong C#
// Khai báo 2 biến tên và họ
string ten= "A";
string ho= "Trần Văn";
string hoten= ho+ " " + ten;
Console.WriteLine(hoten);
* Nối chuỗi trong c# được ứng dụng để ghép các giá trị lại với nhau, cho ra 1 giá trị mong muốn.
// Khai báo biến x
string x= "A";
x=x+"B";
x=x+"C";
Console.WriteLine(c);
string y= "A";
y="B"+y;
y="C"+y;
Console.WriteLine(c);
Bạn hãy chạy và cho nhận xét ví dụ nối chuổi trên.
Ký tự xuống hàng khi in chuổi dài trong C#
// Khai báo biến nội dung
string noidung= "Tôi tên là Nhật, sáng lập ngôn ngữ iif, ngôn ngữ iif được ứng dụng để tạo ra các app web nhanh nhất";
Console.WriteLine(noidung);
// Đưa ký tự xuống hàng vào
noidung= "Tôi tên là Nhật \n sáng lập ngôn ngữ iif \n ngôn ngữ iif được ứng dụng để tạo ra các app web nhanh nhất";
Console.WriteLine(noidung);
* Bạn sẽ thấy ký tự in ra được xuống hàng theo mong muốn, ngoài ứng dụng trong Console thì ký tự xuống hàng còn ứng dụng nhiều trong winform cũng như webform khác.
Sử dụng biểu thức trong chuổi C#
// Khai báo biến nội dung
int tuoi=20;
string noidung= $"Tôi tên là Nhật, sáng lập ngôn ngữ iif, năm nay {tuoi}";
Console.WriteLine(noidung);
int a=2;
int b=4;
string noidung= $"Kêt quả của {a} +{b} là {a+b}";
Console.WriteLine(noidung);
Qua ví dụ trên ta thấy không chỉ đưa giá trị của biến vào được chuổi mà còn có thể tính toán trong chuối
Tóm lại: để sử dụng được biến trong chuổi là thêm dấu $ trước chuổi và đưa 2 bên biến bởi dấu {}
Chuyển chữ thường thành chữ hoa trong C#
// Khai báo biến nội dung
string ten="tran van a";
Console.WriteLine(ten.ToUper());
Chuyển chữ hoa thành chữ thường trong C#
// Khai báo biến nội dung
string ten="TRAN VAN A";
Console.WriteLine(ten.ToLower());
* trong thực tế việc ứng chuyển chữ hoa thành chữ thường và ngược ứng dụng rất nhiều, ví dụ khi bạn in một dữ liệu ra màn hình muốn chữ to rõ hơn bạn cần chuyển thành chữ hoa bạn phải sử dụng hàm ToUper trong c#
Tính độ dài chuổi trong c#
// Khai báo biến nội dung
string ten="Bùi Văn Ham Học";
Console.WriteLine(ten.Length());
Vậy dụng Length để làm gì ? hay C# sinh ra Length để vui hay chỉ để trang trí
Mình lấy ví dụ thực tế như sau:
Một họ tên thì không thể quá dài, khi lưu vào dữ liệu nếu dài trên 100 ký tự thì báo cho người nhập liệu phần mềm biết
// Khai báo biến nội dung
string ten="Bùi Văn Ham Học Nhưng Thích Chơi";
if(ten.Length()>50)
Console.WriteLine("Bạn đã nhâp quá 100 ký tự !");
Có 1 bài tập cho bạn: hãy viết 1 phần mềm nhập liệu Họ và tên, tuổi. sau khi nhập xong nhấn enter, nếu họ tên nhập quá dài , lớn hơn 70 ký tự thì báo người dùng biết, và yêu cầu nhập lại.
Tìm vị trí trong 1 chuổi c#
string ten = "Toi la iif";
Console.WriteLine( ten.IndexOf('i') ); // vị trí chữ i trong chuổi
Console.WriteLine(ten.IndexOf("iif")); // vị trí iif trong chuổi
Console.Read();
IndexOf trong C# được sử dụng để tìm vị trí chỉ mục của một ký tự được chỉ định trong một chuỗi. Kết quả trả về -1 nếu không tìm thấy ký tự.
Cắt chuổi trong c#
string ten = "Toi la iif";
Console.WriteLine( ten.Substring(4) );
Console.Read();
(7) Kiểu Boolean trong C#
Kiểu Boolean là kiểu dữ liệu đúng hay sai,
bool DaLamXong= true;
bool DaCiGiaDinh = false;
// Giá trị lưu chỉ 2 tùy chọn True / False.
Bạn đoán xem code sau chạy thế nào ?
bool kq = 1;
Console.WriteLine($"True or false, is the sky blue? {skyIsBlue}.");
/* This simple program illustrates how booleans are declared.
However, the real power of booleans requires additional programming
constructs such as conditionals.*/
Cú pháp bool trả về kiểu dữ liệu true hoặc false và sẽ dựa trên tính hợp lệ của tất cả các câu lệnh logic phải là đúng hoặc sai.
(8) Toán tử so sánh trong C#
int x = 10;
Console.WriteLine(x> 5);
// In ra là "True" bởi vì 10>5
Console.WriteLine(x >20);
// In ra là "False" bởi vì 10 >20 là sai
string ten= "nhat";
Console.WriteLine(ten== "nhat");
// in ra là True bởi vì giá trị biến ten 'nhat' = 'nhat'
Bài tập:
string ten = "nhat";
Console.WriteLine(ten == "Nhat");
Bạn hãy cho biết kết quả, vì sao ?
Toán tử Logic trong C#
bool a = true && true;
bool b = false || true;
bool c = !false;
bool d = true && false;
bool e = false || false;
bool f = !true;
(9) Luồng điều khiển (Control Flow)
Trong lập trình, luồng điều khiển là thứ tự thực hiện các câu lệnh và lệnh. Người lập trình có thể thay đổi luồng điều khiển của chương trình bằng cách sử dụng các cấu trúc điều khiển có điều kiện.
Câu lệnh điều kiện hoặc cấu trúc điều khiển có điều kiện cho phép một chương trình có các hành động khác nhau tùy thuộc vào các điều kiện nhất định được đáp ứng.
Về mặt trực quan, điều này bắt chước cách con người đưa ra các quyết định và hành động theo chúng. Ví dụ, lý luận về việc đi ra ngoài có thể như sau:
Điều kiện: bên ngoài trời có mưa không?
Nếu trời đang mưa, hãy mang theo ô.
Nếu trời không mưa, thì không mang theo ô.
Chúng ta có thể tiếp tục thêm các mệnh đề để làm cho lập luận trở nên phức tạp hơn, chẳng hạn như “Nếu trời nắng thì hãy bôi kem chống nắng”.
- Câu lệnh If (nếu-thì) trong C#
if (true) {
// This code is executed.
Console.WriteLine("Hello User!");
}
if (false) {
// This code is skipped.
Console.WriteLine("This won't be seen :(");
}
Trong ngôn ngữ lập trình C # (C Sharp), câu lệnh if thực thi một chức năng dựa trên việc biểu thức boolean được cung cấp trong dấu ngoặc đơn có “phải” hay “không” <=> true hay false.
Nếu là “phải” tức là true thì sẽ thực hiện tiếp các mã, khối lệnh trong dấu ngoặc {}, nếu “không” thì sẽ bỏ qua.
- Câu lệnh Else (không thì) trong C#
if (true) {
// This block will run.
Console.WriteLine("Seen!");
} else {
// This will not run.
Console.WriteLine("Not seen!");
}
if (false) {
// Conversely, this will not run.
Console.WriteLine("Not seen!");
} else {
// Instead, this will run.
Console.WriteLine("Seen!");
}
* Một lệnh else theo sau sẽ là dấu ngoặc {} chứa một khối mã lệnh. Trước lệnh else thì phải có mệnh đề khác đặt trước câu lệnh if .
Khối bên trong dấu ngoặc của lệnh else chỉ được thực hiện khi điều kiện của câu lệnh if là false. Tức là khối mã lệnh trong câu lệnh if không được thực thi thì khi đó mới đến khối mã lệnh trong câu lệnh else.
If và Else If (nếu-nếu không thì) trong C#
int x = 100, y = 80;
if (x > y)
{
Console.WriteLine("x is greater than y");
}
else if (x < y)
{
Console.WriteLine("x is less than y");
}
else
{
Console.WriteLine("x is equal to y");
}
Một mã câu lệnh phổ biến khi viết nhiều câu lệnh if và else là có một khối lệnh else được lồng câu lệnh if, và có thể chứa thêm lệnh else khác, etc. Một cách tốt hơn để thể hiện những chức năng này trong C# là sử dụng lệnh else if . Điều kiện đầu tiên được đánh giá là true thì sẽ chạy khối mã được liên kết của nó. Nếu được đánh giá là false, thì các khối mã lệnh else sẽ được chạy (nếu tồn tại).
Lệnh Switch trong C#
// The expression to match goes in parentheses.
switch (fruit) {
case "Banana":
// If fruit == "Banana", this block will run.
Console.WriteLine("Peel first.");
break;
case "Durian":
Console.WriteLine("Strong smell.");
break;
default:
// The default block will catch expressions that did not match any above.
Console.WriteLine("Nothing to say.");
break;
}
// The switch statement above is equivalent to this:
if (fruit == "Banana") {
Console.WriteLine("Peel first.");
} else if (fruit == "Durian") {
Console.WriteLine("Strong smell.");
} else {
Console.WriteLine("Nothing to say.");
}
- Lệnh switch trong C#
Lệnh switch là một cấu trúc luồng điều khiển đánh giá một biểu thức và quyết định khối mã nào sẽ chạy bằng cách xét độ khớp kết quả của biểu thức với từng trường hợp case. Nói chung, một khối mã được thực thi khi giá trị cho case bằng với biểu thức được đánh giá, tức là khi sử dụng toán tử so sánh == giữa hai giá trị trả về true. Lệnh switch thường được dùng để thay thế cho cấu trúc lệnh if else khi điều kiện kiểm tra đều là sự so sánh bằng hay không bằng một giá trị.
Lệnh ngắt (Break) trong C#
string color = "blue";
switch (color) {
case "red":
Console.WriteLine("I don't like that color.");
break;
case "blue":
Console.WriteLine("I like that color.");
break;
default:
Console.WriteLine("I feel ambivalent about that color.");
break;
}
// Regardless of where the break statement is in the above switch statement,
// breaking will resume the program execution here.
Console.WriteLine("- Steve");
Một trong những công dụng của lệnh break trong C# là để thoát ra khỏi khối lệnh switch/case và sau đó tiếp tục thực thi các chương trình sau khối mã lệnh switch . Trong C#, mỗi khối mã case trong một câu lệnh switch cần được thoát ra bằng lệnh break (hoặc bằng một số câu lệnh jump khác), nếu không thì chương trình sẽ không thể biên dịch. Nó sẽ được gọi ra sau khi tất cả các chương trình cụ thể trong case đã được thực thi.
- Toán tử điều kiện ?:
bool isRaining = true;
// This sets umbrellaOrNot to "Umbrella" if isRaining is true,
// and "No Umbrella" if isRaining is false.
string umbrellaOrNot = isRaining ? "Umbrella" : "No Umbrella";
// "Umbrella"
Console.WriteLine(umbrellaOrNot);
Trong C #,Toán tử điều kiện ?: cú pháp đặc biệt có dạng: condition ? expression1 : expression2.
Nó nhận một điều kiện boolean và hai biểu thức làm đầu vào. Không giống như câu lệnh if statement, toán tử bậc ba tự nó là một biểu thức. Nó đánh giá biểu thức đầu vào đầu tiên hoặc biểu thức đầu vào thứ hai tùy thuộc vào điều kiện tương ứng là đúng hay sai tức là true hay false.
10. Phương thức trong C#
static void DeclareAndPrintVars(int x)
{
int y = 3;
// Using x and y inside the method is fine.
Console.WriteLine(x + y);
}
static void Main()
{
DeclareAndPrintVars(5);
// x and y only exist inside the body of DeclareAndPrintVars, so we cannot use them here.
Console.WriteLine(x * y);
}
Không thể sử dụng các tham số và biến được khai báo bên trong một phương thức bên ngoài phần thân của phương thức. Cố gắng làm như vậy sẽ gây ra lỗi khi biên dịch chương trình!
Các tham số tùy chọn trong C#
// y and z are optional parameters.
static int AddSomeNumbers(int x, int y = 3, int z = 2)
{
return x + y + z;
}
// Any of the following are valid method calls.
AddSomeNumbers(1); // Returns 6.
AddSomeNumbers(1, 1); // Returns 4.
AddSomeNumbers(3, 3, 3); // Returns 9.
Trong C #, các phương thức có thể được cung cấp các tham số tùy chọn. Một tham số là tùy chọn nếu khai báo của nó chỉ định một đối số mặc định. Các phương thức với một tham số tùy chọn có thể được gọi có hoặc không có truyền vào một đối số cho tham số đó. Nếu một phương thức được gọi mà không truyền đối số cho tham số tùy chọn, thì tham số được khởi tạo với giá trị mặc định của nó.
Để xác định một tham số tùy chọn, hãy sử dụng dấu bằng sau phần khai báo tham số, theo sau là giá trị mặc định của nó.
Lệnh trả về (Return) trong C#
static int ReturnAValue(int x)
{
// We return the result of computing x * 10 back to the caller.
// Notice how we are returning an int, which matches the method's return type.
return x * 10;
}
static void Main()
{
// We can use the returned value any way we want, such as storing it in a variable.
int num = ReturnAValue(5);
// Prints 50 to the console.
Console.WriteLine(num);
}
Trong C #, câu lệnh return có thể được sử dụng để trả về một giá trị từ một phương thức và trở lại trình gọi của phương thức đó.
Khi lệnh return được gọi, phương thức hiện tại kết thúc và sẽ điều khiển được trả về nơi phương thức ban đầu được gọi. Giá trị được phương thức trả về phải khớp với kiểu trả về của phương thức, được chỉ định trong khai báo phương thức.
Kiểu trả về Void (Void Return Type)
// This method has no return value
static void DoesNotReturn()
{
Console.WriteLine("Hi, I don't return like a bad library borrower.");
}
// This method returns an int
static int ReturnsAnInt()
{
return 2 + 3;
}
Trong C #, các phương thức không return một giá trị có một kiểu trả về void.
void không phải là một kiểu dữ liệu thực tế như int hay string, vì nó đại diện cho việc thiếu đầu ra hoặc giá trị.
Tham số Out
// f1, f2, and f3 are out parameters, so they must be prefixed with `out`.
static void GetFavoriteFoods(out string f1, out string f2, out string f3)
{
// Notice how we are assigning values to the parameters instead of using `return`.
f1 = "Sushi";
f2 = "Pizza";
f3 = "Hamburgers";
}
static void Main()
{
string food1;
string food2;
string food3;
// Variables passed to out parameters must also be prefixed with `out`.
GetFavoriteFoods(out food1, out food2, out food3);
// After the method call, food1 = "Sushi", food2 = "Pizza", and food3 = "Hamburgers".
Console.WriteLine($"My top 3 favorite foods are {food1}, {food2}, and {food3}");
}
return chỉ có thể trả về một giá trị. Khi cần nhiều giá trị thì có thể sử dụng tham số out.
Tham số out được bắt đầu bằng out trong tiêu đề phương thức. Khi được gọi, đối số cho mỗi tham số out phải là một biến có tiền tố out.
Tham số out số trở thành bí danh (tên thứ 2) cho các biến được chuyển vào. Vì vậy, chúng ta có thể gán giá trị cho các tham số và chúng sẽ tồn tại trên các biến mà chúng ta đã truyền vào sau khi phương thức kết thúc.
Khai báo phương thức
// This is an example of a method header.
static int MyMethodName(int parameter1, string parameter2) {
// Method body goes here...
}
Trong C #, một khai báo phương thức, còn được gọi là tiêu đề phương thức, bao gồm mọi thứ về phương thức ngoài phần thân của phương thức. Khai báo phương thức bao gồm:
tên phương thức
kiểu tham số
thứ tự tham số
tên tham số
kiểu trả về
bổ ngữ tùy chọn
11. Mảng trong C#
int[] numbers = { 7, 7, 7, 4, 7 };
int[] someArray = { 3, 4, 1, 6 };
Console.WriteLine(someArray.Length); // Prints 4
string[] otherArray = { "foo", "bar", "baz" };
Console.WriteLine(otherArray.Length); // Prints 3
Thuộc tính Length của một mảng C # có thể được sử dụng để lấy số phần tử trong một mảng cụ thể.
12 . Vòng lặp For trong C#
// This loop initializes i to 1, stops looping once i is greater than 10, and increases i by 1 after each loop.
for (int i = 1; i <=10; i++) {
Console.WriteLine(i);
}
Vòng lặp For Each trong C#
string[] states = { "Alabama", "Alaska", "Arizona", "Arkansas", "California", "Colorado" };
foreach (string state in states) {
// The `state` variable takes on the value of an element in `states` and updates every iteration.
Console.WriteLine(state);
}
// Will print each element of `states` in the order they appear in the array.
Một vòng lặp foreachtrong C # dùng để chạy một tập hợp các lệnh một lần cho mỗi phần tử trong một tập hợp nhất định. Ví dụ: nếu một mảng có 200 phần tử, thì phần thân của vòng lặp foreach sẽ thực thi 200 lần. Khi bắt đầu mỗi lần lặp, một biến được khởi tạo cho phần tử hiện tại đang được xử lý.
Nó được khai báo bằng lệnh foreach. Tiếp theo, trong dấu ngoặc đơn, một loại biến và tên biến theo sau là từ in và tập hợp để lặp lại.
Vòng lặp While trong C#
string guess = "";
Console.WriteLine("What animal am I thinking of?");
// This loop will keep prompting the user, until they type in "dog".
while (guess != "dog") {
Console.WriteLine("Make a guess:");
guess = Console.ReadLine();
}
Console.WriteLine("That's right!");
Trong C #, vòng lặp while thực thi một tập hợp các lệnh liên tục trong khi biểu thức boolean đã cho đánh giá là true hoặc một trong các lệnh bên trong thân vòng lặp, chẳng hạn như lệnh break kết thúc vòng lặp.
Lưu ý rằng phần thân của vòng lặp có thể hoàn toàn không chạy, vì điều kiện boolean được đánh giá trước lần lặp đầu tiên của vòng lặp while.
Cú pháp khai báo vòng lặp while đơn giản là từ while theo sau là điều kiện boolean trong ngoặc đơn.
Vòng lặp Do While trong C#
do {
DoStuff();
} while(boolCondition);
// This do-while is equivalent to the following while loop.
DoStuff();
while (boolCondition) {
DoStuff();
}
Trong C #, vòng lặp do while chạy một tập các lệnh một lần và sau đó tiếp tục chạy miễn là điều kiện boolean đã cho là true. Lưu ý rằng quá trình này gần giống với vòng lặp while, với điểm khác biệt là do while chạy một hoặc nhiều lần và vòng lặp while không chạy hoặc chạy nhiều lần.
Vòng lặp vô hạn trong C#
while (true) {
// This will loop forever unless it contains some terminating statement such as `break`.
}
Vòng lặp vô hạn là vòng lặp không bao giờ kết thúc vì điều kiện dừng của nó luôn false. Một vòng lặp vô hạn có thể hữu ích nếu một chương trình bao gồm liên tục thực thi một đoạn mã. Tuy nhiên, một vòng lặp vô hạn không chủ ý có thể khiến một chương trình bị treo và không phản hồi do bị mắc kẹt trong vòng lặp.
while (true) {
Console.WriteLine("This prints once.");
// A `break` statement immediately terminates the loop that contains it.
break;
}
Các lệnh kiểm soát luồng bao gồm break, continue, và return.
13. Lớp và đối tượng (Class & Object)
using System;
namespace BasicClasses
{
class Forest {
public string name;
public int trees;
}
}
class Forest
{
public string name;
public string Name
{
get { return name; }
set { name = value; }
}
}
// A member of a class can be a field (like name), a property (like Name) or a method (like get()/set()). It can also be any of the following:
// Constants
// Constructors
// Events
// Finalizers
// Indexers
// Operators
// Nested Types
Trong ngôn ngữ lập trình C# (C Sharp), một lớp (class) chứa các thành viên (member), xác định loại dữ liệu được lưu trữ trong một lớp và các hành động mà một lớp có thể thực hiện.
Ký hiệu dấu chấm “.” trong C#
1
2
3
4
5
6
7
string greeting = "hello";
// Prints 5
Console.WriteLine(greeting.Length);
// Returns 8
Math.Min(8, 920);
Trong C #, một thành viên của một lớp có thể được truy vấn bằng ký hiệu dấu chấm.
Class Instance trong C#
1
2
3
4
5
Burger cheeseburger = new Burger();
// If a class is a recipe, then an object is a single meal made from that recipe.
House tudor = new House();
// If a class is a blueprint, then an object is a house made from that blueprint.
khoa_hoc_c#_mien_phi,
lap_trinh_c#_winform_(tieng_viet),
hoc_lap_trinh_c#,
hoc_lap_trinh_c#_cho_nguoi_moi_bat_dau,
lap_trinh_c#,
khoa_hoc_c#_online,
tu_hoc_c#_trong_21_ngay_pdf,
lap_trinh_c#_co_ban_pdf