使用指针检测回文字符串
时间: 2023-03-31 08:05:12 浏览: 69
可以使用指针来检测回文字符串。具体方法是,定义两个指针,一个指向字符串的开头,另一个指向字符串的结尾。然后,依次比较两个指针所指向的字符是否相等,如果相等,则将两个指针向中间移动,继续比较;如果不相等,则说明该字符串不是回文字符串。当两个指针相遇时,说明该字符串是回文字符串。
相关问题
回文字符串c语言用函数指针
以下是使用函数指针判断回文字符串的C语言代码示例:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char *str, int (*cmp)(const char *, const char *));
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
if (isPalindrome(str, strcmp)) {
printf("%s 是回文字符串\n", str);
} else {
printf("%s 不是回文字符串\n", str);
}
return 0;
}
int isPalindrome(char *str, int (*cmp)(const char *, const char *)) {
int len = strlen(str);
for (int i = 0; i < len / 2; i++) {
if (cmp(&str[i], &str[len - i - 1]) != 0) {
return 0;
}
}
return 1;
}
```
该程序中,isPalindrome函数使用了函数指针cmp,该指针指向了strcmp函数,用于比较两个字符是否相等。在主函数中,先输入一个字符串,然后调用isPalindrome函数进行判断,如果是回文字符串则输出“是回文字符串”,否则输出“不是回文字符串”。
回文字符串c语言指针
以下是一个判断回文字符串的C语言指针示例:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
char *p1, *p2;
printf("请输入一个字符串:");
scanf("%s", str);
p1 = str;
p2 = str + strlen(str) - 1;
while (p2 > p1)
{
if (*p1 != *p2)
{
printf("%s 不是回文字符串", str);
return 0;
}
p1++;
p2--;
}
printf("%s 是回文字符串", str);
return 0;
}
```
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)