使用指针检查字符串在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 红包祝福语简短10字
18 周六早晨祝福语简短