阅读量:0
判断回文字符串的方法是首尾两个字符逐个比较,依次向中间移动,直到两个指针相遇或者左指针大于右指针。如果在比较过程中发现两个字符不相等,则该字符串不是回文字符串。以下是用C语言编写的判断回文字符串的函数:
#include <stdio.h> #include <string.h> int isPalindrome(char *str) { int len = strlen(str); int left = 0; int right = len - 1; while (left < right) { if (str[left] != str[right]) { return 0; } left++; right--; } return 1; } int main() { char str[100]; printf("Enter a string: "); scanf("%s", str); if (isPalindrome(str)) { printf("The entered string is a palindrome.\n"); } else { printf("The entered string is not a palindrome.\n"); } return 0; }
在上述代码中,isPalindrome
函数用于判断输入的字符串是否是回文字符串。首先获取字符串的长度,然后使用两个指针left
和right
分别指向字符串的首尾。在循环中,如果两个指针指向的字符不相等,则返回0表示不是回文字符串。如果两个指针相遇或者left
大于right
,则返回1表示是回文字符串。