使用指针检查字符串在C中是否是回文
假设我们有一个字符串s。我们必须检查给定的字符串是否是回文。我们必须使用C中的指针解决此问题。
因此,如果输入类似于s=“racecar”,则输出将为True。
为了解决这个问题,我们将遵循以下步骤-
长度:=字符串大小
forward:=指向字符串的第一个字符
反向:=指向字符串的最后一个字符
而反向位置>=正向位置,则
从循环中出来
向前增加,向后减少1
如果反向指向的字符与正向指向的字符相同,则
除此以外
如果正向位置>=反向位置,则
返回True
返回False
让我们看下面的实现以更好地理解-
示例
#include <stdio.h>
#include <string.h>
int solve(char *string){
int length;
char *forward, *reverse;
length = strlen(string);
forward = string;
reverse = forward + length - 1;
for (forward = string; reverse >= forward;) {
if (*reverse == *forward) {
reverse--;
forward++;
} else
break;
} if (forward > reverse)
return 1;
else
return 0;
}
int main(){
char string[] = "racecar";
printf("%d", solve(string));
}输入值
"racecar"输出结果
1
热门推荐
10 感谢韩语老师祝福语简短
11 升职文案高级祝福语简短
12 花童结婚祝福语大全简短
13 向国庆送祝福语简短
14 什么寄语简短祝福语女生
15 客户回礼祝福语大全简短
16 女孩生日祝福语简短创意
17 家长回复节日祝福语简短
18 给外婆敬酒祝福语简短