C语言判断回⽂字符串

使用C语言判断这个字符串是否是回⽂字符串(字符串的长度小于等于30,字符串不包含空格),如果是回文字符串输出Yes,如果不是回⽂字符串输出No。

回文串:是一个正读和反读都一样的字符串

方法:1.使用两个指针分别放置在字符串的头和尾,进行比较,如果相同,则头++,尾--.不同则结束判断

2.需要进行多次判断,使用循环.判断条件,当头尾相逢时,即证明比较都相同.

代码如下:

c 复制代码
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int IsPalindromeString(char arr[])
{
	//1.获取字符串长度
	int len = strlen(arr);
	//2.创建头尾指针
	char* left = arr;
	char* right = arr + len - 1;
	//3.循环判断
	while (left < right)
	{
		if (*left != *right)
		{
			return 0;
		}
		left++;
		right--;
	}
	//4.进行该语句证明循环停止,为回文结构
	return 1;
}
int main()
{
	char arr[32];
	scanf("%s",arr);
	int ret = IsPalindromeString(arr);
	if (ret == 1) 
	{
		printf("YES\n");
	}
	else
	{
		printf("NO\n");
	}
	return 0;
}
相关推荐
daxi15012 小时前
C语言从入门到进阶——第13讲:深入理解指针(3)
c语言·开发语言·数据结构·算法
white-persist12 小时前
【CTF线下赛 AWD】AWD 比赛全维度实战解析:从加固防御到攻击拿旗
网络·数据结构·windows·python·算法·安全·web安全
liuyao_xianhui12 小时前
动态规划_简单多dp问题_打家劫舍_打家劫舍2_C++
java·开发语言·c++·算法·动态规划
王伟198212 小时前
圆周率的历史发展与国际圆周率日
算法·圆周率
程序员夏末12 小时前
【LeetCode | 第五篇】算法笔记
笔记·学习·算法·leetcode
老鱼说AI12 小时前
祖师爷KR的C语言讲解:第6期-输入与输出
c语言·开发语言
夜天炫安全16 小时前
数据结构中所需的C语言基础
c语言·数据结构·算法
2301_7890156217 小时前
DS进阶:AVL树
开发语言·数据结构·c++·算法
zyq99101_121 小时前
优化二分查找:前缀和降复杂度
数据结构·python·蓝桥杯
qyzm21 小时前
天梯赛练习(3月13日)
开发语言·数据结构·python·算法·贪心算法