Chuỗi là mảng ký tự một chiều kết thúc bằng ký tự null. Có thể chứa chữ cái, chữ số, ký tự đặc biệt...
Chương trình xóa tất cả ký tự trong chuỗi trừ chữ cái:
Ví dụ
#include <iostream>
using namespace std;
int main() {
char str[100] = "String@123!!";
int i, j;
cout << "Chuỗi trước khi sửa: " << str << endl;
for (i = 0; str[i] != '\0'; ++i) {
while (!((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z') || str[i] == '\0')) {
for (j = i; str[j] != '\0'; ++j) {
str[j] = str[j + 1];
}
}
}
cout << "Chuỗi sau khi sửa: " << str;
return 0;
}
Kết quả đầu ra
Chuỗi trước khi sửa: String@123!! Chuỗi sau khi sửa: String
Trong chương trình, sửa chuỗi trong vòng lặp for. Nếu ký tự không phải chữ cái hoặc null, dịch tất cả ký tự bên phải sang trái 1 vị trí. Dùng j trong vòng lặp for nội. Điều này xóa ký tự không phải chữ cái:
for (i = 0; str[i] != '\0'; ++i) {
while (!((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z') || str[i] == '\0')) {
for (j = i; str[j] != '\0'; ++j) {
str[j] = str[j + 1];
}
}
}
Sau khi sửa, hiển thị chuỗi:
cout << "Chuỗi sau khi sửa: " << str;