Đếm số lần xuất hiện của chuỗi con trong C#



Bài tập C#: Đếm số lần xuất hiện của chuỗi con

Viết chương trình C# để nhập hai chuỗi: một chuỗi ban đâu và một chuỗi con cần đếm, sau đó đếm số lần xuất hiện của chuỗi con trong chuỗi ban đầu.

Chương trình C#

Dưới đây là chương trình C# minh họa lời giải cho bài tập đếm số lần xuất hiện của chuỗi con trong C#:

using System;namespace VietJackCsharp
{
    class TestCsharp
    {
        static void Main(string[] args)
        {
            string str1; //khai bao chuoi ban dau
            string chuoi_con; //khai bao chuoi con can tim
            int strt = 0;
            int cnt = -1;
            int idx = -1;            Console.Write("\nDem so lan xuat hien cua chuoi con trong C#:\n");
            Console.Write("---------------------------------------------\n");            Console.Write("Nhap chuoi ban dau: ");
            str1 = Console.ReadLine();
            Console.Write("Nhap chuoi con can tim: ");
            chuoi_con = Console.ReadLine();
            while (strt != -1)
            {
                strt = str1.IndexOf(chuoi_con, idx + 1);
                cnt += 1;
                idx = strt;
            }
            Console.Write("Chuoi con '{0}' xuat hien " + cnt + " lan.\n", chuoi_con);              Console.ReadKey();
        }
    }
}

Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.

Kết quả chương trình C#

Biên dịch và chạy chương trình C# trên sẽ cho kết quả:

Đếm số lần xuất hiện của chuỗi con trong C#
bai-tap-chuoi-trong-csharp.jsp