Cấu trúc lệnh trong C #
Trong C# tớ chia ra cấu trúc lệnh thành 3 loại:
còn một vài kiểu lệnh nữa nhưng các bạn đừng nên quan tâm quá nhiều tránh gây nhầm lẫn.
I. Cấu trúc điều khiển:
C# cung cấp hai cấu trúc điều khiển thực hiện việc lựa chọn điều kiện thực thi chương trình đó là cấu trúc if và switch...case.
I.I. Cấu trúc if
Cấu trúc if trong C# được mô tả như sau:
Visual C# Code:
if (biểu thức điều kiện)
{
// câu lệnh thực thi nếu biểu thức điều kiện đúng
}
else
{
// câu lệnh thực thi nếu biểu thức điều kiện sai
}
Đây là câu lệnh dùng để kiểm tra điều kiện
Ví dụ:
Visual C# Code:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication19
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hay nhap vao mot ten khoaimon");
string input;
input = Console.ReadLine();
if (input == "khoaimon")
{
Console.WriteLine("khoaimon kute hihi");
}
else
{
Console.WriteLine("ban chua nhap dung");
}
Console.WriteLine("Ban vua go " + input);
Console.ReadLine();
}
}
}
Trong ví dụ trên câu lệnh if kiểm tra giá trị của input được nhập vào có trùng với từ “khoaimon” hay không? Nếu đúng thì in ra dòng chữ “khoaimon kute hihi” còn nhập sẽ chương trình sẽ báo lỗi bạn chưa nhập đúng. Câu lệnh này khá đơn giản và chắc chắn các bạn sẽ hiểu được nó sau một vài ví dụ.
Trong cấu trúc câu lệnh if này tớ sẽ giới thiệu thêm một trường hợp các câu lệnh if lồng nhau. Trường hợp các câu lệnh if lồng nhau dùng để cho việc xử lý các câu lệnh điều kiện phức tạp.
Cấu trúc:
Visual C# Code:
if(điều kiện 1)
if(điều kiện 2){
}
else{
}
else{
}
Hoặc
Visual C# Code:
if(điều kiện 1){
}
else{
if(điều kiện 2){
}
else{
}
}
I.II. Cấu trúc switch … case
Các câu lệnh if nằm lồng nhau rất khó đọc, khó gỡ rối. Khi chúng ta có một loạt lựa chọn phức tạp thì nên sử dụng câu lênh switch.
Cấu trúc swtich….case có cú pháp như sau:
Visual C# Code:
// switch ... case
switch (Biến điều kiện)
{
case giá trị 1:
Câu lệnh thực thi
break;
case giá trị 2:
Câu lệnh thực thi
break;
case giá trị 3:
Câu lệnh thực thi
break;
default:
Câu lệnh thực thi
break;
}
Cũng tương tự như câu lệnh if, biểu thức để so sánh được đặt sau từ khóa switch, tuy nhiên giá trị so sánh lại được đặt sau mỗi các từ khóa case. Trong câu lệnh này phải có một câu lệnh nhảy như break, gôt để điều khiển nhảy qua các case khác. Nếu không thì chương trình sẽ thực hiện tất cả các case theo sau.
II. Cấu trúc lặp
C# cung cấp các cấu trúc vòng lặp chương trình
While
Do… while
For
Foreach
Cho phép chúng ta thực hiện một đoạn mã lặp lại đến khi đúng điều kiện lặp.
Sau đây, tôi xin giới thiệu công thức và ví dụ sử dụng các vòng lặp trên
Vòng lặp While
Cấu trúc vòng lặp while
Visual C# Code:
while (biểu thức điều kiện)
{
// câu lệnh
}
Thực thi câu lệnh hoặc một loạt những câu lệnh đến khi điều kiện không thỏa mãn.
Ví dụ:
Visual C# Code:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication19
{
class Program
{
static void Main(string[] args)
{
int diem = 0;
while ( diem < 10 )
{
Console.WriteLine(" diem: {0} ",diem);
diem++;
}
Console.ReadLine();
}
}
}
Vòng lặp do…while
Cấu trúc vòng lặp do…while
Visual C# Code:
do
{
// câu lệnh
}
While (biểu thức điều kiện)
Chú ý: Ở đây có sự khác biệt quan trọng giữa vòng lặp while và vòng lặp do...while là khi dùng vòng lặp do...while thì tối thiểu sẽ có một lần các câu lệnh trong do...while được thực hiện. Điều này cũng dễ hiểu vì lần đầu tiên đi vào vòng lặp do...while thì điều kiện chưa được kiểm tra.
Ví dụ:
Visual C# Code:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication19
{
class Program
{
static void Main(string[] args)
{
int diem = 10;
do
{
Console.WriteLine(" diem: {0} ", diem);
diem++;
} while (diem < 10);
Console.ReadLine();
}
}
}
Ở trong ví dụ này chúng ta sẽ thấy mặc dù diem = 10 là vi phạm điều kiện nhưng chương trình vẫn ra in kết quả diem = 10. Vì trong câu lệnh này nó thực hiện câu lệnh in ra diem = 10 rồi sau đó mới kiểm tra điều kiện rằng 10 không thỏa mãn và sau đó mới dừng chương trình.
Vòng lặp for
Cấu trúc vòng lặp for
Visual C# Code:
for ([ phần khởi tạo] ; [biểu thức điều kiện]; [bước lặp])
{
// thực thi câu lệnh
}
Ví dụ:
Visual C# Code:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication19
{
class Program
{
static void Main(string[] args)
{
for (int diem = 0; diem <= 10; diem++)
Console.WriteLine(diem);
Console.ReadLine();
}
}
}
Vòng lặp foreach
Câu lệnh foreach cho phép chúng ta lặp qua tất cả các mục trong một mảng hay trong một tập hợp. Cú pháp sử dụng lệnh lặp foreach như sau:
Visual C# Code:
foreach ( in )
{
// thực hiện thông qua tương ứng với
// từng mục trong mảng hay tập hợp
}
Ở đây chúng ta sẽ chỉ quan tâm đến vòng lặp foreach sử dụng với mảng. Bạn hãy xem ví dụ sau để hiểu cách sử dụng của vòng lặp foreach truy cập đến từng phần tử của mảng.
Visual C# Code:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication19
{
class Program
{
static void Main(string[] args)
{
int[] intArray = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
foreach (int item in intArray)
{
Console.Write("{0} ", item);
}
Console.ReadLine();
}
}
}
III. Các lệnh break, goto và continue
III.I. Câu lệnh nhảy goto:
Lệnh nhảy goto là một lệnh nhảy đơn giản, cho phép chương trình nhảy vô điều kiện tới một vị trí trong chương trình thông qua tên nhãn. Goto giúp chương trình của bạn được linh hoạt hơn nhưng trong nhiều trường hợp nó sẽ làm mất đi cấu trúc thuật toán và gây rối chương trình.
Cách sử dụng lệnh goto:
Tạo một nhãn
goto đến nhãn
Nhãn là một định danh theo sau bởi dấu hai chấm " : ". Thường thường một lệnh goto gắn với
một điều kiện nào đó.
Nhưng trong lập trình người ta tránh dùng nó vì việc sử dụng câu lệnh này sẽ khiến chương trình bị rối và gây ra tình trạng khó kiểm soát. Vì thế tớ sẽ không đi sâu vào nó.
III.II. Câu lệnh nhảy break
Ta dùng câu lệnh break khi muốn ngưng ngang việc thi hành và thoát khỏi vòng lặp và tiếp tục thực hiện các lệnh tiếp ngay sau vòng lặp.
III.III. Câu lệnh nhảy continue
Câu lệnh continue được dùng trong vòng lặp khi bạn muốn khởi động lại một vòng lặp nhưng lại không muốn thi hành phần lệnh còn lại trong vòng lặp, ở một điểm nào đó trong thân vòng lặp.
Ngoài ra còn có một vài câu lệnh nhảy nữa như return, yield, default. Chúng ta sẽ hiểu hơn về chúng khi làm những bài tập về sau này.
0 nhận xét:
Đăng nhận xét