Chuẩn hóa xâu làm một việc làm tất yếu trong lập trình. Vì vậy trong bài viết này, mình sẽ liệt kê các phương thức để chuẩn hóa xâu trong C#. Chi tiết về các phương thức này mình sẽ trình bày ngay sau đây. Các phương thức dùng để chuẩn hóa xâu ký tự […]
Bài toán. Chuẩn hóa xâu s nhập vào. Yêu cầu:
– Xóa tất cả dấu cách thừa
– Thay các ký tự đầu mỗi từ bằng chữ IN HOA
– Tách ra: Họ và tên đệm trên 1 dòng, tên trên một đòng.
Ví dụ:
CHUANE.INP
CHUANE.OUT
dO truNg tHanh
Do Trung
Thanh
Code tham khảo:
include
include
using namespace std; string s; void chuanXau[] {
while[s.find[" "] >= 0] {
int p = s.find[" "];
if[p >= 0]
s.erase[p,1];
else break;
}
if[s[0] == ' ']
s.erase[0,1];
if[s[s.length[]-1] == ' ']
s.erase[s.length[],1];
}
void chuHoa[] {for[int i=1; i= 'A' && s[i] = 'a' && s[0] str;
cout > str1 >> str2 >>str3 ;Ví dụ, chúng ta viết chương trình nhập nhiều string trong C++ như sau:
include
include
using namespace std;
int main[]{
cout > str1 >> str2 >>str3 ;
cout >str3 ;3
Khi đoạn code trên được biên dịch và thực hiện, kết quả in ra sẽ như sau:
string str1, str1, str3;
cin >> str1 >> str2 >>str3 ;
4
Ngôn ngữ C/C++ hỗ trợ nhiều hàm đa dạng để thao tác các chuỗi kết thúc là null:
STT Hàm & Mục đích 1 strcpy[s1, s2];Sao chép chuỗi s2 cho chuỗi s1. 2 strcat[s1, s2];Nối chuỗi s2 vào cuối chuỗi s1. 3 strlen[s1];Trả về độ dài của chuỗi s1. 4 strcmp[s1, s2];Trả về 0 nếu s1 và s2 là như nhau; nhỏ hơn 0 nếu s1s2. 5 strchr[s1, ch];Trả về con trỏ tới vị trí đầu tiên của ch trong s1. 6 strstr[s1, s2];Trả về con trỏ tới vị trí đầu tiên của chuỗi s2 trong chuỗi s1.
Dưới đây là ví dụ cho việc sử dụng một vài hàm bên trên:
string str1, str1, str3;
cin >> str1 >> str2 >>str3 ;
5
Chạy chương trình C/C++ trên sẽ cho kết quả như hình sau:
Bài Tập Về String Trong C++Lớp String trong C/C++
Thư viện chuẩn C/C++ cung cấp một kiểu lớp String mà hỗ trợ tất cả hoạt động liên quan tới chuỗi đã đề cập ở trên, và bổ sung thêm nhiều tính năng nữa. Chúng ta sẽ học lớp này trong Thư viện chuẩn C/C++ [C++ Standard Library], nhưng lúc này, chúng ta xem xét ví dụ sau:
Lúc này, có thể bạn không hiểu ví dụ này, bởi vì chúng ta chưa bàn luận về Lớp và Đối tượng trong C/C++. Vì thế, bạn quan sát và ghi nhớ chúng tới khi bạn đã hiểu các khái niệm về Hướng đối tượng được trình bày ở chương sau đó.