C语言编程判断输入的字符串是否为“回文”,如果是则输出"Yes",反之输出"No"。所谓“回文”是指顺读和倒读都一样的字符串。如"xyzzyx"。
时间: 2023-12-29 15:06:13 浏览: 33
您可以使用双指针法来判断输入的字符串是否为“回文”。具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int left, right, isPalindrome;
printf("请输入一个字符串:");
scanf("%s", str);
left = 0;
right = strlen(str) - 1;
isPalindrome = 1; // 假设是回文字符串
while (left < right) {
if (str[left] != str[right]) {
isPalindrome = 0; // 不是回文字符串
break;
}
left++;
right--;
}
if (isPalindrome) {
printf("Yes\n");
} else {
printf("No\n");
}
return 0;
}
```
在这个程序中,我们先输入一个字符串,然后使用双指针法判断该字符串是否为回文字符串。具体来说,我们定义两个指针`left`和`right`,分别指向字符串的首尾字符。然后,我们依次比较`left`和`right`指向的字符是否相等,如果不相等,则说明该字符串不是回文字符串。如果一直比较到`left`指针大于或等于`right`指针时,都没有发现不相等的字符,那么该字符串就是回文字符串。