Đếm số lần xuất hiện của ký tự trong chuỗi trong C#
Bài viết này được đăng tại
freetuts.net
Bạn đang đọc: Đếm số lần xuất hiện của ký tự trong chuỗi trong C#
, không được copy dưới mọi hình thức.
Mình sẽ triển khai hai chương trình với hai cách khác nhau để các bạn hoàn toàn có thể so sánh, khởi đầu thôi nào !
Mục lục bài viết
1. Đếm số lần xuất hiện ký tự trong chuỗi sử dụng vòng lặp
Trong chương trình này mình sẽ sử dụng vòng lặp while và for để lặp từng ký tự trong chuỗi. Sau đó hiển thị các ký tự đó đồng thời số lần xuất hiện trong chuỗi ra màn hình hiển thị console .
*Lưu ý: ở đây mình sẽ không hiển thị khoảng trắng, vì vậy mình sẽ sử dụng phương thức Replace()
để thay thế khoảng trắng bằng rỗng.
Bài viết này được đăng tại [ không tính tiền tuts. net ]
using System; using System.Linq; namespace ConsoleApp5 { class Program { static void Main(string[] args) { Console.Write("Nhap vao chuoi: "); string message = Console.ReadLine(); //Xóa khoảng trắng khỏi chuỗi message = message.Replace(" ", string.Empty); //sử dụng vòng lặp while và for để lặp và đếm số lần xuất hiện của ký tự while (message.Length > 0) { Console.Write(message[0] + " : "); int count = 0; for (int j = 0; j < message.Length; j++) { if (message[0] == message[j]) { count++; } } Console.WriteLine(count); message = message.Replace(message[0].ToString(), string.Empty); } Console.WriteLine("\n ----Chuong trinh nay duoc dang tai Freetuts.net---- \n"); Console.ReadKey(); } } }
Kết quả:
2. Đếm số lần xuất hiện ký tự trong chuỗi sử dụng class Dictionary
Trong chương trình dưới đây, mình đã tạo một Dictionary để tàng trữ từng ký tự và số lượng của nó. Với nguồn vào được nhập từ bàn phím, mình sẽ sử dụng vòng lặp foreach để lặp hết các ký tự trong chuỗi. Ký tự nào chưa xuất hiện trong Dictionary thì thêm nó vào và gán số lượng cho nó là 1. Nếu đã xuất hiện trong Dictionary thì tăng số lượng ký tự đó lên 1 .
Sau khi đã đếm xong thì sử dụng tiếp vòng lặp foreach để hiển thị các ký tự trong Dic với số lần hiển thị của nó trong chuỗi .
*Lưu ý: Các bạn cần khai báo thư viện System.Collections.Generic;
để sử dụng Dictionary nhé.
using System; using System.Linq; using System.Collections.Generic; namespace ConsoleApp5 { class Program { static void Main(string[] args) { Console.Write("Nhap vao chuoi: "); string message = Console.ReadLine(); //khai báo và sử dụng class Dictionary lưu ký tự và số lượng Dictionarydict = new Dictionary (); //sử dụng vòng lặp for để lặp từng ký tự //nếu chưa có trong Dic thì thêm vào và tăng ký tự đó lên 1 //nếu tồn tại rồi thì tăng ký tự đó lên 1 foreach (char ch in message.Replace(" ", string.Empty)) { if (dict.ContainsKey(ch)) { dict[ch] = dict[ch] + 1; } else { dict.Add(ch, 1); } } //hiển thị ký tự và số lần xuất hiện ra màn hình foreach (var item in dict.Keys) { Console.WriteLine(item + " : " + dict[item]); } Console.WriteLine("\n ----Chuong trinh nay duoc dang tai Freetuts.net---- \n"); Console.ReadKey(); } } }
Kết quả:
Như vậy là tất cả chúng ta đã triển khai xong chương trình đếm số lượng ký tự xuất hiện trong chuỗi trong C #. Các bạn hãy rèn luyện thật nhiều để sử dụng nó thành thạo nhé, chúc các bạn thành công xuất sắc ! ! !
Source: https://mix166.vn
Category: Thủ Thuật