ASP.NET: Bài tập áp dụng và thực hành C#

ASP.NET: Bài tập áp dụng và thực hành C#

Mình đã viết một bài giới thiệu cơ bản về C# và một số bài áp dụng. Hôm nay muốn chia sẽ với các bạn một số bài tập nâng cao hơn tí trước khi chúng ta sẽ áp dụng vào trong lập trình web.

Đầu tiên là mảng một chiều trong c#”

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
static void Main(string[] args)
{
    int[] a = new int[10];
    //nhap cho array
    for (int i = 0; i < 10; i++)
    {
        Console.Write("nhap a[{0}]=", i);
        a[i] = int.Parse(Console.ReadLine());
    }
    //xuat array
    for (int i = 0; i < 10; i++)
    {
        Console.WriteLine("{0} ", a[i]);
    }
}

Cách khai báo mảng: có từ khóa new và gán giá trị cho mảng. Hơi khác c một tí hi

1
int[] a = new int[10];

Mảng hai chiều trong C#:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
        static void Main(string[] args)
        {
            //nhap mang n chieu
 
            int[,] a;
            Console.WriteLine("nhap so dong n= ");
            int n = int.Parse(Console.ReadLine());
            Console.WriteLine("nhap so cot m= ");
            int m = int.Parse(Console.ReadLine());
 
            //cap phat
            a = new int[n, m];
            //
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < m; j++)
                {
                    Console.Write("a[{0},{1}]=", i, j);
                    a[i, j] = int.Parse(Console.ReadLine());
                }
 
            }
            //xuat mang
            for (int i = 0; i < n; i++)
            {
                Console.WriteLine();
                for (int j = 0; j < m; j++)
                {
                    Console.Write("{0} ", a[i, j]);
 
                }
            }
}

Cách khai báo mảng:

1
int[,] a = new int[n, m]; với n,m là tương ứng số dòng số cột.

Class trong c#:
Như đã nói C# là ngôn ngữ thuần hướng đối tượng và đặt trưng của hướng đối tượng là viết class:
ví dụ:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class CHO
{
    public string ten;
    public string maulong;
    public int tuoi;
}
class Program
{
    static void Main(string[] args)
    {
        //tao ra doi tuong
        CHO a = new CHO();
        a.ten = "mina";
        a.maulong = "trang";
        a.tuoi = 2;
 
        //xuat
        Console.WriteLine(a.ten);
        Console.WriteLine(a.maulong);
        Console.WriteLine(a.tuoi);
    }
}

Khai báo: class

  • public: khai báo tất cả đều sử dụng được
  • private: khai báo chỉ trong nội bộ đó sử dụng được ngay cả lớp con cũng không.
  • protected: khai báo lớp con có thể sử dụng được, bên ngoài thì không.
  • Khởi tạo một đối tượng của class có tên: CHO a = new CHO();

Hàm trong C#:
Cũng tương tự như hàm trong C tuy nhiên cách khai báo có khác đôi chút:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
static void input(int[] a)
    {
        for (int i = 0; i < a.Length; i++)
            a[i] = int.Parse(Console.ReadLine());
    }
static void output(int[] a)
{
    for (int i = 0; i < a.Length; i++)
 
    Console.Write("{0} ",a[i]);
}
static void Main(string[] args)
{
    Console.WriteLine("so phan tu n=");
    int n = int.Parse(Console.ReadLine());
        int[] a=new int[n];
        input(a);
        output(a);
 
}

Constructor trong c#:
Đây là hàm dựng dùng để định giá trị mặc đinh ban đầu cho đối tượng, đặc biệt là hàm này có tên cũng với tên class và không có kiểu dữ liệu trả về.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
class nguoi
{
    string ten;
    int tuoi;
    //constructor ko tham so
    public nguoi()
    {
        ten = "nguyen van a";
        tuoi = 7;
 
    }
    //constructor co tham so truyen vao
    public nguoi(string name, int age)
    {
       // gan vao cho data/field
        ten = name;
        tuoi = age;
 
    }
    public void xuat()
    {
        Console.WriteLine("ten: " +ten);
        Console.WriteLine("tuoi: " +tuoi);
    }
 
}
class Program
{
    static void Main(string[] args)
    {
        nguoi a = new nguoi();
        a.xuat();
        nguoi b = new nguoi("abc", 28);//tu dong goi constructor co tham so
        b.xuat();
        Console.ReadLine();
    }
}

