Kiểm tra chuỗi có phải là chuỗi đối xứng hay không trong C
Trong bài tập này, mình sẽ viết một chương trình trong ngôn ngữ lập trình C để kiểm tra xem một chuỗi có phải là chuỗi đối xứng hay không.

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.
- Nhập vào một chuỗi từ người dùng.
- Kiểm tra xem chuỗi đó có phải là chuỗi đối xứng hay không.
- Chuỗi được coi là đối xứng nếu nó đọc từ trái sang phải hoặc từ phải sang trái đều giống nhau.
Kiểm tra chuỗi đối xứng trong C
Cách giải quyết bài lập trình
- Sử dụng hai con trỏ, một trỏ tới đầu chuỗi và một trỏ tới cuối chuỗi.
- So sánh ký tự tại vị trí tương ứng của hai con trỏ.
- Nếu tất cả các ký tự tương ứng giống nhau, chuỗi được coi là đối xứng.
- Nếu có ít nhất một cặp ký tự không giống nhau, chuỗi không đối xứng.
Hãy xem cách giải như sau:
#include <stdio.h>
#include <string.h>
int isPalindrome(char str[]) {
int left = 0;
int right = strlen(str) - 1;
while (left < right) {
if (str[left] != str[right]) {
return 0; // Không đối xứng
}
left++;
right--;
}
return 1; // Đối xứng
}
int main() {
char str[100];
printf("Nhập chuỗi: ");
fgets(str, sizeof(str), stdin);
// Loại bỏ ký tự newline từ fgets
if (str[strlen(str) - 1] == '\n') {
str[strlen(str) - 1] = '\0';
}
if (isPalindrome(str)) {
printf("Chuỗi \"%s\" là chuỗi đối xứng.\n", str);
} else {
printf("Chuỗi \"%s\" không phải là chuỗi đối xứng.\n", str);
}
return 0;
}
Kết quả chạy thứ nhất:
Bài viết này được đăng tại [free tuts .net]
Nhập chuỗi: radar Chuỗi "radar" là chuỗi đối xứng.
Kết quả chạy thứ hai:
Nhập chuỗi: hello Chuỗi "hello" không phải là chuỗi đối xứng.
Trên đây là cách viết một chương trình trong ngôn ngữ lập trình C để kiểm tra xem một chuỗi có phải là chuỗi đối xứng hay không. Chúc bạn thực hiện thành công!

Các kiểu dữ liệu trong C ( int - float - double - char ...)
Thuật toán tìm ước chung lớn nhất trong C/C++
Cấu trúc lệnh switch case trong C++ (có bài tập thực hành)
ComboBox - ListBox trong lập trình C# winforms
Random trong Python: Tạo số random ngẫu nhiên
Lệnh cin và cout trong C++
Cách khai báo biến trong PHP, các loại biến thường gặp
Download và cài đặt Vertrigo Server
Thẻ li trong HTML
Thẻ article trong HTML5
Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên
Cách dùng thẻ img trong HTML và các thuộc tính của img
Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng