Bài 61. Đếm số từ trong chuỗi C/C++

2
6751
đếm Số Từ Trong Xâu
Bài số 59 trong 69 bài của series Học C Không Khó

Tiếp tục là các bài tập giúp các bạn luyện tập kiến thức về chuỗi và xử lý chuỗi trong C. Hôm nay chúng ta cùng nhau đi giải quyết 1 bài tập về xử lý chuỗi: đếm số từ trong chuỗi nhập từ bàn phím sử dụng C/C++. Đồng thời, chúng ta cũng sẽ giải quyết bài toán chuẩn hóa chuỗi luôn nhé.

Bài tập đếm số từ trong chuỗi

  1. Nhập vào một chuỗi từ bàn phím
  2. Đếm số từ có trong chuỗi vừa nhập
  3. Xóa bỏ khoảng trắng ở đầu, giữa và cuối chuỗi
  4. Viết hoa chữ cái đầu tiên, các chữ cái còn lại viết thường
  5. In ra số từ và xâu sau khi chuẩn hóa

Input:

Output:

Cách đếm số từ trong chuỗi

Ý tưởng: Nếu ký tự hiện tại là dấu cách và ký tự tiếp theo không phải dấu cách thì ta coi đó là bắt đầu của 1 từ.

Lưu ý: Có thể từ đầu tiên không bắt đầu bằng dấu cách.

Chuẩn hóa chuỗi trong C

Ý tưởng chuẩn hóa chuỗi trong C như sau:

  1. Bỏ các ký tự khoảng trắng thừa ở đầu chuỗi
  2. Bỏ các ký tự khoảng trắng thừa ở cuối chuỗi
  3. Viết hoa chữ cái đầu tiên của chuỗi
  4. Bỏ qua các khoảng trắng thừa ở giữa
  5. Đưa tất cả về lowercase
  6. Viết hoa chữ cái bắt đầu từ theo ý tưởng đếm từ phía trên

Lời giải chuẩn hóa chuỗi và đếm số từ trong C

Kết quả chạy thử:

Theo dõi lập trình không khó tại:

Các bài viết trong SeriesBài trước: Bài 60. Chuyển kiểu int sang string trong C/C++Bài sau: Bài 62. Bài tập chuỗi trong C có lời giải
avatar

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.

  Subscribe  
Notify of
Viet Nguyen Tri
Guest
Viet Nguyen Tri

Thầy Hiếu cho mình hỏi vì sao cần thêm điều kiện first < last trong vòng lặp while nhỉ? fist luôn luôn < last mà.

// Xóa dấu trắng đầu chuỗi
while (first first && str[last] == ‘ ‘)
last–;