Toán tử operator trong C#:
ví dụ dùng operator tính toán phân số:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
public class phanso
{
    public int tu;
    public int mau;
    public void nhap()
    {
        Console.Write("nhap tu so: ");
        tu = int.Parse(Console.ReadLine());
        Console.Write("nhap mau so: ");
        mau = int.Parse(Console.ReadLine());
 
    }
    public void xuat()
    {
        Console.Write("{0}/{1}",tu,mau);
    }
    public static phanso operator +(phanso a, phanso b)
    {
        phanso kq = new phanso();
        kq.tu = a.tu * b.mau + b.tu * a.mau;
        kq.mau = a.mau * b.mau;
        return kq;
    }
    public static phanso operator -(phanso a, phanso b)
    {
        phanso kq = new phanso();
        kq.tu = a.tu * b.mau - b.tu * a.mau;
        kq.mau = a.mau * b.mau;
        return kq;
    }
    public static phanso operator *(phanso a, phanso b)
    {
        phanso kq = new phanso();
        kq.tu = a.tu * b.tu;
        kq.mau = a.mau * b.mau;
        return kq;
    }
    public static phanso operator /(phanso a, phanso b)
    {
        phanso kq = new phanso();
        kq.tu = a.tu * b.mau;
        kq.mau = a.mau * b.tu;
        return kq;
    }
}
class Program
{
    static void Main(string[] args)
    {
        phanso a = new phanso();
        Console.WriteLine("nhap phan so thu nhat: "); a.nhap();
        phanso b = new phanso();
        Console.WriteLine("nhap phan so thu hai: "); b.nhap();
        phanso c = new phanso();
        c = a + b; Console.Write("tong hai phan so: "); c.xuat();
        Console.WriteLine();
        c = a - b; Console.Write("hieu hai phan so: "); c.xuat();
        Console.WriteLine();
        c = a * b; Console.Write("tich hai phan so: "); c.xuat();
        Console.WriteLine();
        c = a / b; Console.Write("thuong hai phan so: "); c.xuat();
        Console.WriteLine();
    }
}

try catch trong C#: Dùng để sử lý ngoại lệ, bẩy lỗi trong lúc lập trình, ví dụ: tràn số, khai báo int mà nhập vào một chuổi, một số chia cho 0…. rất nhiều.
Đây là một ví dụ:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
static void Main(string[] args)
    {
            int a=0, b=0, kq=0;
            nhapa:
            try
                {
                Console.WriteLine("nhap a");
                a =int.Parse(Console.ReadLine());
 
                }
            catch (Exception)
                {
                Console.WriteLine("nhap lai");
                goto nhapa;
                }
            nhapb:
            try
            {
                b = int.Parse(Console.ReadLine());
                kq = a + b;
            }
            catch (Exception)
            {
                Console.WriteLine("nhap lai");
 
                goto nhapb;
            }
            Console.WriteLine(kq);
        }
    }

Kết luận: C# là một ngôn ngữ lập trình hiện đại và hơn thế nữa nó hỗ trợ mọi công cụ để chúng ta sử dụng tạo ra một chương trình hoàn chỉnh, như đã nói tôi không nói lý thuyết nhiều và cũng k bít nói gì hi. bài này mục đích giúp các bạn có một số dạng mẫu về bài tập để thực hành.
Các bạn có thể đọc thêm tài liệu này: Ngôn Ngữ C# Nhiu đó thui chúng ta sẽ gặp lại sau. Good luck!.

Tags: 
Bạn thấy bài viết này như thế nào?: 
Average: 6 (2 votes)
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Bình luận (0)

 

Add Comment

Filtered HTML

  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Các thẻ HTML được chấp nhận: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Tự động ngắt dòng và đoạn văn.

Plain text

  • No HTML tags allowed.
  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Tự động ngắt dòng và đoạn văn.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Anonymous bác bỏ "tin vịt" đánh sập Facebook ngày 28/1

Anonymous bác bỏ "tin vịt" đánh sập Facebook ngày 28/1

Một tài khoản Twitter được xem là chính thức của Anonymous cho biết nhóm hacker này sẽ không tấn công Facebook vào thứ 7 này như các trang tin đã đưa.

Kích hoạt Timeline cho Facebook - Đi là không trở lại

Kích hoạt Timeline cho Facebook - Đi là không trở lại

Facebook đã chính thức cung cấp giao diện Timeline cho người dùng trên mọi trình duyệt, từ máy tính cho đến thiết bị di động nền Android.

Samsung Conquer 4G Review

Samsung Conquer 4G Review

Though to be a budget 4G devices, the Samsung Conquer 4G is very elegant and stylish. I was surprised at how well put together this phone is. The manufacturers seemed to have put a lot of attention to detail when making this gadget.

Công ty diệt chuột T&C

 

Diet con trung