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;
}
相关推荐
卢锡荣4 小时前
单芯掌控多口互联|乐得瑞 LDR6020 PD3.1 多通道 Type‑C 控制 SOC 芯片
c语言·开发语言
residual_fan5 小时前
特征级SMOTE(Feature-level SMOTE)论文分享
人工智能·算法·数据挖掘·数据分析
xxwxx__5 小时前
深入理解 C++ STL:stack、queue 与 deque 从使用到底层实现全解析
开发语言·c++·算法
wuminyu5 小时前
JVM锁膨胀与Futex源码解析
java·linux·c语言·jvm·c++
sylviiiiiia5 小时前
Leetcode hot100 多数元素/相交链表/反转链表
算法·leetcode·链表
CoderYanger5 小时前
A.每日一题:3622. 判断整除性
java·程序人生·算法·leetcode·面试·职场和发展·蓝桥杯
rannn_1115 小时前
【力扣hot100】动态规划专题|70、118、198、279、322、139、300、152、416、32
算法·leetcode·动态规划
渡之5 小时前
ArduPilot(APM)滤波器之 HarmonicNotchFilter 深度解析
算法·无人机
我不会起名字3225 小时前
一天一道算法题(26):栈的简单应用
java·数据结构·python·算法·leetcode·golang·
susplus5 小时前
【HTTP协议】HTTP介绍及基础【C语言爬虫实现】
c语言·爬虫·http·万维网