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;
}
相关推荐
OPEN-F4 小时前
C++并发编程:异步任务与线程池实战
开发语言·c++·算法
SelectDB技术团队4 小时前
统一全文检索与 SQL 分析:Apache Doris 日志分析实践
大数据·数据结构·后端·python·全文检索·doris·日志分析
凉茶钱4 小时前
【数据结构】计数排序
数据结构·算法·排序算法
水饺编程5 小时前
第5章,[Win32 章节] :练习程序,BigFontPic
c语言·c++·windows·visual studio
dtq04246 小时前
数据结构 - 线性表 - 双向链表
c语言·数据结构·学习
不正经学生10 小时前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
门思科技10 小时前
LoRaWAN 设备类别:Class A、B、C 对比与选型指南
c语言·开发语言·php
毕竟是shy哥13 小时前
计算YOLO数据集中每个类的目标数
算法·yolo·机器学习
M78佐菲13 小时前
Linux学习笔记:TCP协议
linux·笔记·学习·tcp/ip·算法
晊晌_h14 小时前
嵌入式从0到精通——数据结构总结[特殊字符]
数据结构·算法·排序算法